解决openwrt宽带多拨后工行无法使用(指定出口)的问题

宽带多拨后,在负载均衡下,出口ip是变动的,使用安全证书通信的443端口重定向后,可能会出现异常.如工行手机银行登陆会出现登陆超时,网页银行会出现验证码错误.

第一种方法:

搜索了之后,得到一段iptables配置,可以解决此问题.

  1. vi /etc/firewall.user #用户自定义的防火墙规则可以存在/etc/firewall.user文件中,实际就是iptables具体的设置命令。
    2.插入配置脚本并保存
    以下为脚本

    第一个outgoing的包(tcp SYN),打上标记

    iptables -t mangle -A PREROUTING -p tcp –dport 443 -m conntrack –ctstate NEW
    -j MARK –set-mark 0x01

routing decision时,会选择与0x01标记对应的那条路由。

然后,我们把这个包上的标记(0x01)转存到与之对应的连接上。–save-mark功能就在于此。

iptables -t mangle -A POSTROUTING -m conntrack –ctstate NEW -j CONNMARK –save-mark

这条连接后续的包,都用–restore-mark命令,把连接上的标记(上一条命令保存的)

再打到每个单一数据包上。

iptables -t mangle -A PREROUTING -i br-lan -m conntrack –ctstate ESTABLISHED,RELATED
-j CONNMARK –restore-mark

至此,所有(目的端口为443的outgoing包)对应连接上的每一个数据包都打上了0x01标记,

可以被正确地路由。

3.重启防火墙:/etc/init.d/firewall restart #重启防火墙.

第二种方法:

我是用MWAN做的负载均衡,可以在web luci界面进行配置,当然也可以直接编辑配置文件,但是容易出错很繁琐.

1.负载均衡->配置->策略中,添加一条策略.

保存

2.负载均衡->配置->规则中,添加一条规则

保存&应用,使配置生效
这样443端口就只会走一个出口了。

标签: none

添加新评论