Добрый день.
У меня следующая проблема. Я хочу направить весь p2p траффик на определенный шлюз. Я делаю
ip route add default via xxx.xxx.xxx.xxx
iptables -t mangle -A FORWARD -m ipp2p --ipp2p -j MARK --set-mark 0x01
ip rule add fwmark 0x01 table provider1
ip route add default via yyy.yyy.yyy.yyy dev ethX table provider1
Все пакеты все равно идут через default'ный шлюз. Что не так?
Поиском пользовался, но ничего толкового не нашел, поэтому создал тему.
p2p траффик
Модераторы: SLEDopit, Модераторы разделов
-
Alex2ndr
- Сообщения: 443
- ОС: Debian Lenny
Re: p2p траффик
Сеть опишите - фиг знает что там у вас и какxwrs писал(а): ↑03.02.2010 14:29Добрый день.
У меня следующая проблема. Я хочу направить весь p2p траффик на определенный шлюз. Я делаю
ip route add default via xxx.xxx.xxx.xxx
iptables -t mangle -A FORWARD -m ipp2p --ipp2p -j MARK --set-mark 0x01
ip rule add fwmark 0x01 table provider1
ip route add default via yyy.yyy.yyy.yyy dev ethX table provider1
Все пакеты все равно идут через default'ный шлюз. Что не так?
Поиском пользовался, но ничего толкового не нашел, поэтому создал тему.
-
xwrs
- Сообщения: 6
- ОС: Gentoo Linux 2008.0
Re: p2p траффик
Значит есть 3 сетевухи.
eth0 - локалка
11.11.11.0/24
eth1 - внешняя сетевуха №1
eth2 - внешняя сетевуха №2
192.168.xx.1 шлюз №1
192.168.yy.1 шлюз №2
Пока экспериментировал, то начал писать уже не то что выше, а
iptables -t mangle -A PREROUTING -p tcp -m ipp2p --ipp2p -j MARK --set-mark 0x1
ip rule add fwmark 0x1 table provider1
ip route add default via 192.168.xx.1 dev eth1 table provider1
eth0 - локалка
11.11.11.0/24
eth1 - внешняя сетевуха №1
eth2 - внешняя сетевуха №2
192.168.xx.1 шлюз №1
192.168.yy.1 шлюз №2
Пока экспериментировал, то начал писать уже не то что выше, а
iptables -t mangle -A PREROUTING -p tcp -m ipp2p --ipp2p -j MARK --set-mark 0x1
ip rule add fwmark 0x1 table provider1
ip route add default via 192.168.xx.1 dev eth1 table provider1
-
Alex2ndr
- Сообщения: 443
- ОС: Debian Lenny
Re: p2p траффик
xwrs писал(а): ↑03.02.2010 16:55Значит есть 3 сетевухи.
eth0 - локалка
11.11.11.0/24
eth1 - внешняя сетевуха №1
eth2 - внешняя сетевуха №2
192.168.xx.1 шлюз №1
192.168.yy.1 шлюз №2
Пока экспериментировал, то начал писать уже не то что выше, а
iptables -t mangle -A PREROUTING -p tcp -m ipp2p --ipp2p -j MARK --set-mark 0x1
ip rule add fwmark 0x1 table provider1
ip route add default via 192.168.xx.1 dev eth1 table provider1
У вас 2 таблицы маршрутизации, как я понимаю - на каждого из провайдеров(каналов в инет, шлюзов и тд). Настроены в соответствии с заветами lartc. Так вот - перед тем как делать такие фокусы с iptables вы убедились что оба канала работают как положено? Т е трафик должен идти нормально через оба канала.
-
Venegance
- Сообщения: 119
- ОС: Debian
Re: p2p траффик
Код: Выделить всё
eth0 - локалка
11.11.11.0/24Код: Выделить всё
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255-
xwrs
- Сообщения: 6
- ОС: Gentoo Linux 2008.0
Re: p2p траффик
Траффик ходит нормально если прописать шлюз по умолчанию и настроить NAT. Но мне не нужно чтобы трафик ходил через дефолтный шлюз. Мне нужно одни порты на один шлюз, другие - на другой.
-
Alex2ndr
- Сообщения: 443
- ОС: Debian Lenny
Re: p2p траффик
Вы меня не совсем понимаете - у вас должно быть 2 дефолтных шлюза - каждый в своей таблице( http://gazette.linux.ru.net/rus/articles/lartc/x348.html ). Так вот - оба канала работают как надо? Если перебросить нат с одного внешнего интерфейса на другой сеть продолжит функционирование?
-
xwrs
- Сообщения: 6
- ОС: Gentoo Linux 2008.0
Re: p2p траффик
iptables -t mangle -A PREROUTING -p tcp -s 11.11.11.0/24 -m multiport --dports 0:1024 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 0:1024 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -p tcp -s 11.11.11.0/24 -m multiport --dports 1024:40000 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 1024:40000 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p tcp -s 11.11.11.0/24 -m multiport --dports 40000:65535 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 40000:65535 -j MARK --set-mark 0x2
ip rule add fwmark 0x1 table provider1
ip route add default via 192.168.xx.1 dev eth1 table provider1
ip rule add fwmark 0x2 table provider2
ip route add default via 192.168.yy.1 dev eth2 table provider2
так у меня и есть 2 таблицы - 2 маршрута по умолчанию.
Если просто отключить любые маркировки, и настроить НАТ (либо на один шлюз либо на другой), то все ходит нормально.
Я не понимаю, надо ли после всего этого писать
route add default gw <IP одного из шлюзов>
?
Если не пишу, то вообще ничего не ходит
Когда прописываю дефолтным шлюзом 192.168.xx.1, то работает http, но торрент качается медленно, а когда 192.168.yy.1, то http вообще не работает, а торрент на полной скорости.traceroute в любом случае показывает маршрут через 192.168.yy.1
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 0:1024 -j MARK --set-mark 0x1
iptables -t mangle -A PREROUTING -p tcp -s 11.11.11.0/24 -m multiport --dports 1024:40000 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 1024:40000 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p tcp -s 11.11.11.0/24 -m multiport --dports 40000:65535 -j MARK --set-mark 0x2
iptables -t mangle -A PREROUTING -p udp -s 11.11.11.0/24 -m multiport --dports 40000:65535 -j MARK --set-mark 0x2
ip rule add fwmark 0x1 table provider1
ip route add default via 192.168.xx.1 dev eth1 table provider1
ip rule add fwmark 0x2 table provider2
ip route add default via 192.168.yy.1 dev eth2 table provider2
так у меня и есть 2 таблицы - 2 маршрута по умолчанию.
Если просто отключить любые маркировки, и настроить НАТ (либо на один шлюз либо на другой), то все ходит нормально.
Я не понимаю, надо ли после всего этого писать
route add default gw <IP одного из шлюзов>
?
Если не пишу, то вообще ничего не ходит
Когда прописываю дефолтным шлюзом 192.168.xx.1, то работает http, но торрент качается медленно, а когда 192.168.yy.1, то http вообще не работает, а торрент на полной скорости.traceroute в любом случае показывает маршрут через 192.168.yy.1