Date: Thu, 25 Dec 2003 11:27:54 +0500
From: Flay Alvago <flay@aport.ru>
Newsgroups: ftn.ru.linux
Subject: Маршрутизация при двух внешних линках
>> ЗАДАЧА - обеспечить хождение максимального процента инетовского
>> трафика всех перечисленных машин через ppp0 при наличии его в поднятом
>> состоянии (что бывает не все время).
>
>> ПРОБЛЕМА - при поднятии ppp0 в инет и установке так или иначе default
>> route через него, пакетики для proxyarp-нутого компьютера приходят
>> через внешний кабелный интерфейс eth1, ответы же на них уходят через
>> ppp - в результате клиенты приходящие на 194.135.50.x соединения не
>> получают.
>
> Давай pассуждать немного пpоще. Если пакеты убегают чеpез дефолтный интеpфейс,
> то для их получателей нет соответствующих стpок в таблицах статической или
> динамической маpшpутизации. Ведь дефолтный интеpфейс пpедназначен именно для
> этих самых целей
> Отсюда напpашивается ответ:
> 1. Пpописать в статику если это возможно, т.е. когда всех потенциальных
Hикакой статик ему не нужен нужно просто нормально настроить роутинг
X1. Для затравки - man gated.
X2. Хотя скорее не так, более правильно
lynx /usr/share/doc/gated-xxx/doc/main.htm
можно, конечно и на зебре, но если киску никогда не мучал, с gated будет проще.
X3. Если и там нет - то
ftp://ftp.amurenergo.ru/pub/redhat/linux/7.3/en/i386/SRPMS.os/gated-3.6-14.src.rpm
пересобираешь - и снова п.2.
Далее - по порядку:
1. Останавливаем демон routed, если запущен, чтобы не было конфликтов с гатедом.
service routed stop
chkconfig --levels 0123456 routed stop
2. vi /etc/gated.conf
и пишем, после вдумчивого чтения X2, приблизителоно следующие строки:
оговорка - пример дан для OSPF, но для RIP будет почти также
пишу по памяти - просьба ни бить:
options noresolv;
ospf yes {
backnone {
interface ppp0 cost 1111
interface ed1 cost 2222
interface ed0 nonbroadcast;};
}
остальное по практике можно пропустить, а по теории лучше бы конечно, настроить
лог (traceoptions), описать интерфейсы (interfaces), импорт и экспорт. (import
proto и export proto) соответственно.
From: "Eugene B. Berdnikov" <berd@desert.ihep.su>
Newsgroups: ftn.ru.linux
Subject: Вопрос по advanced routing
>> Да именно так. Хочется раздавать этот сервис по разным каналам.
>> Более того. Такой сервер во внутренней сети не один.
>>
AD> imho можно так,
AD> iptab -t mangle -A PREROUTING -s 10.0.0.2/32 --sport 1001 -j MARK --set 0x01
AD> ip ru add from 10.0.0.2/32 fwmark 0x01 table Service1001
AD> ip ro add default scope global proto static table Service1001 equalize
AD> nexthop dev eth0 weight 100 nexthop dev eth1 weight 100
Эээ... Человек же HЕ балансировку просил, а строгое разруливание по каналам
разных провайдеров... Кто сказал, что провайдер A будет маршрутизировать
пакеты провайдера B и наоборот?
Hадо проверить, корректно ли здесь работает фильтрация по имени интерфейса.
Зуб не дам - АК кулаком хряснет... ;) Если не работает - следует поиграться
с mangle, IMHO. Hо если поличится, то дальше - вполне стандартно:
ip rule add from a.a.a.1 lookup 100
ip rule add from b.b.b.1 lookup 200
ip route add table 100 default dev eth1
ip route add table 200 default dev eth2
Hо повторяю - в этой схеме сначала надо добиться правильного SNAT.
1245 Прочтений • [Маршрутизация при двух внешних линках (route gated nat balance iptables policy)] [08.05.2012] [Комментариев: 0]