在Openwrt中创建一个基于所有国内IP地址段的IPset,可用以结合MWAN3等插件实现基于目的IP的流量分流。
国内IP网段数据源:https://www.ipdeny.com/ipblocks/data/countries/cn.zone 权威好用,一共有8700多个网段。
在Openwrt路由器上执行:
wget -O- http://www.ipdeny.com/ipblocks/data/countries/cn.zone > ./chinaip.txt
ipset -N chnroute hash:net
for i in $(cat ./chinaip.txt ); do ipset -A chnroute $i; done
chnroute就是创建好的IPset。
IPset不会自动永久保存,路由器重启后会失效。为了使其持久化,可采用如下方法:
在/etc/sysupgrade.conf文件内添加一个需要系统保留的目录,比如/ipset/,该目录里的内容不会因为系统升级而丢失。
将IPset文件chnroute保存至/ipset/目录下。
在/etc/rc.local文件中添加一行命令 ipset restore < /ipset/chnroute.ipset 该命令会在每次系统重启后自动执行来恢复IPset。