主路由ROS+openwrt简单的IP分流方案
简介
自从买了新路由器一直在研究分流的方案,双路由MikroTik自带的ROS系统+H66K卡刷的openwrt简单实现IP分流
ROS:192.168.0.250
openwrt:192.168.0.251
教程
先来创建一条路由,网关这里写openwrt的地址192.168.0.251,routing mark 填写OP
导入IP地址,点击【New Terminal】,复制下方的命令粘贴进行导入
/tool fetch url=http://www.iwik.org/ipcountry/mikrotik/CN
/import file-name=CN
点击【IP】->【Firewall】->【Address Lists】可以看到刚才导入进来的地址条目,点击+号,要把我们的局域网IP段加进来,下面两条地址
防火墙创建规则,点击【IP】 -> 【Firewall】-> 【Mangle】 -> 【+号】 -> chain默认prerouting , src 源地址这里写openwrt的地址
Action默认选择 accept放行所有openwrt的流量
接下来再加一条防火墙规则,点击【IP】->【Firewall】->【Mangle】->【+号】, chain默认prerouting
这里我们把src地址列表下拉选择我们前面设置的【proxy】网段,dst地址列表选择前面导入的CN地址,前面的感叹号一定要勾上
Action动作这里,要选【mark routing】 -> New Routing Mark选择之前加的【OP】
增加后的Mangle标记的顺序如下图这样排列,accept一定要放前面
点击【IP】【dhcp server】-> 把ros的地址做为网关和dhcp服务器
点击【IP】->【 DNS】->【servers】这里填写openwrt的地址
最后使用脚本来控制OP作为旁路由崩溃挂掉的状态下,无痕切换到国内继续工作,点击【Tools】->【Netwatch】 ,配置一个脚本监测旁路由状态
脚本中的number编号别乱写,对应要自身情况根据自己的编号来写
UP脚本,上线后,自动恢复分流规则,并替换DNS,脚本添加进入后,最后一行一定要回车留一行出来
:local dns "192.168.0.251"
/ip dns set servers=$dns
/ip firewall mangle enable number=3
/ip firewall mangle enable number=4
/ip dns cache flush
DOWN脚本,宕机后,自动关闭分流规则,并替换DNS
:local dns "218.104.78.2"
/ip dns set servers=$dns
/ip firewall mangle disable number=3
/ip firewall mangle disable number=4
/ip dns cache flush
定时自动更新国内CN列表的代码
/file remove CN
/tool fetch url=http://www.iwik.org/ipcountry/mikrotik/CN
/import file-name=CN
/ip/firewall/address-list add address=你的内网网段/24 list=CN