Проблема стандартная: резко ушел админ который занимался гейтами.Ситуация - есть две подсети. В обеих свои гейты в интернет. Необходимо перемаршрутизировать HTTP траффик из одной подсети в другую т.к. во-второй есть скоростной безлимитный канал, а почтовый траффик оставить на первом гейте.
Насколько я понимаю задачу: настроить роутер по передаче траффика из одной подсети в другую, также на нем поднять squid для прописывания в качестве прокси на машинах в первой подсети.
Исходные данные: машина с одной сетевой картой (если необходимо могу поставить вторую, но не очень хочется).
Что сделал: поставил freeBSD, прописал сетевой интерфейс в ту подсеть которая с анлимом.
Прописал на него алиас с адресом из первой подсети. Оба интерфейса пингую.
Далее - пересобрал ядро с опциями IPFILTER и IPFILTER_LOG. В rc.conf разрешил ipnat и ipfilter. В правилах ipnat написал:
map de0 xxx.xxx.xxx.0/24 -> yyy.yyy.yyy.1
где xxx.xxx.xxx.0 - первая подсеть
yyy.yyy.yyy.1 - гейт в анлим канал второй подсети.
в правилах ipfilter разрешил все
pass in all
pass out all
На гейте yyy.yyy.yyy.1 для машины которую настраиваю тоже разрешил все.
Указываю настраиваемую машину в качестве гейта на машине в первой подсети. Получаю:
пингую оба интерфейса для настраиваемого гейта;
пингую внешние интерфейс гейта второй подсети, смотрящего в интернет;
не пингую внешний гейт для интернет-гейта второй подсети;
не пингую внешние адреса ни IP ни www.
При этом с самого настраиваемого гейта внешние адреса пингую и IP и www
Собственно вопросы:
1. Есть ли что-то явно неправильное по конфигурации?
2. возможно я неправильно обратился к интерфейсу с алиасом в правилах ipnat?
3. чем можно посмотреть прохождение пакетов между интерфейсами на гейте? а в том случае если один из них это просто алиас?