LINUX.ORG.RU
ФорумAdmin

Два интернет канала...


0

0

Всем привет!

У меня стоял один интернет канал, но на днях начальник сделал подарок в виде ещё одного канала(радость то какая!:). Мне не нужно обьединять эти 2 канала. Мне нужно одних пользователей пустить через ppp0, а других через ppp1. По дефолту стоит маршрут на ppp1. Настроил таблицы маршрутизации для обеих каналов. Но появилась проблема: запросы посылаются на ppp0, а ответ приходит на ppp1 (но должен на ppp0) :(

(Это будет интересно автору темы :"Многоканальный доступ в интернет")

Конфигурация:
ОС: ASP 11
eth1=192.168.1.100
ppp0=193.93.17.15
ppp1=193.93.17.24

Шлюз провайдера 193.93.16.10 (тоесть для ppp0 и ppp1 шлюз провайдера одинаковый)

Вот что я делаю:
Создаю 2 таблицы маршрутизации
echo 200 games >> rt_tables
echo 201 www >> rt_tables

Задаю правила:
ip rule add from 192.168.1.0/24 lookup games (все кроме http идет в таблицу games)
ip rule add from 127.0.0.1 lookup www (весь http(squid) идет в таблицу www)

Модифицирую таблицу games:
ip route add 193.93.16.10 dev ppp0 src 193.93.17.15 table games
ip route add default via 193.93.16.10 table games

Модифицирую таблицу www:
ip route add 193.93.16.10 dev ppp1 src 193.93.17.24 table www
ip route add default via 193.93.16.10 table www

ip route flush cache

Настраиваю NAT:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o ppp1 -j MASQUERADE

Проблема: ответы, которые должны идти на ppp0, почему-то идут на ppp1

ПОМОГИТЕ!!!

проблема в том что шлюз одинаковый, плпроси чтобы сделал две сети /30 и тогда проблем не будет

anonymous
()
Ответ на: комментарий от anonymous

Это vpn соединение(как ppp0 так и ppp1)!
Зачем просить другой шлюз? Если после маскарадинга ставится адрес отправителя(193.93.17.15(ppp0) или 193.93.17.24(ppp1)), то ответ должен приходить отправителю, а не совсем другому адаптеру!
Или я что-то путаю? :) Подскажите пожалуйста.

SlavikSS ★★
() автор топика

> ip rule add from 127.0.0.1
У вас пакеты наружу (за пределы тачилы) выходят с src=127.0.0.1 ??? Просто так такого не бывает, разве что специально постараться !
Пропишите правильно правила маршрутизации.

spirit ★★★★★
()
Ответ на: комментарий от spirit

Это я так выпускаю трафик, который идет от squid'a! Но даже если это не правильно, то первое правило точно правильно(from 192.168.1.0/24).
Смотрел tcpdump'ом на ppp0, исходящий трафик от 192.168.1.х идет, но возвращается через ppp1 :(
Как исправить, чтоб трафик возвращался через ppp0?

SlavikSS ★★
() автор топика
Ответ на: комментарий от SlavikSS

А они точно уходят через ppp0, причем с src адресом таким, как у ppp0 ? Может попробовать вместо -j MASQUERADE использовать -j SNAT --to-source x.x.x.x. MASQUERADE может не всегда правильно выбирать адрес интерфейса.

spirit ★★★★★
()
Ответ на: комментарий от spirit

Поставил SNAT, но все-равно исходящие идут через ppp0 а входящие через ppp1. Уже 4 часа ламаю голову!
Может дело в том, что для обеих ppp шлюз одинаковый(193.93.16.10)?

SlavikSS ★★
() автор топика
Ответ на: комментарий от SlavikSS

Насколько я понял, squid запущен на тай же тачке, где интерфейсы ppp0 и ppp1. Так вот. Локально сгенерированные пакеты (от squid-а) не будут иметь srcip=127.0.0.1. ip rules применяются только к проходящим пакетам, но не к локально сгенерированным. Для локально сгенерированных маршрут ищется в дефолтной таблице маршрутизации по адресу назначения, из из этого маршрута извлекается srcip.

iliyap ★★★★★
()
Ответ на: комментарий от iliyap

Когда я прописал ip rule add from 127.0.0.1 table www, то сквид заработал!(но я могу и ошибаться, я столько вариантов перепробовал, что уже не помню с чего начинал :).

Но проблема не в этом!!!
Я поднимаю ppp0, а потом ppp1. Как выяснилось, после поднятия ppp1, канал ppp0 валится, но сам девайс ppp0 в системе висит.

В чем может быть проблема? Это глючит мой pppd или проблема у провайдера? Помогите!

SlavikSS ★★
() автор топика
Ответ на: комментарий от SlavikSS

Проблема решилась. Провайдер дал ещё один шлюз. После чего два vpn на одной машине поднялись без проблем.
Всем спасибо!

SlavikSS ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.