开启左侧

wr850G 双WAN口上网+自动挂载硬盘『 光猫&路由器技术交流区 』 :

[复制链接]
发表于 2012-1-17 08:42:05 | 显示全部楼层 |阅读模式
http://www.right.com.cn/forum/viewthread.php?tid=15662&highlight=WAN

恩山的连接,有人证实下麽???
我不敢试...弄坏了自己没那个技术修复...


各位兄弟:今天实在是太忙了,没顾上发(连偶的GP都没时间炒)。
明天上午贴不沉,我把配置方法贴到这个贴里,只能是静态IP ,据说DHCP分配也可以,但我这是静态IP 所以没试。
我用的效果是这样的,教育网中有些站点是不允许外网访问的,我用这种双WAN配置可以访问了,查了一下:访问教育网自动切换为教育网IP,访问公网时使用的是电信IP,不过负载均衡的问题我没测试过,下载软件时如果是多线程的话我发现EDU.CN速度也非常快。
先发个我本上有的自动挂载硬盘的文件,可以自动挂载所有硬盘的分区。
,希望能帮上刷DD带USB又不会挂载的XD。

以下操作只在MOTO850G上实验有效。顶顶更健康!

用以下命令改双WAN
  1. nvram set vlan0ports="0 1 2 5*"
  2. nvram set vlan1ports="4 5"
  3. nvram set vlan2ports="3 5"
  4. nvram set vlan2hwname=et0
  5. nvram commit
  6. reboot
复制代码

#X.X.X.X是IP1,Y.Y.Y.Y是IP2,在管理——诊断里输入以下代码:
  1. #!/bin/ash
  2. IF0=br0
  3. IF1=vlan1
  4. IF2=vlan2
  5. P0_NET=192.168.1.0/24
  6. P1_NET=X.X.X.0/24
  7. P2_NET=Y.Y.Y.0/24
  8. IP1=X.X.X.X
  9. IP2=Y.Y.Y.Y
  10. P1=IP1的网关
  11. P2=IP2的网关
  12. PATH="/sbin:/usr/sbin:/bin:/usr/bin:${PATH}"
  13. ifconfig vlan2 Y.Y.Y.Y netmask 255.255.254.0 broadcast Y.Y.Y.255 up
  14. ip route delete default
  15. ip route add $P1_NET dev $IF1 src $IP1 table 10
  16. ip route add default via $P1 table 10
  17. ip route add $P2_NET dev $IF2 src $IP2 table 20
  18. ip route add default via $P2 table 20
  19. ip route add $P1_NET dev $IF1 src $IP1
  20. ip route add $P2_NET dev $IF2 src $IP2
  21. ip rule add from $IP1 table 10
  22. ip rule add from $IP2 table 20
  23. ip route add $P0_NET dev $IF0 table 10
  24. ip route add $P2_NET dev $IF2 table 10
  25. ip route add 127.0.0.0/8 dev lo table 10
  26. ip route add $P0_NET dev $IF0 table 20
  27. ip route add $P1_NET dev $IF1 table 20
  28. ip route add 127.0.0.0/8 dev lo table 20
  29. ip route add default scope global nexthop via $P1 dev $IF1 nexthop via $P2 dev $IF2
  30. echo "0"> /proc/sys/net/ipv4/conf/vlan1/rp_filter
  31. echo "0"> /proc/sys/net/ipv4/conf/vlan2/rp_filter
复制代码

以上保存为启动命令

