>http://www.opennet.me/tips/info/2009.shtml Спасибо за ссылку, читал, когда настраивал три канала инета на раздачу. Все работает до сих пор. На всякий случай перечитал еще раз. Не помогло.
>
>>
>>Ситуация: Пров дал два айпишника (один - медленный анлим, другой - скоростной
>>но дорогой) из одной сети соответственно с одним гетвеем.
>>Задача: разделять трафик по интерфейсам.
>
>Извините, интерфейсов у вас один должен быть.
Физический интерфейс должен быть один? Сделать алиас?
> А остальное мы должны телепатически понять ?
> Раз вы такой умный, что знаете что показывать а что нет,
>то чёж сами тогда не разберетесь ?
Конфиг:
Тут есть ipables
#!/bin/sh
IPT="/sbin/iptables"
LOCAL="eth1"
INSIS="eth0"
UNLIM="eth2"
IP_INSIS="11.11.11.79"
IP_UNLIM="11.11.11.78"
echo 1 > /proc/sys/net/ipv4/ip_forward
$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -t nat -X
$IPT -t mangle -F
$IPT -t mangle -X
$IPT -P INPUT ACCEPT
$IPT -P FORWARD DROP
$IPT -P OUTPUT ACCEPT
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A FORWARD -i $LOCAL -o $UNLIM -j ACCEPT
$IPT -A FORWARD -o $LOCAL -i $UNLIM -j ACCEPT
$IPT -A FORWARD -i $LOCAL -o $LOCAL -j ACCEPT
$IPT -t nat -A POSTROUTING -o eth2 -j SNAT --to-source 11.11.11.78
$IPT -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 11.11.11.79 #activate vista
$IPT -t mangle -A PREROUTING -d 62.148.237.132 -j MARK --set-mark 0x2
$IPT -t mangle -A PREROUTING -s 192.168.0.95 -d ! 192.168.0.0/24 -j MARK --set-mark 2
>таблицы кто будет прописывать, Пушкен?
Тут есть ip
#!/bin/sh
IPT=/sbin/ip
IP_LOCAL="192.168.0.1"
IP_UNLIM="11.11.11.78"
IP_INSIS="11.11.11.79"
GW_INSIS="11.11.11.1"
IF_LOCAL="eth1"
IF_UNLIM="eth2"
IF_INSIS="eth0"
NET_LOCAL=192.168.0.0/24
NET_INSIS=88.86.206.0/24
NET_UNLIM=88.86.206.0/24
$IPT route flush table lim
$IPT route flush table unlim
$IPT route add from $NET_LOCAL to $NET_LOCAL dev $IF_LOCAL table main
#В таблицу lim
$IPT route add $NET_INSIS dev $IF_INSIS src $IP_INSIS table lim
$IPT route add default via $GW_INSIS dev $IF_INSIS table lim
$IPT route add $NET_LOCAL dev $IF_LOCAL table lim
$IPT route add 127.0.0.0/8 dev lo table lim
#В таблицу unlim
$IPT route add $NET_UNLIM dev $IF_UNLIM src $IP_UNLIM table unlim
$IPT route add default via $GW_INSIS dev $IF_UNLIM table unlim
$IPT route add $NET_LOCAL dev $IF_LOCAL table unlim
$IPT route add 127.0.0.0/8 dev lo table unlim
#В таблицу main
$IPT route add $NET_INSIS dev $IF_INSIS src $IP_INSIS table main
$IPT route add $NET_UNLIM dev $IF_UNLIM src $IP_UNLIM table main
$IPT route add default via $GW_INSIS dev $IF_UNLIM table main
$IPT route add YY.YY.YY.1/32 via 88.86.206.1 dev eth0 table lim (это ДНС провайдерский)
$IPT rule add from $IP_INSIS table lim
$IPT rule add to YY.YY.YY.1 table lim
$IPT rule add fwmark 2 table lim
$IPT rule add from $IP_UNLIM table unlim
$IPT route flush cache
cat rt_tables
255 local
254 main
253 default
0 unspec
10 lim
20 unlim
ip rule show
0: from all lookup local
32761: from 11.11.11.78 lookup unlim
32762: from all fwmark 0x2 lookup lim
32763: from all to YY.YY.YY.1 lookup lim
32764: from 192.168.0.95 lookup lim
32765: from 11.11.11.79 lookup lim
32766: from all lookup main
32767: from all lookup default
ip route
192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.1
88.86.206.0/24 dev eth2 scope link src 88.86.206.78
169.254.0.0/16 dev eth2 scope link
default via 88.86.206.1 dev eth2
ip route show table lim
192.168.0.0/24 dev eth1 scope link
88.86.206.0/24 dev eth0 scope link src 88.86.206.79
127.0.0.0/8 dev lo scope link
(Вот как раз в этой таблице и отсутствует дефаултовый шлюз)
ip route show table unlim
83.167.6.1 via 88.86.206.1 dev eth2
192.168.0.0/24 dev eth1 scope link
88.86.206.0/24 dev eth2 scope link src 88.86.206.78
127.0.0.0/8 dev lo scope link
default via 88.86.206.1 dev eth2
ip route show table local
broadcast 192.168.0.255 dev eth1 proto kernel scope link src 192.168.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
broadcast 11.11.11.0 dev eth0 proto kernel scope link src 11.11.11.79
broadcast 11.11.11.0 dev eth2 proto kernel scope link src 11.11.11.78
local 192.168.0.1 dev eth1 proto kernel scope host src 192.168.0.1
broadcast 192.168.0.0 dev eth1 proto kernel scope link src 192.168.0.1
local 11.11.11.78 dev eth2 proto kernel scope host src 11.11.11.78
local 11.11.11.79 dev eth0 proto kernel scope host src 11.11.11.79
broadcast 11.11.11.255 dev eth0 proto kernel scope link src 11.11.11.79
broadcast 11.11.11.255 dev eth2 proto kernel scope link src 11.11.11.78
broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
ip route show table main
192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.1
11.11.11.0/24 dev eth2 scope link src 11.11.11.78
169.254.0.0/16 dev eth2 scope link
default via 11.11.11.1 dev eth2
ip route show table default - тут пусто
>Вы не прочитали ни одной статьи из найденных, а если прочитали,
>то не поняли. Правила должны иметь приоритет.
Приоритет расставляется автоматически, на сколько я понял и вижу.
Если бы я видел, что не так, я - бы не обратился в этот форум с вопросом.
З.Ы.: Задача, которая стоит передо мной - сделать маршрутизацию по нужному каналу в зависимости от адреса назначение, порта назначение, адреса источника и т.д., но это все делается, насколько я понимаю, через -j MARK --set-mark 0x2