Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
розпределение трафика между каналами (iptables+iproute)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Russian
View previous topic :: View next topic  
Author Message
[clu]
Apprentice
Apprentice


Joined: 23 Feb 2004
Posts: 160
Location: 127.0.0.1

PostPosted: Sat May 07, 2005 9:06 pm    Post subject: розпределение трафика между кан Reply with quote

Итак, классическая ситуация с быстрым и медленным каналом.
eth0 - быстрый, с бесплатным UA-IX
ppp0 - медленный с халявным миром


Quote:

# cat ir2uaix.sh
#!/bin/sh
echo 202 uaix.out >> /etc/iproute2/rt_tables
ip rule add fwmark 2 table uaix.out
ip route add default via 194.93.x.x dev eth0 table uaix.out
ip route flush cache


Quote:

# cat mk-uaix-mark.sh
#!/bin/sh
for i in `cat list-uaix.txt`
do
iptables -A PREROUTING -t mangle -s 10.10.0.0/24 -d $i -j MARK --set-mark 2
done


в файле list-uaix.txt список сетей которые входят в ua-ix

Quote:

# head list-uaix.txt
62.16.16.128/26
62.64.64.0/18
62.64.80.0/21
62.64.87.0/24
62.64.88.0/21
62.64.96.0/21
62.64.104.0/21
62.64.110.0/23
62.64.112.0/21
62.64.120.0/21


т.е. я делаю маршрут по умолчанию через ppp0, а пакеты адресованные в uaix заворачиваю на eth0 (snat для всех по умолчанию на ppp0).

в итоге получаем презабавную ситуацию
трафик заворачивается как надо, но ! проходит тольок icmp трафик !!!

что за штука такая ?
и ещё как сделать так, что бы пакеты самого шлюза завораичвались как надо ?
Back to top
View user's profile Send private message
Alehur
n00b
n00b


Joined: 04 Nov 2003
Posts: 46
Location: Belarus

PostPosted: Wed May 11, 2005 6:48 am    Post subject: Reply with quote

попробуй явно указать протокол:
iptables -A PREROUTING -t mangle -p tcp ....

>и ещё как сделать так, что бы пакеты самого шлюза завораичвались как надо ?
аналогично как и в скрипте делаешь для локальной сетки, только делай сорс адрес свой:
iptables -A PREROUTING -t mangle -s 194.93.x.x -d $i ...
Back to top
View user's profile Send private message
ba
l33t
l33t


Joined: 25 May 2003
Posts: 804

PostPosted: Wed May 11, 2005 9:05 am    Post subject: Re: розпределение трафика между к Reply with quote

[clu] wrote:
что за штука такая ?

для меня полиси роутинг почти всегда шаманство, так что чтобы понять что нетак надо хотя бы по-tcpdump-ить на входном и выходном интерфейсах... а так скорее всего у тебя NAT делается не в тот адрес(или обратное преобразовние).

[clu] wrote:
и ещё как сделать так, что бы пакеты самого шлюза завораичвались как надо ?

Соурсный адрес для коннекшенов инициируемых с самой машины определяется из главой таблицы роутинга, так что либо прописать в ней роуты до всех этих подсеток или попробовать включить в ядре и настроить NAT for local connections...
Back to top
View user's profile Send private message
[clu]
Apprentice
Apprentice


Joined: 23 Feb 2004
Posts: 160
Location: 127.0.0.1

PostPosted: Tue Aug 09, 2005 12:58 pm    Post subject: Reply with quote

тема ещё жива :)))

--------------
мне сейчас интересно (я вижу перспективу на будущее) сделать это при помощи ispet+iptables+iproute2 (все (с) devil -рецепт его )

#!/bin/bash
iptables -t mangle -F
ipset -F uaix
ipset -X uaix
ipset -N uaix nethash
for i in $(cat uaix.txt); do
ipset -A uaix ${i}
done
iptables -t mangle -A PREROUTING -m set --set uaix src,dst -m mark --mark 1 -j MARK --set-mark 1
iptables -t mangle -A PREROUTING -m set --set uaix dst,src -m mark --mark 1 -j MARK --set-mark 1
echo "100 uaix" >>/etc/iproute2/rt_tables
ip route add default via 194.93.161.1 table uaix
ip rule add fwmark 1 lookup uaix
ip ro add default via 192.168.1.29
iptables -A POSTROUTING -s 10.10.0.0/24 -j SNAT --to-source 213.179.233.xx
iptables -A POSTROUTING -s 10.10.0.0/24 -j SNAT --to-source 194.93.161.xx
------------------

