Назад | Перейти на главную страницу

Назначение множества IP-адресов WAN маршрутизатору Linux для NAT 1: 1?

Я настраиваю Ubuntu Linux для работы в качестве маршрутизатора. Это довольно обычная настройка с NAT с использованием IPTables - и у меня все работает нормально.

Я собираюсь запустить это в производство, и до сих пор для тестирования я помещал несколько IP-адресов WAN в строфы в файле / etc / network / interfaces:

# WAN Interface
iface eth0 inet static
    address 123.123.456.345
    netmask 255.255....
    network ...
    broadcast ...
    gateway ...

iface eth0:1 inet static
    address 123.456.789.123
    netmask ...

iface eth0:2 inet static ...

Проблема, которую я обнаружил, заключается в том, что у нас есть около 20 IP-адресов WAN, которые этот ящик Linux должен выполнять NAT прямо сейчас, а это означает, что мне нужно назначить все 20 этих IP-адресов на этот ящик, которые затем можно преобразовать в правильный частный IP.

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

Единственный другой метод, который я нашел и рассмотрел, здесь: http://www.shorewall.net/Shorewall_and_Aliased_Interfaces.html

# Internet interface
auto eth0
iface eth0 inet static
    address 206.124.146.176
    netmask 255.255.255.0
    gateway 206.124.146.254
    up ip addr add 206.124.146.178/24 brd 206.124.146.255 dev eth0 label eth0:0

Есть ли способ организовать это, что кто-то может порекомендовать для большого количества псевдонимов IP? И почему вы выбрали именно этот метод?

РЕДАКТИРОВАТЬ

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

Я должен понимать, что это не совсем настройка NAT 1: 1. Просто прямо сейчас у всех устройств есть свой собственный IP-адрес WAN - так что это лучшее описание того, к чему мы должны двигаться прямо сейчас.

Многим устройствам по-прежнему потребуется собственный IP-адрес, и в этих случаях мы выполняем NAT и разрешаем порты индивидуально, так что это похоже на NAT 1-1 с брандмауэром. Однако в некоторых случаях устройствам вообще не нужен WAN IP.

Спасибо!

Сделайте это правильно - направьте диапазон адресов на ваш брандмауэр и поместите IP-адреса там, где они должны быть, на целевых устройствах.

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

Найдите linux bridging, brctl и ebtables.