Попробую описать - имеется с десяток локальных подсеток в диапазоне 192.168.0.0 -
192.168.58.0, роутер с FreeBSD 6.2 с двумя картами, поддерживающими
виланы и нарезанными 10 виланами для внутр. подсеток,и циска прова, на
которой так же нарезаны 10 виланов с белыми адресами для выхода в
инет. Так вот задача выпустить каждую внутр.подсеть через свой вилан и
рутер далее вилан прова в инет. (в примере только пока 2 вилана для простоты)vlan2 - 192.168.0.0/24 - внутр. сет. карта на рутере
vlan9 - 192.168.58.0/24 /192.168.0.6 - интерфейсы рутера изнутри
192.168.58.9 /vlan100 - 82.xx.xx.24/29 - внешн. сет. карта на рутере
vlan101 - 82.xx.xx.112/29 /82.xx.xx.26 - интерфейсы рутера снаружи
82.xx.xx.114 /82.xx.xx.25 - интерфейсы на циске прова
82.xx.xx.113 /
пишу в pf.conf следующие правила:nat on vlan100 from 192.168.0.0/24 to any -> 82.xx.xx.26
nat on vlan101 from 192.168.58.0/24 to any -> 82.xx.xx.114
pass out route-to (vlan100 82.xx.xx.25) from 82.xx.xx.26 to any
pass out route-to (vlan101 82.xx.xx.113) from 82.xx.xx.114 to any
pass allи если к примеру default шлюз в rc.conf на рутере прописан
82.xx.xx.25, то в инет
выходит только 192.168.0.0, а другие сети нет...
смотрю tcpdump'ом интерфейс vlan100 - видно, что сеть 192.168.58.0/24 не
натится, а пытается ломиться напрямую, вместо того чтобы пройдя через
нат спокойно идти в vlan101...C изменением дефолтного шлюза на 82.xx.xx.113 картина меняется
наоборот - 192.168.58.0/24 ходит правильно и только она...Голову сломал, одна надежда на вас, очень не хочется мне на linux перелезать из-за этой проблемы...если надо конфиги, пишите.
Так что, никто не настраивал PF на двух провайдеров ? Где все ?
>Так что, никто не настраивал PF на двух провайдеров ? Где все
>?Я настраивал, но сам до конца не понял. Решение в использовании route-to в правилах pass in. В общем, говорим всем входящим пакетам, что мы сами знаем куда их роутить. И тогда, как я понимаю, таблица роутинга самого роутера не действует. Попытка использовать pass out происходит уже после неправильного роутинга в роутере и поэтому пакет уже на неправильном интерфейсе.
Вот ссылка на ман http://www.openbsd.org/faq/pf/nat.html Там есть пример с роутингом и у меня он не работает ни в каких вариациях.
Вот ссылка на написанный мной туториал по Policy based routing http://homenet.corbina.net/index.php?showtopic=137950
Там всё достаточно подробно.