Зміст

Внутрішня мережа NAT

Налаштування мережі з NAT і доступом до інтернету, виконайте наступні кроки:

1. Створіть мережевий міст для внутрішньої мережі:

2. Налаштуйте NAT для внутрішнього моста:

Вам потрібно буде налаштувати iptables для NAT. Для цього виконайте наступні команди через SSH на вузлі Proxmox:

# Увімкніть форвардинг пакетів
echo 1> /proc/sys/net/ipv4/ip_forward
 
# Налаштуйте iptables для NAT
iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -o vmbr0 -j MASQUERADE

У цих командах припускається, що внутрішня мережа має адресний простір 10.0.1.0/24 і що vmbr0 — це зовнішній міст, який пов'язаний з реальною мережею.

Перевірте наявність IP forwarding:

Переконайтеся, що IP forwarding увімкнено, щоб дозволити пересилання пакетів між мережами:

sysctl net.ipv4.ip_forward

Якщо це 0, увімкніть його:

sudo sysctl -w net.ipv4.ip_forward=1

3. Збережіть правила iptables:

Щоб правила iptables зберігалися після перезавантаження, використовуйте утиліту iptables-persistent:

apt-get install iptables-persistent

Після установки виконайте команди для збереження поточних правил:

netfilter-persistent save

4. Перевірте доступ до шлюзу і інтернету з віртуальних машин:

Переконайтеся, що віртуальні машини можуть пінгувати шлюз 10.0.1.1 та мати доступ до Інтернету через 10.0.0.1.

5. Перевірте брандмауер:

Переконайтеся, що брандмауер не блокує трафік між мережами або на Proxmox.

iptables -L
iptables -t nat -L

6. Налаштування статичного маршруту і DNS на віртуальній машині:

Приклад налаштування Netplan (на самій віртуальній тачці)

network:
  version: 2
  renderer: networkd
  ethernets:
    ens18:
      addresses:
        - 10.0.1.2/24
      routes:
        - to: 0.0.0.0/0
          via: 10.0.1.1
      nameservers:
        addresses:
          - 1.1.1.1
          - 8.8.8.8

Тепер ваші віртуальні машини, підключені до vmbr1, матимуть доступ до інтернету через NAT, залишаючись ізольованими від зовнішньої мережі.