再输入以下代码:
  1. IPTABLES="/usr/sbin/iptables"
  2. iptables -I INPUT -i vlan2 -p icmp -j ACCEPT
  3. NET_INT_INT=br0
  4. NET_INT_IP=192.168.1.1
  5. NET_INT_SUB=24
  6. NET_INT_NET=192.168.1.0
  7. NET_EXT_INT1=vlan1
  8. NET_EXT_IP1=x.x.x.x
  9. NET_EXT_GW1=IP1网关
  10. NET_EXT_INT2=vlan2
  11. NET_EXT_IP2=y.y.y.y
  12. NET_EXT_GW2=IP2网关
  13. ip route add default scope global nexthop via ${NET_EXT_GW1} dev ${NET_EXT_INT1} nexthop via ${NET_EXT_GW2} dev ${NET_EXT_INT2}
  14. $IPTABLES -F POSTROUTING -t nat
  15. $IPTABLES -t mangle -N ETH1
  16. $IPTABLES -t mangle -F ETH1
  17. $IPTABLES -t mangle -A ETH1 -p tcp -j LOG --log-prefix " MANGLE_TCP_ETH1 "
  18. $IPTABLES -t mangle -A ETH1 -p icmp -j LOG --log-prefix " MANGLE_ICMP_ETH1 "
  19. $IPTABLES -t mangle -A ETH1 -j MARK --set-mark 1
  20. $IPTABLES -t mangle -N ETH2
  21. $IPTABLES -t mangle -F ETH2
  22. $IPTABLES -t mangle -A ETH2 -p tcp -j LOG --log-prefix " MANGLE_TCP_ETH2 "
  23. $IPTABLES -t mangle -A ETH2 -p icmp -j LOG --log-prefix " MANGLE_ICMP_ETH2 "
  24. $IPTABLES -t mangle -A ETH2 -j MARK --set-mark 2
  25. $IPTABLES -t nat -N SPOOF_ETH1
  26. $IPTABLES -t nat -F SPOOF_ETH1
  27. $IPTABLES -t nat -A SPOOF_ETH1 -j LOG --log-prefix " SPOOF_ETH1 "
  28. $IPTABLES -t nat -A SPOOF_ETH1 -j SNAT --to ${NET_EXT_IP1}
  29. $IPTABLES -t nat -N SPOOF_ETH2
  30. $IPTABLES -t nat -F SPOOF_ETH2
  31. $IPTABLES -t nat -A SPOOF_ETH2 -j LOG --log-prefix " SPOOF_ETH2 "
  32. $IPTABLES -t nat -A SPOOF_ETH2 -j SNAT --to ${NET_EXT_IP2}
  33. $IPTABLES -A INPUT -p icmp -s ${NET_INT_NET}/${NET_INT_SUB} -d ${NET_INT_IP} -j ACCEPT
  34. $IPTABLES -t mangle -A OUTPUT -o ! ${NET_INT_INT} -m random --average 50 -j ETH1
  35. $IPTABLES -t mangle -A PREROUTING -i ${NET_INT_INT} -m random --average 50 -j ETH1
  36. $IPTABLES -t mangle -A OUTPUT -o ! ${NET_INT_INT} -m random --average 50 -j ETH2
  37. $IPTABLES -t mangle -A PREROUTING -i ${NET_INT_INT} -m random --average 50 -j ETH2
  38. $IPTABLES -t nat -A POSTROUTING -o ${NET_EXT_INT1} -j SPOOF_ETH1
  39. $IPTABLES -t nat -A POSTROUTING -o ${NET_EXT_INT2} -j SPOOF_ETH2
  40. for RULE in $(nvram get forward_spec)
  41. do
  42. FROM=`echo $RULE | cut -d ">" -f 1`
  43. TO=`echo $RULE | cut -d ">" -f 2`
  44. STATE=`echo $FROM | cut -d ":" -f 2`
  45. PROTO=`echo $FROM | cut -d ":" -f 3`
  46. SPORT=`echo $FROM | cut -d ":" -f 4`
  47. DEST=`echo $TO | cut -d ":" -f 1`
  48. DPORT=`echo $TO | cut -d ":" -f 2`
  49. if [ "$STATE" = "on" ]; then
  50. if [ "$PROTO" = "both" ]; then
  51. iptables -A PREROUTING -t nat -p udp -d ${NET_EXT_IP1} --dport $SPORT -j DNAT --to $DEST:$DPORT
  52. iptables -A PREROUTING -t nat -p tcp -d ${NET_EXT_IP1} --dport $SPORT -j DNAT --to $DEST:$DPORT
  53. else
  54. iptables -A PREROUTING -t nat -p $PROTO -d ${NET_EXT_IP1} --dport $SPORT -j DNAT --to $DEST:$DPORT
  55. fi
  56. fi
  57. done
  58. #apply range forward rules
  59. for RULE in $(nvram get forward_port)
  60. do
  61. FROM=`echo $RULE | cut -d ">" -f 1`
  62. TO=`echo $RULE | cut -d ">" -f 2`
  63. STATE=`echo $FROM | cut -d ":" -f 2`
  64. PROTO=`echo $FROM | cut -d ":" -f 3`
  65. SPORT=`echo $FROM | cut -d ":" -f 4`
  66. EPORT=`echo $FROM | cut -d ":" -f 5`
  67. #如果你要使用IP2作为默认出口,请把下面的NET_EXT_IP1改为NET_EXT_IP2
  68. if [ "$STATE" = "on" ]; then
  69. if [ "$PROTO" = "both" ]; then
  70. iptables -A PREROUTING -t nat -p udp -d ${NET_EXT_IP1} --dport $SPORT:$EPORT -j DNAT --to $TO
  71. iptables -A PREROUTING -t nat -p tcp -d ${NET_EXT_IP1} --dport $SPORT:$EPORT -j DNAT --to $TO
  72. else
  73. iptables -A PREROUTING -t nat -p $PROTO -d ${NET_EXT_IP1} --dport $SPORT:$EPORT -j DNAT --to $TO
  74. fi
  75. fi
  76. done
  77. echo "0"> /proc/sys/net/ipv4/conf/vlan1/rp_filter
  78. echo "0"> /proc/sys/net/ipv4/conf/vlan2/rp_filter
  79. echo "1"> /proc/sys/net/ipv4/ip_forward
复制代码

以上保存为防火墙命令。

在设置中设置一下使用静态IP,两个出口随意设置一个。
重启后生效,在MOTO850G上是WAN和第一LAN口为双WAN。
平度网:www.pingdu.co 平度论坛:bbs.pingdu.co
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

 
QQ在线咨询
售前咨询热线
0532-88371356
售后服务微信
pingduwangzhan
快速回复 返回顶部 返回列表