vancho 发表于 2022-8-18 17:53

一个RouterOS分流的思路

本帖最后由 vancho 于 2022-8-22 09:10 编辑

首先这个方案很成熟了,我用了快2年了。

他对比之前RouterOS+旁路的方式,不需要导入大量的国内路由表,也不需要做太多操作。

RouterOS在 v6.47加入的FWD功能,可以将指定的域名转发给指定的DNS,然后配合正则表达式,100多行的DNS转发列表,可以应付日常的大部分操作。



然后需要使用clash的tun和fakeip了,fakeip的段是固定的,一般是198.18.0.0/16,所以将指定的域名转发给clash后,返回的是198.18.0.0/16的这段地址,这样做一个路由表就很简单了,只需要将目标地址为198.18.0.0/16的地址转发到跑clash的接口或者地址即可,至于clash看你跑什么位置,可以是虚拟机,N1盒子,树莓派,也可以是国内的nat vps(ros和vps组wg/gre6隧道)或者直接跟我一样,跑在aws。

最后clash的规则可以很简单,也可以进行分流,比如我使用流媒体解锁,所以增加了解锁的规则。



这只是一个思路。openwrt依然很优秀,只要目的能达到,手段无所谓。

blanksign 发表于 2022-8-18 20:30

6得很啊。。。

mhmddb 发表于 2022-8-18 20:31

收藏备用

eubo 发表于 2022-8-19 08:42

其实不需要这么麻烦,直接把需要分流设备的dns制定到clash 上,然后把fakeip 路由段直接写到route 里面指向clash 就可以了,这样ros设备压力最小,还可以通过脚本做到clash下线切换,不影响正常上网。

lluu131 发表于 2022-8-19 09:05

p***hub 瞩目[偷笑]

lyf362345 发表于 2022-8-19 09:13

eubo 发表于 2022-8-19 08:42
其实不需要这么麻烦,直接把需要分流设备的dns制定到clash 上,然后把fakeip 路由段直接写到route 里面指向 ...

这思路也不错

vancho 发表于 2022-8-19 09:18

eubo 发表于 2022-8-19 08:42
其实不需要这么麻烦,直接把需要分流设备的dns制定到clash 上,然后把fakeip 路由段直接写到route 里面指向 ...

这是一个办法,我家所有手机电脑,ipad都需要走这个网络,所以单独设dns,麻烦,如果说硬件开销,可以忽略吧。

Skymm 发表于 2022-8-19 09:37

用这种方式相比Openwrt开open clash插件的优缺点是什么?

ctz556 发表于 2022-8-19 09:39

不错的思路,虽然不一定用得上,因为在大概是你所说的之前的方案上踩过坑,导致国内上网受阻就不太想折腾了(自己的openclash也一直运行在Redir-Host兼容模式),所有仍然把设备网关指向旁路由。但是还是把FWD列表分享一下吧,谢谢!

vancho 发表于 2022-8-19 09:52

Skymm 发表于 2022-8-19 09:37
用这种方式相比Openwrt开open clash插件的优缺点是什么?

我很喜欢openwrt,但是平凡的维护固件,我时间上不允许,所以我选择我擅长的routeros,只要目的能达到,方法只是手段。另外routeros的容器可以支持跑clash,在tun模式下也可以。

vancho 发表于 2022-8-19 09:53

ctz556 发表于 2022-8-19 09:39
不错的思路,虽然不一定用得上,因为在大概是你所说的之前的方案上踩过坑,导致国内上网受阻就不太想折腾了 ...

github上有,我不贴地址了,你搜搜。

豆豆那头熊 发表于 2022-8-22 10:23

vancho 发表于 2022-8-19 09:53
github上有,我不贴地址了,你搜搜。

搜了一圈也没找到,麻烦给个关键字[可爱]

hcym 发表于 2022-12-23 20:06

学习方法和政策
[喜欢]

bsdcpp 发表于 2023-10-19 21:12

eubo 发表于 2022-8-19 08:42
其实不需要这么麻烦,直接把需要分流设备的dns制定到clash 上,然后把fakeip 路由段直接写到route 里面指向 ...

但是你这样每个分配clash的dns的设备,国内外流量都是经过了clash机器,也就是旁路,跟直接配置网关+dns一个道理,只不过一个是策略路由,一个是明着来。

国内走旁路就划不来了

声色茶马 发表于 2023-10-19 21:15

eubo 发表于 2022-8-19 08:42
其实不需要这么麻烦,直接把需要分流设备的dns制定到clash 上,然后把fakeip 路由段直接写到route 里面指向 ...

很有启发。学习了。

normanlu 发表于 2023-10-19 21:23

我觉得还是国内ip地址段分流比较适合我

gdsd 发表于 2023-10-19 23:00

mar;         

Satan023 发表于 2023-10-20 00:15

我还是用esxi单独开了台openwar做旁路来魔法,搞ROS太麻烦了。家里两条宽带,就用ROS弄了个简单的IP分流,打FPS的时候用软件把PC切到电信的线路[可爱]

chainofhonor 发表于 2023-10-20 04:13

怎么获取域名呢,比如steam 我想让steam永远跑在科学上,包括里面的游戏也是

叫我悠扬 发表于 2023-10-20 09:29

mark 一下,不管用得上用不上,学习一下也好。

jimmy1 发表于 2024-11-12 20:26

能分享一下正则表达式么?

Vossk 发表于 2024-11-12 21:10

本帖最后由 Vossk 于 2024-11-12 21:12 编辑

我这边的组合是RB5009 RouterOS + MacMini Surge,方案是这么玩的,也是用了两年多了

光猫桥接,RouterOS是主路由,拨号、DHCP、IPTV IGMP Proxy等。MacMini作为旁路网关和各种服务。在RouterOS的DHCP Server中设置Options和Option Set,创建一个配置,使得分配网关为MacMini、DNS为Surge的FakeIp 198.18.0.2。

这样,在DHCP Leases中就可以指定哪些设备走旁路网关,哪些直接走主路由,默认新获取DHCP IP的设备都是走主路由的。比如我自己的手机、台式机、AppleTV就设置这个DHCP Option Set,家里其他的物联网设备和小孩的iPad就默认走主路由。

现在好像AppleTV跑Surge作为旁路网关比较稳定了,这个方案性价比更高些。


zerm 发表于 2024-11-12 21:56

我也是在5009+surge,稍有点不同,在路由表上设置198.18.0.0/16到mac的ip,在firewall中NAT设置53端口的劫持,把需要出国的放在需要劫持dns的列表上,也就是基于fake ip原理,把电报的ip放在rules里,同时在netwatch设置关闭劫持,这样mac关机就不影响你上网了。
页: [1]
查看完整版本: 一个RouterOS分流的思路