最近更新了一下新的固件,发现这个脚本在tomato_dual_1.23.0481不能使用,仅在tomato_dual_1.23.0341下成功.3 ]: a7 ?: v1 U! ?( q9 U0 l
希望高手能在此基础上修改,使其支持最新版本的tomato_dual_1.23.0481.
% T1 C9 Y4 T0 G0 F9 w7 F d- X0 m- f% U5 q3 D' g2 N1 l
将下面的代码复制到脚本设置里的当WAN联机里.自己修改宽带用户名和宽带密码,下面是5个拨号连接的方法.
# K! w4 A+ y7 i/ u& @% F6 i6 g( G9 |+ B7 J; L
#!/bin/sh
B2 |, q: V& x0 k4 O& W#好多人说无限次数拨号,就这样改一下拨号的代码了,记住,web配置里的wan1口要正确配置,wan2口关闭。
' B1 i& M p6 X5 @#仅在tomato_dual_1.23.0341下成功.
( i% R% T7 s& }% Mpppoecd vlan1 -u 宽带用户名 -p 宽带密码 -i 0 -I 5 -T 300 -N 3 -k/ j9 j* _1 e& Q4 d- k1 J4 N; H
pppoecd vlan1 -u 宽带用户名 -p 宽带密码 -i 0 -I 5 -T 300 -N 3 -k
/ h8 a& m# R3 bpppoecd vlan1 -u 宽带用户名 -p 宽带密码 -i 0 -I 5 -T 300 -N 3 -k* |$ R6 b( k1 O
pppoecd vlan1 -u 宽带用户名 -p 宽带密码 -i 0 -I 5 -T 300 -N 3 -k1 q" n/ t# G% P2 O9 H7 [
#拨号结束1 X, x" F# P2 D: \
#获取ip和网关
; M: r F6 }( R* @2 X! Bwan1_ip=$(ifconfig ppp0 | grep "inet addr" | cut -d":" -f2 | cut -d" " -f1)
- a3 Q9 [: D9 G7 D D. c. j8 u' D6 fwan1_gw=$(ifconfig ppp0 | grep "inet addr" | cut -d":" -f3 | cut -d" " -f1)$ y1 o: k3 n+ ^
wan2_ip=$(ifconfig ppp1 | grep "inet addr" | cut -d":" -f2 | cut -d" " -f1)
( _0 ]0 B8 y$ B7 p, Ywan2_gw=$(ifconfig ppp1 | grep "inet addr" | cut -d":" -f3 | cut -d" " -f1)+ F Q4 c, h- s! G* R/ p
wan3_ip=$(ifconfig ppp2 | grep "inet addr" | cut -d":" -f2 | cut -d" " -f1)4 A6 e! C' h# s% c+ f1 p5 C
wan3_gw=$(ifconfig ppp2 | grep "inet addr" | cut -d":" -f3 | cut -d" " -f1)
- X+ W% S G. Uwan4_ip=$(ifconfig ppp3 | grep "inet addr" | cut -d":" -f2 | cut -d" " -f1)1 f( W$ O+ n8 V& b8 o; j' u6 \
wan4_gw=$(ifconfig ppp3 | grep "inet addr" | cut -d":" -f3 | cut -d" " -f1)3 `4 `3 C7 \; A9 R0 b
wan5_ip=$(ifconfig ppp4 | grep "inet addr" | cut -d":" -f2 | cut -d" " -f1)
# u9 r5 \4 s8 xwan5_gw=$(ifconfig ppp4 | grep "inet addr" | cut -d":" -f3 | cut -d" " -f1)$ d, G. W6 w \2 Q M' P' G9 V
#添加规则
. T+ y7 G+ c) Z2 L5 F9 Lip rule flush
" d" d) n; g; c1 H" l) Q! J6 F. Hip rule add lookup main prio 32766% [6 z0 {. }, x$ P( J; @
ip rule add lookup default prio 32767, }7 |( B# B$ f
ip rule add from $wan1_ip table 50 prio 50 ( s% C- V. ?6 L
ip rule add fwmark 0x100 table 50 prio 51
8 K; L# _, K1 h2 vip rule add from $wan2_ip table 100 prio 100
2 r6 X( B1 V/ S: D( z: ~) _ip rule add fwmark 0x200 table 100 prio 101 ?0 K- p/ q* q" {
ip rule add from $wan3_ip table 150 prio 150
1 X: `5 B i1 R+ S+ uip rule add fwmark 0x300 table 150 prio 151
/ o- B4 j0 Y7 ] |2 e# g5 y" E+ eip rule add from $wan4_ip table 200 prio 200 9 s; K: d$ @# `+ C$ K' z4 G
ip rule add fwmark 0x400 table 200 prio 201
) _, w* M- c# h# zip rule add from $wan5_ip table 250 prio 250
7 ]5 i2 {5 p% p3 A" _, Uip rule add fwmark 0x500 table 250 prio 251
& N7 N6 u& p5 }8 G1 P' E3 r' z* d) m- j* U1 V
ip route flush table 50
. H. F/ w: F# [9 A, U) Mip route flush table 100 z4 s* f6 k; R7 C
ip route flush table 150 / v( }) d/ o1 T, N
ip route flush table 200
2 k; v4 P3 E9 F8 j* ~' Q* Yip route flush table 250 * D* ?' v* j5 F, p+ Z& j
for TABLE in 50 100 150 200 250
: S Y U w2 g6 a( Q2 h0 odo
2 X' h! V, v5 u/ i0 W2 U( t5 i ip route | grep link | while read ROUTE . ~1 T7 U7 \- Y, Q8 P5 t
do 9 G& x2 D' `$ }1 A
ip route add table $TABLE to $ROUTE
* \: j6 z( |" X done 6 R* Y- q6 g& n$ H% a0 U( _$ H
done
a+ Q) v: G, t& }$ M! R+ cip route add table 50 default via $wan1_gw dev ppp0 src $wan1_ip4 Q5 m0 N8 n" ^2 F1 O
ip route add table 100 default via $wan2_gw dev ppp1 src $wan2_ip* Z8 d6 \- m& f! Y
ip route add table 150 default via $wan3_gw dev ppp2 src $wan3_ip
. u# C: K$ y5 y! O2 e' x& `: G X* Eip route add table 200 default via $wan4_gw dev ppp3 src $wan4_ip
8 o! Q" K- k; q s; U: Rip route add table 250 default via $wan5_gw dev ppp4 src $wan5_ip" c0 ]8 F u1 X
ip route delete default. v' `. ?4 @1 x1 i7 _6 e
#带宽负载均衡
0 F. H: L' h F7 c9 B: qip route add default scope global equalize nexthop via $wan1_gw dev ppp0 weight 1 nexthop via $wan2_gw dev ppp1 weight 1 nexthop via $wan3_gw dev ppp2 weight 1 nexthop via $wan4_gw dev ppp3 weight 1 nexthop via $wan5_gw dev ppp4 weight 1 |