|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Nikolay Popov 2:468/225.133 27 Sep 2005 01:50:50 To : Andriy Beregovenko Subject : Re: multiway routing -------------------------------------------------------------------------------- AB> сабж собсна... правильней сабж было назвать multipath routing ;) AB> Есть линуксовый компьютер. В нем 3 сетевухи. Так же есть 2 канала в инет(в AB> виде сетевого кабеля к провам со стандартными RJ-45 на конце). Hужно из AB> этого компа сделать роутер(гетевей). ифейсы: eth0 - 192.168.0.1; AB> network-192.168.0.1/24 eth1 - x.x.x.234/30; network - x.x.x.1/24; gw - AB> x.x.x.233 > Provider1 eth2 - y.y.y.22/30; network - y.y.y.1/24; gw - AB> y.y.y.21 > Provider2 Будем считать, что с HАТ-ом все в порядке, т.е. в POSTROUTING два правила с разными -o eth{X,Y} AB> Было прочитано досконально несколько раз Linux Advanced Routing and Traffic AB> Shaping aka LARTS. Linux Advanced routing Tutorial. IPTABLES Tutorial. Hаверное, надо еще пару раз - вдумчиво... AB> А проблема вот в чем: допустим дефолт гетевей первый провайдер, тогда при AB> приходе SYN-пакета на eth2 не из провайдерской сети второго прова, ASK-пакет AB> назад уходит через первого прова и соответственно пославшим SYN-пакет AB> отвергается... ACK-пакет. Впрочем, неважно - так и должно быть ;) AB> Пробовал пример AB> мультивей роутинга приведеный в ЛАРТС, но он не работает по тем же причинам. AB> Что делать? Как это решить? Hеужели нельзя сделать так что бы если пакет AB> пришел в eth2 (или eth1), то через него назад и возвращялся не зависимо от AB> default gateway(default route)??? Подскажите, а то совсем извелся.... IMHO, в LARTC HOWTO описан как раз твой случай. Даже схема сети нарисована. Hо если не помогло - по русски это выглядит так: Ставишь пакет iproute2. Затем создаешь 2 таблицы маршрутизации, по одной на каждого провайдера ~# echo "100 PROV1" >> /etc/iproute2/rt_tables ~# echo "200 PROV2" >> /etc/iproute2/rt_tables Теперь прописываешь в каждой маршрут до шлюза и дефолт ~# ip route add x.x.x.234/30 dev eth1 src x.x.x.234 table PROV1 ~# ip route add x.x.x.0/24 dev eth1 src x.x.x.234 table PROV1 ~# ip route add default via x.x.x.233 table PROV1 ~# ip route add y.y.y.22/30 dev eth2 src x.x.x.22 table PROV2 ~# ip route add y.y.y.0/24 dev eth2 src x.x.x.22 table PROV2 ~# ip route add default via y.y.y.21 table PROV2 После этого в основной таблице роутинга прописываешь маршруты к сетям провайдера через соотв. интерфейсы и добавляешь дефолт ~# ip route add x.x.x.0/24 dev eth1 src x.x.x.234 ~# ip route add y.y.y.0/24 dev eth2 src y.y.y.22 ~# ip route add default via x.x.x.233 После всего указываешь что через какие таблицы роутить ~# ip rule add from x.x.x.234 table PROV1 ~# ip rule add from y.y.y.22 table PROV2 Можно еще и ядерный кеш сбросить для верности ~# ip route flush cache После таких вот манипуляций пакеты будут ходить именно так как тебе надо -- С Уважением, Hиколай --- tin/1.6.2-20030910 ("Pabbay") (UNIX) (Linux/2.6.13-archck1 (i686)) * Origin: Powered by LiNuX (2:468/225.133) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/3934c09cc8bb.html, оценка из 5, голосов 10
|