clash 网关模式能自动代理局域网内所有流量? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yugiwu
V2EX    宽带症候群

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

  •  
  •   yugiwu 2021-04-07 11:30:16 +08:00 42505 次点击
    这是一个创建于 1653 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    2021-04-08 09:27:33 +08:00
    把 clash for win 作为网关设置到主路由的网关里的方式,尝试了几次都失败了,这条路应该走不通。
    现在看来,在 20210408 时点最新版本的 clash for win 应该只能做到局域网网关代理,也就是说开启该功能,还是需要到各个 client 去设置代理,才能通过 clash for win 上网。
    38 条回复    2023-10-01 15:22:57 +08:00
    yadiman
        1
    yadiman  
       2021-04-07 11:52:38 +08:00 via iPhone
    貌似 openwrt 那个是直接接管所有流量的。所以 cpu 会冒烟,毕竟白名单,黑名单的数据都要处理。效率感人。
    gaopu
        2
    gaopu  
       2021-04-07 11:55:02 +08:00
    路由器里面设置默认网关,改成 clash 所在机器的 IP
    yeqizhang
        3
    yeqizhang  
       2021-04-07 11:55:23 +08:00
    这几天我也在研究 clash,好像是叫透明代理吧... 用 alow LAN 是要一个一个配的
    jakes
        4
    jakes  
       2021-04-07 11:58:42 +08:00 via iPhone   2
    Openclash 是用 iptables 转发了流量的,实质上也是转发给了 clash 。如果会配置 iptables,你也可以转发到本地去。
    0ZXYDDu796nVCFxq
        5
    0ZXYDDu796nVCFxq  
       2021-04-07 12:02:55 +08:00
    有两种方式:
    1. 在 DHCPd 里设置,分配 IP 和网关,把网关指向 win 机器
    2. 同样是 DHCPd,通过 WPAD 协议,同时分配代理服务器,使用 win 做代理
    这种需要 win 机器 24 小时开机,如果可以尽量在 openwrt 上完成所有功能吧

    我通常是 PC 和手机全都安装客户端,不需要网关支持
    一些设备不方便安装客户端比如 Google Home 、电视盒子,自动走网关的透明代理就可以了
    yugiwu
        6
    yugiwu  
    OP
       2021-04-07 12:34:55 +08:00
    @gaopu 在主路由的 DHCP 那里设置网关对吧,试过,结果是局域网整个断网,感觉是不是这个设置造成流量在两个网关间循环了呢。
    yugiwu
        7
    yugiwu  
    OP
       2021-04-07 12:37:23 +08:00
    @yeqizhang 透明代理,另一个设置? clash 里只看到 allow LAN 倒是没看到其他的。难道是写到配置里去的?
    yugiwu
        8
    yugiwu  
    OP
       2021-04-07 12:39:02 +08:00
    @jakes 谢谢,不会可以学可以试的,思路要有走的对就行~~
    breezeFP
        9
    breezeFP  
       2021-04-07 12:43:02 +08:00
    用 Proxifier
    n1dragon
        10
    n1dragon  
       2021-04-07 12:43:12 +08:00
    clash 在 openwrt 上可以使用透明代理,局域网其他设备不需要任何设置,openwrt 的防火墙规则可以将所有流量重定向到 clash,再发出去。
    lostberryzz
        11
    lostberryzz  
       2021-04-07 12:46:16 +08:00
    DHCP 里网关改成 CFW 机器的 IP
    yugiwu
        12
    yugiwu  
    OP
       2021-04-07 12:47:47 +08:00
    @gstqc
    1 这里你说的是设置主路由吧。分配 ip 是说给 win 固定 ip 对吧,然后把再把网关指向 win 。这个我试下来不行,也许我哪里错了。
    2 能说的更具体?主路由要设置啥,或者其他要设置啥,不是太明白你的意思。

    客户端是比较灵活,但是只是应用层面的流量进行管理,即便全局代理,有些 UWP 层面,或者底层流量还是无法翻墙。
    其实也没特别需求,只是想把这块再搞清些。
    yugiwu
        13
    yugiwu  
    OP
       2021-04-07 12:49:13 +08:00
    @n1dragon
    openclash 是看到有这个功能,但是在 clash for win 上好像没有。
    是不是 clash for win 上确实就没呢?真的这样的话,就老老实实去装 openwrt 了。
    yugiwu
        14
    yugiwu  
    OP
       2021-04-07 12:50:27 +08:00
    @breezeFP
    这个容我之后再学习一下了
    yugiwu
        15
    yugiwu  
    OP
       2021-04-07 12:51:05 +08:00
    @lostberryzz
    这个我试下来,整个局域网断网了
    还需要设置其他什么?
    gaopu
        16
    gaopu  
       2021-04-07 13:19:07 +08:00
    @yugiwu
    你看看这个吧。
    我现在是旁路由方式
    lisr
        17
    lisr  
       2021-04-07 13:32:21 +08:00   1
    目前尝试过 win 上的 clash 和 qv2ray,均未成功通过单纯的软件实现透明网关功能,目前看到的解决办法如下:
    1. 使用 hyper-v 安装 openwrt
    2. mac 使用 surge
    3. 路由器上直接用 luci-app-v2ray 和 v2ray-core
    princelai
        18
    princelai  
       2021-04-07 14:24:03 +08:00
    @lisr #17 目前尝试过 linux 上的 qv2ray 和 openwrt 上的 openclash,均成功实现透明代理
    1.linux 下 qv2ray 要配合 cgproxy 使用
    2.openwrt 下默认透明代理,但最好选上劫持本地 DNS
    3.win 下不了解
    yugiwu
        19
    yugiwu  
    OP
       2021-04-07 14:35:07 +08:00
    @gaopu
    谢谢啦~~
    breezeFP
        20
    breezeFP  
       2021-04-07 15:25:04 +08:00
    @yugiwu 不需要学习,配置简单,看看就会了
    94felipe
        21
    94felipe  
       2021-04-07 15:27:33 +08:00 via Android
    试试在路由器的 DHCP 里设置网关指向 clash,然后手动设置 clash 宿主机的网关指向主路由
    SenLief
        22
    SenLief  
       2021-04-08 07:53:58 +08:00 via Android
    你这意思应该是旁路由模式吧。旁路由是主路由的网关指向旁路由,然后由旁路由来处理流量。坏处也很明显就是主路由无法分流,一旦旁路由故障会影响所有的设备连不上网。
    clash 的代理允许局域网链接后应该可以代理吧。
    yugiwu
        23
    yugiwu  
    OP
       2021-04-08 09:25:13 +08:00
    @SenLief
    其实我是在油管上看到别人说 clash 可以代理网关(可能我会错意了),起到类似旁路由的作用,所以装了 clash 试试,但试下来结果是只能代理,结果还是要一个 client 一个 client 去设置。
    旁路由如你所说,有利弊,我自己也犹犹豫豫一直没搞。
    SenLief
        24
    SenLief  
       2021-04-08 09:48:01 +08:00
    @yugiwu clash 做代理网关可以,前提是你必须要要让代理机能给其他机器下发 ip 啊,旁路由模式就是用旁路由机器来强制 dhcp 分配 ip 的,这样网关才能使代理机。
    tankren
        25
    tankren  
       2021-04-08 10:46:37 +08:00
    @gstqc #5 wpad 只能代理网页吧
    shikkoku
        26
    shikkoku  
       2021-04-08 12:40:38 +08:00
    CFW 从未说过能作为网关代理局域网全部流量吧。
    tia
        27
    tia  
       2021-04-08 13:16:30 +08:00
    你的自动代理差不多指的是透明代理这个意思,透明代理的话需要在网关上布设 clash,然后局域网下的所有客户端因为网关获取的是 clash 机,所以做到了“自动代理”。
    nameuser
        28
    nameuser  
       2021-04-08 14:21:00 +08:00   1
    最近也在弄这个,clash 设置成功。
    最后在虚拟机里面装了一个 openwrt,用作路由器的网关。
        29
    nameuser  
       2021-04-08 14:21:31 +08:00
    @nameuser 说错。

    最近也在弄这个,clash 没设置成功。
    最后在虚拟机里面装了一个 openwrt,用作路由器的网关。
    imldy
        30
    imldy  
       2021-04-08 17:20:28 +08:00   1
    如果让运行“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
        31
    imldy  
       2021-04-08 17:24:28 +08:00
    甚至说梯子软件对 IPv6 的支持都不太好,再加上鸡场的服务器都很少有 IPv6 。所以用了梯子软件,就基本相当于放弃 IPv6 了。
    liioiil
        32
    liioiil  
       2021-05-16 10:27:34 +08:00
    @yugiwu 你解决了吗
    AndyAO
        33
    AndyAO  
       2021-12-05 08:26:09 +08:00
    倒是还有个比较复杂的方法,就是同时开启 CFW 和 OpenWrt 两个虚拟机,把 OpenWrt 的代理转接到 CFW 上面,然后用 OpenWrt 当做网关,由于都是在机器内部进行通信,效率应该不会太低。

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

    最佳的方式是在网关用 ipset+透明代理
    ipset 根据域名把域名的 IP 打上标签,然后这些 IP 段走透明代理出去
    这样不需要翻墙的域名和 IP 段,完全不需要额外处理,不影响性能
    standin000
        37
    standin000  
       2022-12-07 21:07:14 +08:00
    尝试 Clash for Windows 的 TAP 模式,可以让所有流量都走代理
    UXha45veSNpWCwZR
        38
    UXha45veSNpWCwZR  
       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 代理也是可以的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1378 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 17:02 PVG 01:02 LAX 10:02 JFK 13:02
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86