The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"pf nat"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"pf nat"  
Сообщение от naphta on 15-Ноя-07, 15:19 
всем привет!

есть шлюз, на нем два канала в инет и локалка
не получается натить второй канал, один только работает и все, хоть ты тресни

который не получается натить с внешним ипом

в pf.conf

scrub in all

nat on $ext_if1 from $lan_net to any -> ($ext_if1)
nat on $ext_if2 from $lan_net to any -> ($ext_if2)

снизу все разрешено

в таблице роутинга два статик роута в подсети провайлеров
деволтовый роут один(первого провайдера), если канал на нем падает, скриптом переключается на резерв.

не пойму в чем бок!
помогите дельным советом. заранее благодарен

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

  • pf nat, ShyLion, 19:52 , 15-Ноя-07, (1)  

Сообщения по теме [Сортировка по времени | RSS]


1. "pf nat"  
Сообщение от ShyLion (ok) on 15-Ноя-07, 19:52 
>scrub in all
>
>nat on $ext_if1 from $lan_net to any -> ($ext_if1)
>nat on $ext_if2 from $lan_net to any -> ($ext_if2)
>в таблице роутинга два статик роута в подсети провайлеров
>деволтовый роут один(первого провайдера), если канал на нем падает, скриптом переключается на
>резерв.

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

например так

table <isp1_users> persist { $lan_net }
table <isp2_users> persist

nat on $ext_if1 from <isp1_users> to any -> ($ext_if1)
nat on $ext_if2 from <isp2_users> to any -> ($ext_if2)

pass in quick route-to ($ext_if1 $isp1_route) from <isp1_users> to any keep state
pass in quick route-to ($ext_if2 $isp2_route) from <isp2_users> to any keep state

и т.д.
таблицами манипулировать можно из скрипта так

pfctl -t isp1_users -Tdel 192.168.0.0/16
pfctl -t isp2_users -Tadd 192.168.0.0/16
pfctl -Fs

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру