Можно ли настроить устройство маршрутизации NAT так, чтобы оно имело одну и ту же подсеть на интерфейсах WAN и LAN?

Можно ли настроить устройство маршрутизации NAT так, чтобы оно имело одну и ту же подсеть на интерфейсах WAN и LAN?

Пример случая для маршрутизатора (или балансировщика, шлюза NAT... и т. д.):

  • Интерфейс локальной сети (например, eth0) с IP 192.168.1.1 в подсети 192.168.1.0/24. Действует как DHCP (и интернет) сервер.
  • Интерфейс WAN (например, eth1) с IP 192.168.1.100 в подсети 192.168.1.0/24. Шлюз — 192.168.1.1 (IP, соответствующий, например, маршрутизатору DSL).

Может ли это сработать?

При необходимости я могу добавить схему или графику.

решение1

Маршрутизатору нужны разные подсети на его интерфейсах. Если маршрутизатор получает пакет с адресом назначения на интерфейсе с той же подсетью, что и адрес назначения, он отбросит пакет, если только пакет не адресован на IP-адрес маршрутизатора. Кроме того, хост не отправит пакет на свой шлюз, если пакет предназначен для его локальной подсети, если только пакет не предназначен специально для IP-адреса шлюза.

Вы можете сделать что-то вроде LAN - 192.168.1.0/25и WAN - 192.168.1.128/25, но вам понадобятся две совершенно разные подсети.

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

решение2

RFC 6598 определяет, что диапазон адресов, зарезервированный для NAT операторского уровня, «может использоваться аналогично частному адресному пространству RFC 1918 на оборудовании маршрутизации, которое способно выполнять трансляцию адресов между интерфейсами маршрутизатора, когда адреса идентичны на двух разных интерфейсах».

Не все устройства NAT поддерживают такую ​​конфигурацию, но в принципе это возможно. Ключевым моментом является различение конечных точек сети не только по IP-адресу, но и по устройству: если маршрутизатор имеет два устройства Ethernet, eth0 и eth1, 192.168.1.1%eth0 и 192.168.1.1%eth1 могут быть разными конечными точками и принадлежать к разным сетям. Тогда можно реализовать NAT между этими сетями. Невозможно маршрутизировать пакеты между сетями без NAT, поскольку для этого потребуются разные IP-адреса.

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

Связанный контент