在使用Routeros V7 测试版的过程中发现V7相比于V6版在路由配置方便有很大变更,所以这篇文章会以Routeros V7为基础介绍策略路由的配置。
网络基本情况
routeros作为家庭唯一路由,通过pppoe接入互联网,通过wireguard连接香港的routeros。
策略路由目标
1,需要翻墙的内网ip:目的地址是境内ip走pppoe默认路由,目的地址是境外IP走wireguard通过香港routeros进入墙外互联网
2,其他内网ip全部走pppoe默认路由
IP地址分配参考上一篇文章Routeros 配置WireGuard
本地lan的地址是192.168.1.1/24,wg-access地址是10.0.0.1/24,wg-hk的地址是10.0.1.1/30,手机wireguard的地址是10.0.0.2/32,笔记本电脑的地址是10.0.0.3/32
香港wg0地址是10.0.1.2/30
配置步骤
1,使用ipip.net发布在github的大陆ip列表生成境内IP地址列表,并导入routeros
在mac或者linux系统上执行下列命令
curl -s https://raw.githubusercontent.com/17mon/china_ip_list/master/china_ip_list.txt |sed -e 's/^/add address=/g' -e 's/$/ list=CNIP/g'|sed -e $'1i\\\n/ip firewall address-list' -e $'1i\\\nremove [/ip firewall address-list find list=CNIP]' -e $'1i\\\nadd address=10.0.0.0/8 list=CNIP comment=private-network' -e $'1i\\\nadd address=172.16.0.0/12 list=CNIP comment=private-network' -e $'1i\\\nadd address=192.168.0.0/16 list=CNIP comment=private-network'>cnip.rsc
把cnip.rsc上传到routeros,执行
/import cnip.rsc
2,配置分流路由表
Routeros V7取消了通过firewall的mangle里添加路由标记自动添加路由表功能,所有这里需要手动添加路由表,v7.1beta3已恢复此功能
/routing/table/add name="gfw" fib
添加IP分流策略路由
/ip/route/add dst-address=0.0.0.0/0 routing-table="gfw" gateway=10.0.1.2
3,新建需要翻墙的内网地址列表,假定192.168.1.100和192.168.1.200需要翻墙
/ip/firewall/address-list/add list=gfw address=192.168.1.100/32
/ip/firewall/address-list/add list=gfw address=192.168.1.200/32
4,给需要翻墙的内网ip添加标记
/ip/firewall/mangle/add chain=prerouting action=mark-routing new-routing-mark=gfw passthrough=yes dst-address-type=!local src-address-list=gfw dst-address-list=!CNIP log=no log-prefix=""
5,配置无污染DNS服务器
参考使用dnsmasq基于大陆域名白名单分流解析域名和使用overture替换dnsmasq做域名分流解析
6,测试目的IP分流
在192.168.1.100上执行traceroute命令
traceroute 8.8.4.4
192.168.1.100--->192.168.1.1--->10.0.1.2--->香港服务器公网路由--->8.8.4.4
traceroute 114.114.114.114
192.168.1.100--->192.168.1.1--->PPPoE公网路由---->114.114.114.114
能不能做个详细的linux服务器open vpn…routeros.内网设备通过ros翻墙的详细设置教程!包括open vpn在linux服务器上的配置,同时支持ip和域名。客户端ros7.6 如何设置?…规则设置国内走国内,国外走国外或者指定的域名或者ip走vpn?对服务器有什么要求,现在国外的服务器ping值200/300多,能连接上打不开网页!