clash 网关模式能自动代理局域网内所有流量?

2021-04-07 11:30:16 +08:00
 yugiwu

用 clash for win 设置网关模式后,依旧要去每个客户端设置代理,有没有什么方法可以让局域网内所有的流量都走 clash 这个虚拟网关呢?

难道用 openwrt 的 openclasn 会有这种功能? 就是感觉试起来要花点时间,有没有玩过的朋友分享一下经验呢?

40817 次点击
所在节点    宽带症候群
38 条回复
94felipe
2021-04-07 15:27:33 +08:00
试试在路由器的 DHCP 里设置网关指向 clash,然后手动设置 clash 宿主机的网关指向主路由
SenLief
2021-04-08 07:53:58 +08:00
你这意思应该是旁路由模式吧。旁路由是主路由的网关指向旁路由,然后由旁路由来处理流量。坏处也很明显就是主路由无法分流,一旦旁路由故障会影响所有的设备连不上网。
clash 的代理允许局域网链接后应该可以代理吧。
yugiwu
2021-04-08 09:25:13 +08:00
@SenLief
其实我是在油管上看到别人说 clash 可以代理网关(可能我会错意了),起到类似旁路由的作用,所以装了 clash 试试,但试下来结果是只能代理,结果还是要一个 client 一个 client 去设置。
旁路由如你所说,有利弊,我自己也犹犹豫豫一直没搞。
SenLief
2021-04-08 09:48:01 +08:00
@yugiwu clash 做代理网关可以,前提是你必须要要让代理机能给其他机器下发 ip 啊,旁路由模式就是用旁路由机器来强制 dhcp 分配 ip 的,这样网关才能使代理机。
tankren
2021-04-08 10:46:37 +08:00
@gstqc #5 wpad 只能代理网页吧
shikkoku
2021-04-08 12:40:38 +08:00
CFW 从未说过能作为网关代理局域网全部流量吧。
tia
2021-04-08 13:16:30 +08:00
你的自动代理差不多指的是透明代理这个意思,透明代理的话需要在网关上布设 clash,然后局域网下的所有客户端因为网关获取的是 clash 机,所以做到了“自动代理”。
nameuser
2021-04-08 14:21:00 +08:00
最近也在弄这个,clash 设置成功。
最后在虚拟机里面装了一个 openwrt,用作路由器的网关。
nameuser
2021-04-08 14:21:31 +08:00
@nameuser 说错。

最近也在弄这个,clash 没设置成功。
最后在虚拟机里面装了一个 openwrt,用作路由器的网关。
imldy
2021-04-08 17:20:28 +08:00
如果让运行“clash”的设备 A 作为网关来实现透明代理,需要修改设备 A 的防火墙进行流量转发(例如 Linux 下的 iptables,将作为网关接收到的流量转发到 clash ),感觉对设备 A 的系统的影响还是比较大的。不如开 Linux 虚拟机进行相关设置,把虚拟机当作网关。
Linux 虚拟机可以按照这些教程进行设置 aHR0cHM6Ly94dGxzLmdpdGh1Yi5pby9kb2N1bWVudHMvbGV2ZWwtMi8=,也可以直接虚拟机安装 openwrt 。

但是旁路由网关模式对 IPv6 不太友好,因为(下面都是原因):
简单说:一般路由器对 IPv6 支持太差。
详细说:IPv6 的网关很难被修改(无论是在主路由器上修改下发的网关 IP,还是在各个设备上修改 IPv6 网关),如果改不了 IPv6 的网关,那软件走 IPv6 的时候还是无法被代理,经常遇到有的软件无法走梯子……只能多次重试让软件走 IPv4 。
彻底解决办法就是关闭 IPv6,或者不让 DNS 服务器返回 IPv6 地址……
前者(关闭 IPv6):一个无法修改 IPv6 网关的设备,那一般也就不能关闭 IPv6(举例:安卓。iPhone 没用过),只能关闭整 个局域网的 IPv6,放弃 IPv6 。
后者(不让 DNS 服务器返回 IPv6 地址):那就得修改 DNS 地址。修改主路由器下发的,或者修改各个设备上的,如果主路由器下发的 DNS 地址是主路由自己,那还得修改主路由的 DNS 解析方案,有的路由器用的还是 dnsmasq(这个软件貌似没办法不返回 IPv6 地址)。一样很难。最后只能放弃 IPv6……

省心就用普通的 http 或者 socks 接管流量,或者上软路由。
imldy
2021-04-08 17:24:28 +08:00
甚至说梯子软件对 IPv6 的支持都不太好,再加上鸡场的服务器都很少有 IPv6 。所以用了梯子软件,就基本相当于放弃 IPv6 了。
liioiil
2021-05-16 10:27:34 +08:00
@yugiwu 你解决了吗
AndyAO
2021-12-05 08:26:09 +08:00
倒是还有个比较复杂的方法,就是同时开启 CFW 和 OpenWrt 两个虚拟机,把 OpenWrt 的代理转接到 CFW 上面,然后用 OpenWrt 当做网关,由于都是在机器内部进行通信,效率应该不会太低。

这样就是整个网络的结构会稍微复杂点,别的倒是没什么坏处,之后如果想弄更稳定的科学上网的话,这是个纯软件的实现策略。
tony1016
2022-07-30 09:15:38 +08:00
masqerade 或者 iptables redir ,总要做一个才能实现啊
jayliucn
2022-10-06 01:57:39 +08:00
@gstqc 用 Clash 设备来做网关模式下其他设备流量是走全局代理还是规则判定呀,担心如果是全局代理机场流量不够用...
0ZXYDDu796nVCFxq
2022-10-06 12:14:55 +08:00
@jayliucn clash 可以设置全局走或者按规则走
但这样对性能影响挺明显的

最佳的方式是在网关用 ipset+透明代理
ipset 根据域名把域名的 IP 打上标签,然后这些 IP 段走透明代理出去
这样不需要翻墙的域名和 IP 段,完全不需要额外处理,不影响性能
standin000
2022-12-07 21:07:14 +08:00
尝试 Clash for Windows 的 TAP 模式,可以让所有流量都走代理
MeteorVIP
2023-10-01 15:22:57 +08:00
win 可以做透明网关.
1 安装 sstap
2 随便一个代理软件,比如 clash for win
3 在 clash for win 设置 socks5,在 sstap 里添加这个 socks5
4 执行语句 netsh interface ipv4 set interface XXX forwarding=enabled 其中 XXX 是根据你电脑网卡设置.我的是 4
其中 2 和 3 是为了让 sstap 能代理,所以省略 2 和 3 步骤,直接给 sstap 添加 ssr 代理也是可以的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/768647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX