Маршрутизатор на фряхе, на нём стоит mpd+pf (в роли fw+nat), иерархия следующая —
Internet --> bge0 ($ext_if) --> MPD (ng0) --> bge1 ($int_if) --> vlan1 --> home devices
|
--------> vlan2 --> webserver
VLAN1 и VLAN2 за NAT —
nat on ng0 inet from { $vlan1 $vlan2 } to any -> ng0
Правила простые как два пальца об асфальт —
pass out quick on $ext_if # открываем всё на выход из внутрянки
pass in quick on $ext_if proto tcp from any to any port $tcp_services # открываем хорошие порты
pass in on $int_if from any to any # разрешаем всё внутри локальной сети
pass in inet proto icmp all icmp-type echoreq # разрешаем пинги
Перед правилом NAT стоит настройка проброса порта —
rdr pass on $ext_if proto tcp from any to any port 80 -> $webserver port 80
Всё работает, кроме форварда (хотя по всем инструкциям он должен).
Альтернативный вариант через portfwd c конфигом
tcp {
80 { => %webserver%:80 };
}
ЧЯДНТ?