linux:proxmox:network_nat

Це стара версія документу!


Налаштування внутрішньої мережі + NAT

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

  • Відкрийте веб-інтерфейс Proxmox VE.
  • Перейдіть до Datacenter > Node > System > Network.
  • Натисніть на кнопку Create і виберіть Linux Bridge.
  • Вкажіть назву для моста, наприклад, vmbr1.
  • Не вказуйте фізичний інтерфейс (залиште поле “Bridge Ports” порожнім), щоб міст не був пов'язаний з зовнішнім інтерфейсом.
  • Збережіть зміни.

Вам потрібно буде налаштувати 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
  • Перейдіть у веб-інтерфейс Proxmox, виберіть віртуальну машину, яка буде використовувати ізольовану мережу.
  • У налаштуваннях мережі (Network) додайте новий мережевий інтерфейс, вкажіть vmbr1 як міст.
  • Налаштуйте статичну IP-адресу для внутрішнього інтерфейсу, наприклад, 10.0.1.2.
  • Як шлюз (Gateway) вкажіть 10.0.1.1.
  • Вкажіть DNS-сервери (наприклад, 8.8.8.8).

Приклад налаштування 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

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

apt-get install iptables-persistent

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

netfilter-persistent save

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

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

iptables -L
iptables -t nat -L

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

  • linux/proxmox/network_nat.1725418856.txt.gz
  • Востаннє змінено: 04/09/2024 00:00
  • (зовнішнє редагування)