Несколько каналов интернет, маршрутизация, luft, 08-Фев-12, 15:45 [смотреть все]Есть сервер, он же шлюз, на Debian Lenny iptables+squid+sams. Пытаюсь распределить выход в интернет для локальных компьютеров через два канала (далее планируется более двух). Интернет поднимается по средсвом PPPoE, соответственно появляются интерфейсы PPP0, PPP1 ... PPPn, и получают динамические IP адреса, кроме PPP1 - у него статический внешний адрес 212.*.*.* eth1 - сюда подключен первый модем - PPP0 eth0.999 - второй модем - PPP1 eth0.100-eth0.250 - локальная сеть (виртуальные интерфейсы VLAN)Маршрутизацию настраиваю с помощью iproute2. В rt_tables добавляю таблицу Т1, и прописываю правила: Код: ip route add 192.168.130.0/24 dev eth0.230 table T1 ip route add 192.168.67.0/24 dev eth0.999 table T1 ip route add default dev ppp1 table T1 ip rule add from 212.*.*.* table T1 192.168.130.0/24 - локальная подсеть, которая должна выходить наружу через ppp1, eth0.230 - соответствующий ей интерфейс 192.168.67.0/24 - подсеть, в которой находится модем, eth0.999 - соответствующий интерфейс 212.*.*.* - внешний айпи на ppp1 В iptables все натится таким правилом: Код: iptables -t nat -A POSTROUTING -o PPP+ -j MASQUERADE Т.е. должно получиться, что по умолчанию все выходит в инет через PPP0 (главная таблица), а те, кого маршрутизируем по PPP1 Если с сервера проверять ping -I ppp1 yandex.ru - пинг идет, traceroute ya.ru с локального компа тоже показывает, что идет через ppp1. Но если через браузер зайти, допустим, на 2ip.ru - айпишник показывается ppp0. Подскажите, пожалуйста, в чем может быть ошибка!
|
- Несколько каналов интернет, маршрутизация, КуКу, 16:07 , 08-Фев-12 (1)
зацепился за "iptables+squid+sams" и "Но если через браузер зайти".Браузер идет через сквид? сквид идет через ppp0?
- Несколько каналов интернет, маршрутизация, luft, 17:43 , 08-Фев-12 (2)
> зацепился за "iptables+squid+sams" и "Но если через браузер зайти". > Браузер идет через сквид? сквид идет через ppp0?сквид прозрачный, трафик на него заварачиватеся iptables. Да, браузер идет через сквид. В конфиге сквида прописывал: acl test src 192.168.130.* tcp_outgoing_address 212.*.*.* test
- Несколько каналов интернет, маршрутизация, КуКу, 19:50 , 08-Фев-12 (3)
это конечно же пальцем в небо, но попробывать заменить from на to в: ip rule add from 212.*.*.* table T1непробывали?
- Несколько каналов интернет, маршрутизация, luft, 21:54 , 08-Фев-12 (4)
> это конечно же пальцем в небо, но попробывать заменить from на to > в: > ip rule add from 212.*.*.* table T1 > непробывали?Попробовал - безрезультатно
- Несколько каналов интернет, маршрутизация, PavelR, 22:04 , 08-Фев-12 (5)
показывай вывод ip ru sh ip ro sh table main ip ro sh table default ip ro sh table PROVIDER для каждого провайдера.
- Несколько каналов интернет, маршрутизация, luft, 22:19 , 08-Фев-12 (6)
> показывай вывод > ip ru sh > ip ro sh table main > ip ro sh table default > ip ro sh table PROVIDER для каждого провайдера.ip rule show 0: from all lookup local 32764: from 212.*.*.* lookup T1 32765: from 192.168.130.* lookup T1 32766: from all lookup main 32767: from all lookup default ip route show table main 212.12.10.* dev ppp0 proto kernel scope link src 95.139.*.* 212.12.10.* dev ppp1 proto kernel scope link src 212.*.*.* 192.168.67.0/24 dev eth0.999 proto kernel scope link src 192.168.67.5 192.168.130.0/24 dev eth0.190 proto kernel scope link src 192.168.90.5 default dev ppp0 scope link default - пустая ip ro sh t T1 192.168.130.0/24 dev eth0.230 scope link 192.168.67.0/24 dev eth0.999 scope link 127.0.0.0/8 dev lo scope link default dev ppp1 scope link таблицу сделал только одну T1 для ppp1 подключения, остольные по умолчанию через главную
- Несколько каналов интернет, маршрутизация, PavelR, 22:48 , 08-Фев-12 (7)
В общем всё верно.> ip ro sh t T1 > 192.168.130.0/24 dev eth0.230 scope link > 192.168.67.0/24 dev eth0.999 scope link > 127.0.0.0/8 dev lo scope link > default dev ppp1 scope link Возможно, что тут надо бы маленько исправить скрипт, и в T1 делать правило с указанием src. Т.е. чтобы ip ro sh t T1 показало последней строкой "default dev ppp1 scope link src 1.2.3.4". Может быть в этом дело, но я не уверен, ничего не указывает на необходимость данного действа. К сожалению 100% рабочего скрипта у меня не сохранилось. > таблицу сделал только одну T1 для ppp1 подключения, остольные по умолчанию через > главную
При таком конфиге следующее не возможно: " >traceroute ya.ru с локального компа тоже показывает, что идет через ppp1 " Также рекомендую проверять не "ping -I pppX" а командой "ping -I 1.2.3.4", дополнительно tcpdump-ом контролировать, что пакет уходит действительно через правильный интерфейс. Ну и не забываем про "ip ro flu ca".
- Несколько каналов интернет, маршрутизация, luft, 11:34 , 10-Фев-12 (8)
> Т.е. чтобы ip ro sh t T1 > показало последней строкой "default dev ppp1 scope link src > 1.2.3.4".подскажите, какую команду для этого нужно прописать. Я так понимаю, что 1.2.3.4 - адрес локальной машины, которую выпускаю в инет по ppp1?
|