
РЕДАКТИРОВАТЬ:Я знаю, как использовать NAT, я конкретно хочу, чтобы сервер был доступен по двум IP-адресам, одному частному и одному публичному, с брандмауэром OpenWRT между ними, если это осуществимо.
В офисе мы получили /29 от нашего провайдера. Первый адрес зарезервирован для их конечной точки, поэтому я могу свободно использовать пять адресов.
Мы используем локальную сеть, поэтому, конечно, между ними стоит маршрутизатор, работающий под управлением OpenWRT, который обеспечивает все хосты (W)LAN (DHCP из частного диапазона).
Однако у нас также есть сервер под управлением OS X Server 10.6 (Snow Leopard), и я хотел бы, чтобы этот сервер был доступен как из локальной сети с использованием частного IP-адреса, так и из глобальной сети с использованием его собственного публичного IP-адреса.
Следует отметить, что на сервере имеется только один сетевой порт, поэтому, к сожалению, использование нескольких сетевых карт невозможно.
Как бы я это сделал?
решение1
Конечно, вы можете использовать NAT, чтобы просто DNAT-переадресовать публичный адрес на машину с OS X, но возникнут проблемы с протоколами, которые нарушаются NAT, или с взаимодействием с хостами, как только вам понадобится более одной машины в «DMZ».
Вы можете настроить «правильную» DMZ, используя комбинацию некоторых современных сетевых технологий, а именно:
- VLAN, чтобы вашему серверу OS X не требовались дополнительные физические сетевые карты
- ProxyARP для маршрутизации IP-пакетов между сетями с одинаковыми характеристиками сетевого адреса/маски подсети
Основная схема:
- определить новыйVLAN для DMZи новый виртуальный интерфейс с тем же IP-адресом, что и у вашего wan-интерфейса на вашем устройстве OpenWRT
- убедитесь, что порт, на котором ваш компьютер OS X подключен к маршрутизатору OpenWRT, определен как помеченный член (т.е. имеет добавленный
t
вСтрока определения VLAN) - настроить виртуальный интерфейс с тем же идентификатором VLANкак определено ранее для DMZ на вашем сервере OS X
- настройте IP-адрес из адресного пространства, которое вы хотите использовать на виртуальном интерфейсе DMZ сервера OS X, и добавьте маршрут по умолчанию через публичный адрес OpenWRT
- настройте маршруты соответствующим образом и включите proxy arpна машине OpenWRT
- не забудьтенастроить фильтрыдля вашей недавно созданной DMZ
Это займет некоторое время и потребует тестирования с вашей стороны, а часть ProxyARP потребует написания базовых скриптов для обеспечения ее устойчивости, поскольку ее нельзя настроить с помощью UCI.
решение2
Я никогда не использовал OpenWRT, но это возможно с помощью переадресации NAT:
http://wiki.openwrt.org/doc/uci/firewall#forwarding.ports.destination.natdnat