конфигурация сети

eth0 - 10.10.0.254
eth1 - 194.93.161.xx - внешний , используется для ua-ix
ppp0 - 213.179.233.xx - вншений используется для мира.

пока не работает - пакеты не заврачиваются, кажется не работает на этапе маркировки/распознавания:
Code:

 mark
This module matches the netfilter mark field associated with a packet (which can be        set using the MARK target below).
      --mark value[/mask]
              Matches packets with the given unsigned mark value (if a mask is  specified, this is logically ANDed with the mask before the comparison).


iptables -t mangle -A PREROUTING -m set --set uaix src,dst -m mark --mark 1 -j MARK --set-mark 1

откуда тут совпадение - ведь пакет не маркирован, если сделать без выделеного - тоже не работает.
если сделать iptables -t mangle -A PREROUTING -m set --set uaix src,dst -j LOG

Code:

Aug 26 04:54:02 gw IN=eth0 OUT= MAC=00:e0:7d:c2:00:94:00:e0:81:02:16:37:08:00 SRC=10.10.0.1 DST=212.42.64.8 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=7 DF PROTO=ICMP TYPE=8 CODE=0 ID=15137 SEQ=8
Aug 26 04:54:03 gw IN=eth0 OUT= MAC=00:e0:7d:c2:00:94:00:e0:81:02:16:37:08:00 SRC=10.10.0.1 DST=212.42.64.8 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=8 DF PROTO=ICMP TYPE=8 CODE=0 ID=15137 SEQ=9



при

iptables -t mangle -A PREROUTING -s 10.10.0.1 -m set --set uaix src,dst -m mark --mark 1 -j LOG
iptables -t mangle -A PREROUTING -s 10.10.0.1 -m set --set uaix dst,src -m mark --mark 1 -j LOG

лог молчит

куда копать ?
Back to top
View user's profile Send private message
bukazoid
Tux's lil' helper
Tux's lil' helper


Joined: 21 Jan 2005
Posts: 86

PostPosted: Tue Aug 09, 2005 1:46 pm    Post subject: Reply with quote

Quote:
-m mark --mark 1 -j MARK --set-mark 1

пакет проверяется на mark (--mark 1) и и при этом этот самый mark (-set-mark 1) тут же устанавливается ??
add
SNAT в -t nat обычно засовуют ....
Back to top
View user's profile Send private message
ManJak
Guru
Guru


Joined: 18 Dec 2004
Posts: 561
Location: St. Petersburg, Russia

PostPosted: Tue Aug 09, 2005 6:17 pm    Post subject: Reply with quote

1) Может, "metric", когда халява навернется - сунет туда?
2) Если надо управлять входящим, то, кроме как BGP, - идей нет :(
Back to top
View user's profile Send private message
bukazoid
Tux's lil' helper
Tux's lil' helper


Joined: 21 Jan 2005
Posts: 86

PostPosted: Wed Aug 10, 2005 6:06 am    Post subject: Reply with quote

ManJak wrote:

2) Если надо управлять входящим, то, кроме как BGP, - идей нет :(

если тупо подрезать определённый сервис (или диапазон ip) то можно "policy DROP" т.е. дропаются пакеты сверх скорости.
Нормальные сервисы видя такое обычно уменьшают скорость.
P.S. хотя такая политика может быть воспринята как диверсия !!!
Back to top
View user's profile Send private message
[clu]
Apprentice
Apprentice


Joined: 23 Feb 2004
Posts: 160
Location: 127.0.0.1

PostPosted: Wed Aug 10, 2005 8:29 am    Post subject: Reply with quote

bukazoid wrote:

SNAT в -t nat обычно засовуют ....

это я здесь промазал :))
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Russian All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum