Как настроить роутер между двумя разными внутренними сетями в Virtualbox?

1149
Balázs Izsóf

Я хотел бы построить эту сеть в Virtualbox:

enter image description here

Я использую OpenBSD для маршрутизаторов, эта ОС довольно проста и хорошо прокомментирована для настройки, однако у меня все еще есть одна проблема. Маршрутизатор с именем router02 может получить доступ к Интернету через router01, а устройства в сети LAN могут общаться с router02. Итак, что-то происходит в router02, поэтому сеть LAN не может получить доступ к сети через router01. Я также хотел бы получить доступ к сети из внутренней сети LAN, а позже иметь двустороннюю связь между этими двумя подсетями. Я предполагаю, что проблема в файле pf.conf, но я не могу его найти.

router01 имеет две сетевые карты:

  • em0 -> NAT;
  • em1 -> Внутренняя КАРТА (названная DMZ);

/etc/hostname.em1

192.168.10.1 255.255.255.0 

/etc/hostname.em0

dhcp 

/etc/pf.conf

pass out on em0 inet from 192.168.10.0/24 to any flags S/SA nat to (em0) round-robin pass out on em0 inet from 192.168.100.0/24 to any flags S/SA nat to (em0) round-robin 

router02 имеет две сетевые карты:

  • em0 -> Внутренняя КАРТА (названная DMZ);
  • em1 -> Внутренняя КАРТА (названная ЛВС);

/etc/hostname.em1

192.168.100.1 255.255.255.0 

/etc/hostname.em0

192.168.10.2 255.255.255.0 

/ И т.д. / MyGate

192.168.10.1 

/etc/pf.conf

pass out on em0 inet from 192.168.100.0/24 to 192.168.10.1/24 

(Я не хочу пока какой-либо сложной конфигурации pf, просто чтобы пропустить все пакеты.)

0
Вы также должны использовать NAT на router02. Теперь вы отправляете пакеты от em0 router02 с адресами источника в диапазоне 192.168.100.0/24. Скорее всего, сервер Windows и router01 не знают, куда направлять ответы, поэтому связь отсутствует. Если вы не хотите использовать NAT на router02, вам нужно отредактировать -a lot- таблицы маршрутизации router01 и windows server. gmelis 6 лет назад 0
На самом деле, дело не только в том, что они не знают, куда отправлять ответы, они, вероятно, даже не подтверждают пакеты, поскольку они не адресованы им. gmelis 6 лет назад 1

1 ответ на вопрос

0
Zé Loff

Если вы проверите таблицу маршрутизации на router01 (используя либо route showили netstat -r), то обнаружите, что трафик для 192.168.10.0/24 будет проходить em1, а все остальное будет проходить по маршруту по умолчанию, который установлен в dhclienton em0. Когда router01 получит пакет от 192.168.100.0/24, em1он ответит, em0потому что нет записи для этой подсети в таблице маршрутизации. Так что он будет использовать маршрут по умолчанию. Вы можете легко проверить это, выполнив, например,

$ route get 192.168.100.1 

на роутере01. Запишите назначение и имя интерфейса в ответе.

router02 может получить доступ к Интернету через router01, потому что в этом случае запросы приходят от интерфейса DMZ на router2 (192.168.10.2), и это находится в той же подсети, что и em1на router01. Поэтому, когда router01 отвечает, он отвечает через, em1потому что это маршрут для 192.168.10.0/24.

У вас есть два возможных решения: либо использовать NAT на router02 (это означает, что весь запрос от LAN достигнет router01 с 192.168.10.2 в качестве адреса источника), который будет работать, но означает дополнительную нагрузку на router02, либо просто сделать более логичную вещь, которая заключается в добавьте маршрут к вашей локальной сети на router01, чтобы он знал, что трафик в эту подсеть должен проходить через router02:

# route add 192.168.100.0/24 192.168.10.2 

Вы можете сделать это постоянным, добавив следующую строку /etc/hostname.em1:

!route add 192.168.100.0/24 192.168.10.2 

Похожие вопросы