2

Конфигурация:

  • Ubuntu 14.04 host
  • Virtualbox 4.3.18 (с http://download.virtualbox.org/virtualbox/debian )
  • Хост Ubuntu, работающий как маршрутизатор - net.ipv4.ip_forward=1
  • Настроено несколько сетей только для хоста, трафик между которыми маршрутизируется хостом.
    • vboxnet0:
      • Префикс: 192.168.1.0/24
      • Шлюз: 192.168.1.1 (это IP на хосте VM)
    • vboxnet1:
      • Префикс: 192.168.2.0/24
      • Шлюз: 192.168.2.1
    • и так далее - сетей больше, но для целей этого вопроса это не актуально.

Проблема:

Когда я устанавливаю соединение с ВМ Алиса в сети vboxnet0 с ВМ Бобом в сети vboxnet1, на Бобе соединение появляется так, как если бы оно исходило от IP шлюза. netstat или tcpdump на Бобе будут показывать трафик, поступающий от Алисы, с исходным IP-адресом 192.168.2.1 (gw IP), а не с IP-адресом Алисы, который может быть чем-то вроде 192.168.1.30.

Другими словами, NAT, кажется, происходит. Однако я не хочу этого - я просто хочу, чтобы мой хост / маршрутизатор просто пересылал пакеты между подсетями. Учитывая, что я не настроил NAT явно, я не уверен, почему он так себя ведет. Любая помощь приветствуется!

1 ответ1

0

Я никогда не видел способ отключить MASQUERADE в сетях только для хоста.

Если вы действительно настаиваете на отсутствии маскировки, вы можете использовать сеть NAT вместо сети только с хостом. В этом случае хост действует как маршрутизатор, размещая все виртуальные машины внутри одной локальной сети и позволяя им общаться друг с другом без NAT. В этом случае хост будет NAT только вне связи.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .