Попытался произвести эксперимент с данным устройством и данной прошивкой, так как имею два канала интернет по 2Мбит/с, хотелось завести на данное устройство и путем балансировки на каналах, так как скорость не велика то мощности устройства должно хватить за глаз, речь о террентах не идет.
Первое с чем столкнулся, на данном устройстве добавить новый vlan не получилось, верней он создается но конкретно закрепить за каким либо LAN портом не получается, все настройки через nvram (vlan0 и vlan1) не помогали, так как данные порты все равно продолжали работать в своих первоначальных настройках, даже пробовал делать перевод WAN на LAN порт, то все оставалась по прежнему, вывод данный механизм настройки на данном устройстве не поддерживается.
Второе первый канал интернета настраивается без проблем на pptp, все работает.
Третье пытаюсь добавить второй канал интернета через подключение по LAN порту ADSL модема в режиме роутера т.е. получается схема по интерфейсам на DIR300/NRU:
-ppp0 первый канал интернета сеть aa.aa.a1.2 шлюз aa.aa.a1.1 маска 255.255.255.255
-vlan2 локальная сеть провайдера сеть aa.aa.a2.2 маска 255.255.255.0
-br0 локальная сеть "домашняя" сеть 192.168.1.1 маска 255.255.255.0
route
aa.aa.a1.2 * 255.255.255.255 UH 0 0 0 ppp0
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
aa.aa.a2.0 * 255.255.255.0 U 0 0 0 vlan2
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default aa.aa.a1.2 0.0.0.0 UG 0 0 0 ppp0
ip rule list
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
ip route list table local
ip route list table main
ip link list
...
5: eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
7: vlan1@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
8: vlan2@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
9: br0: <BROADCAST,MULTICAST,PROMISC,UP,10000> mtu 1500 qdisc htb
link/ether
10: ra0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
...
28: ppp0: <POINTOPOINT,MULTICAST,UP,10000> mtu 1436 qdisc pfifo_fast
link/ppp
31: imq0: <NOARP> mtu 1500 qdisc noop
link/void
32: imq1: <NOARP> mtu 1500 qdisc noop
link/void
ip addr show
1: lo: <LOOPBACK,MULTICAST,UP,10000> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
2: teql0: <NOARP> mtu 1500 qdisc noop
link/void
3: tunl0: <NOARP> mtu 1480 qdisc noop
link/ipip 0.0.0.0 brd 0.0.0.0
4: gre0: <NOARP> mtu 1476 qdisc noop
link/gre 0.0.0.0 brd 0.0.0.0
5: eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
7: vlan1@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
8: vlan2@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
inet aa.aa.a2.2/24 brd aa.aa.a2.255 scope global vlan2
9: br0: <BROADCAST,MULTICAST,PROMISC,UP,10000> mtu 1500 qdisc htb
link/ether
inet 192.168.1.1/24 brd 192.168.1.255 scope global br0
25: etherip0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop
link/ether
54: ra0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
…
-----------------------
Понятно, что весь трафик по доступу в интернет пойдет через маршрут default, но хотелось бы распределить его по палам между интерфейсом ppp0 и роутером ADSL c IP - 192.168.1.100
естественно при добавлении маршрута по default
route add default gw 192.168.1.100 dev br0
все пакеты сразу идут через второй канал на роутер ADSL не есть хорошо. Пробую разделить трафик, пока без разделения локальный или нет, считаю что весь трафик интернета:
ip route add default via aa.aa.a1.2 dev ppp0 table 111
ip route add default via 192.168.1.100 dev br0 table 112
ip rule add table 110 prio 1
ip rule add fwmark 1 table 111
ip rule add fwmark 2 table 112
ip route flush cache
iptables -t mangle -N bind_connect
iptables -t mangle -A bind_connect -i ppp0 -j CONNMARK --set-mark 1
iptables -t mangle -A bind_connect -i br0 -j CONNMARK --set-mark 2
iptables -t mangle -I INPUT -m conntrack --ctstate NEW -j bind_connect
iptables -t mangle -N select_prov
iptables -t mangle -A select_prov -j CONNMARK --set-mark 1
iptables -t mangle -A select_prov -m statistic --mode random --probability 0.5 -j RETURN
iptables -t mangle -A select_prov -j CONNMARK --set-mark 2
iptables -t mangle -N sort_connect
iptables -t mangle -A sort_connect -o lo -j RETURN
iptables -t mangle -A sort_connect -m conntrack --ctstate NEW -j select_prov
iptables -t mangle -A sort_connect -j CONNMARK --restore-mark
iptables -t mangle -I OUTPUT -j sort_connect
естественно не работает, после манипуляций с маршрутами что-то начинает работать т.е. через броузер начинаем загружать канал (скачиваем с народа благо там нет ограничения по скорости) имеем на выходе сумму двух каналов, скачка закончилась и все больше схема не работает.
В данной методике есть ошибка с маршрутами, ни как не могу ее исправить.
Первое с чем столкнулся, на данном устройстве добавить новый vlan не получилось, верней он создается но конкретно закрепить за каким либо LAN портом не получается, все настройки через nvram (vlan0 и vlan1) не помогали, так как данные порты все равно продолжали работать в своих первоначальных настройках, даже пробовал делать перевод WAN на LAN порт, то все оставалась по прежнему, вывод данный механизм настройки на данном устройстве не поддерживается.
Второе первый канал интернета настраивается без проблем на pptp, все работает.
Третье пытаюсь добавить второй канал интернета через подключение по LAN порту ADSL модема в режиме роутера т.е. получается схема по интерфейсам на DIR300/NRU:
-ppp0 первый канал интернета сеть aa.aa.a1.2 шлюз aa.aa.a1.1 маска 255.255.255.255
-vlan2 локальная сеть провайдера сеть aa.aa.a2.2 маска 255.255.255.0
-br0 локальная сеть "домашняя" сеть 192.168.1.1 маска 255.255.255.0
route
aa.aa.a1.2 * 255.255.255.255 UH 0 0 0 ppp0
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
aa.aa.a2.0 * 255.255.255.0 U 0 0 0 vlan2
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default aa.aa.a1.2 0.0.0.0 UG 0 0 0 ppp0
ip rule list
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
ip route list table local
ip route list table main
ip link list
...
5: eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
7: vlan1@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
8: vlan2@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
9: br0: <BROADCAST,MULTICAST,PROMISC,UP,10000> mtu 1500 qdisc htb
link/ether
10: ra0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
...
28: ppp0: <POINTOPOINT,MULTICAST,UP,10000> mtu 1436 qdisc pfifo_fast
link/ppp
31: imq0: <NOARP> mtu 1500 qdisc noop
link/void
32: imq1: <NOARP> mtu 1500 qdisc noop
link/void
ip addr show
1: lo: <LOOPBACK,MULTICAST,UP,10000> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
2: teql0: <NOARP> mtu 1500 qdisc noop
link/void
3: tunl0: <NOARP> mtu 1480 qdisc noop
link/ipip 0.0.0.0 brd 0.0.0.0
4: gre0: <NOARP> mtu 1476 qdisc noop
link/gre 0.0.0.0 brd 0.0.0.0
5: eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
7: vlan1@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
8: vlan2@eth2: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc noqueue
link/ether
inet aa.aa.a2.2/24 brd aa.aa.a2.255 scope global vlan2
9: br0: <BROADCAST,MULTICAST,PROMISC,UP,10000> mtu 1500 qdisc htb
link/ether
inet 192.168.1.1/24 brd 192.168.1.255 scope global br0
25: etherip0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop
link/ether
54: ra0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast
link/ether
…
-----------------------
Понятно, что весь трафик по доступу в интернет пойдет через маршрут default, но хотелось бы распределить его по палам между интерфейсом ppp0 и роутером ADSL c IP - 192.168.1.100
естественно при добавлении маршрута по default
route add default gw 192.168.1.100 dev br0
все пакеты сразу идут через второй канал на роутер ADSL не есть хорошо. Пробую разделить трафик, пока без разделения локальный или нет, считаю что весь трафик интернета:
ip route add default via aa.aa.a1.2 dev ppp0 table 111
ip route add default via 192.168.1.100 dev br0 table 112
ip rule add table 110 prio 1
ip rule add fwmark 1 table 111
ip rule add fwmark 2 table 112
ip route flush cache
iptables -t mangle -N bind_connect
iptables -t mangle -A bind_connect -i ppp0 -j CONNMARK --set-mark 1
iptables -t mangle -A bind_connect -i br0 -j CONNMARK --set-mark 2
iptables -t mangle -I INPUT -m conntrack --ctstate NEW -j bind_connect
iptables -t mangle -N select_prov
iptables -t mangle -A select_prov -j CONNMARK --set-mark 1
iptables -t mangle -A select_prov -m statistic --mode random --probability 0.5 -j RETURN
iptables -t mangle -A select_prov -j CONNMARK --set-mark 2
iptables -t mangle -N sort_connect
iptables -t mangle -A sort_connect -o lo -j RETURN
iptables -t mangle -A sort_connect -m conntrack --ctstate NEW -j select_prov
iptables -t mangle -A sort_connect -j CONNMARK --restore-mark
iptables -t mangle -I OUTPUT -j sort_connect
естественно не работает, после манипуляций с маршрутами что-то начинает работать т.е. через броузер начинаем загружать канал (скачиваем с народа благо там нет ограничения по скорости) имеем на выходе сумму двух каналов, скачка закончилась и все больше схема не работает.
В данной методике есть ошибка с маршрутами, ни как не могу ее исправить.
Комментарий