Alexander Volkov пишет: > On 2007-04-11 13:07:36 +0300, Eugene Ostapets wrote: > EO> 11.04.07, Alexander Volkov<alt vladregion.ru> написал(а): > EO> > On 2007-04-11 10:30:03 +0300, Eugene Ostapets wrote: > EO> > EO> Всем доброго дня! > EO> > > EO> > EO> Что-то читал, но за ненадобностью забыл... > EO> > EO> Как у нас правильно организовать ответ сервиса по тому же > интерфейсу, > EO> > EO> с которого пришел запрос? > EO> > У нас - имеется в виду сейчас и на etcnet? > EO> Не обязательно, с etcnet я уже как-нибудь сам разберусь:) > EO> > Про последний не скажу, а на 2.4 у меня до сих пор скрипт работает для 3 > EO> > провайдеров. > EO> Можно на него взглянуть? > зАпросто. Это rc.local. ip кое-как поменял > > P1="8.13.8.118" > P2="8.49.89.97" > P3="8.5.199.1" > P0_NET="192.168.2.0/25" > P03_NET="192.168.3.0/27" > P1_NET="8.13.8.116/30" > P2_NET="8.49.89.96/27" > P3_NET="8.5.199.0/24" > IF0="eth0" > IF1="eth1" > IF2="eth2" > IF3="eth3" > IP1="89.113.8.117" > IP2="85.249.89.102" > IP3="84.53.199.236" > > ip route add $P1_NET dev $IF1 src $IP1 table link1 > ip route add default via $P1 table link1 > ip route add $P2_NET dev $IF2 src $IP2 table link2 > ip route add default via $P2 table link2 > ip route add $P3_NET dev $IF3 src $IP3 table link3 > ip route add default via $P3 table link3 > ip route add 127.0.0.0/8 dev lo table link1 > ip route add $P0_NET dev $IF0 table link1 > ip route add $P03_NET dev $IF0 table link1 > ip route add $P2_NET dev $IF2 table link1 > ip route add $P3_NET dev $IF3 table link1 > ip route add 127.0.0.0/8 dev lo table link2 > ip route add $P0_NET dev $IF0 table link2 > ip route add $P03_NET dev $IF0 table link2 > ip route add $P1_NET dev $IF1 table link2 > ip route add $P3_NET dev $IF3 table link2 > ip route add 127.0.0.0/8 dev lo table link3 > ip route add $P0_NET dev $IF0 table link3 > ip route add $P03_NET dev $IF0 table link3 > ip route add $P2_NET dev $IF2 table link3 > ip route add $P1_NET dev $IF1 table link3 > ip route add default via $P1 > ip rule add from $IP1 table link1 > ip rule add from $IP2 table link2 > ip rule add from $IP3 table link3 >
Интересно, это сработает даже в случае, когда запрос пришел от клиента из инета (не из $Pn_NET), а сервис слушает 0.0.0.0, а не каждый интерфейс (как bind). accept наверняка привяжет сокет к нужному интерфесу, а там сработает своя таблица. Хотя у себя на шлюзах я не запускаю сервисы, кроме bind - эта штука может когда-нибудь пригодиться. Всегда есть чему поучиться. :) -- С уважением, Хайруллин Марат. http://xmm.moikrug.ru/ _______________________________________________ Sysadmins mailing list [email protected] https://lists.altlinux.org/mailman/listinfo/sysadmins
