V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
tediorelee
V2EX  ›  宽带症候群

关于 clash 透明代理的一些问题

  •  
  •   tediorelee · 2020-07-21 15:14:46 +08:00 · 13981 次点击
    这是一个创建于 494 天前的主题,其中的信息可能已经有所发展或是发生改变。

    闲来无聊搞了一个小服务器(ip 为 192.168.1.101)跑 clash 透明代理,按照教程设置好了 iptables 规则,也确认了配置文件没有错误

    在 ios 上,给 wifi 网络指定网关为 clash 服务器地址,dns 为 clash 的 198.19.0.1/2,都是可以正常上网的

    同理也给台式 PC 设置了固定 ip,网关也为 clash 服务器,dns 为 clash 的 198.19.0.1/2,也可以正常代理上网

    最后我想给路由器指定网关的话,所有设备就都能够走代理了,到这里就出错了,我给路由器的网关设置为 clash 的 192.168.1.101 ,还有同上的 dns 配置,整个经过路由器的设备都不能上网了

    TIM 图片 20200721150818.jpg

    想请教下各位大佬这是什么原因导致的?

    其他一些能想到的细节:

    • 网络拓扑大概是光猫-路由器-各类上网设备(包含 clash 透明代理服务器)
    • 拨号是用的光猫拨号,从装网到现在一直没有改过
    • 在路由器上改了网关配置之后,nslookup 的 dns 服务器地址显示的是 192.168.1.1 天翼光猫

    一些图片:

    TIM 图片 20200721151208.jpg TIM 图片 20200721151220.png TIM 图片 20200721151215.png

    39 条回复    2021-05-18 18:31:34 +08:00
    huaes
        1
    huaes   2020-07-21 15:45:21 +08:00
    你把 DNS 服务器去了试试
    ronman
        2
    ronman   2020-07-21 15:50:04 +08:00 via Android
    不推荐用 clash 做透明代理,网页代理没问,有些软件会出问题
    misaka19000
        3
    misaka19000   2020-07-21 15:55:26 +08:00
    路由器的网关不设置为光猫的话是不是数据就无法发送到光猫了?
    Hyseen
        4
    Hyseen   2020-07-21 16:09:41 +08:00
    路由器不需要修改自己的网关配置,只需要修改 DHCP 下发的网关和 DNS 配置就行。
    banricho
        5
    banricho   2020-07-21 16:14:01 +08:00
    不推荐用 iptables 的方式实现透明代理
    建议用 tun 模式,包括智能家居等,各类设备均无任何问题
    记得路由器的 ipv6
    banricho
        6
    banricho   2020-07-21 16:14:12 +08:00
    @banricho 记得关闭 ipv6
    jfdnet
        7
    jfdnet   2020-07-21 16:23:19 +08:00
    你截图里面 网关里面 填的是 192.168.1.1 按照你说的应该是 192.168.1.101. 自己填错了吧。

    另外,按照你的描述,光猫不仅拨号还是作为路由器使用的;自己的路由器关闭了 DHCP 对吧; clash 的服务器起到一个旁路由的功能。

    这样说实在效率太低。最好还是光猫改桥接,路由器上直接装 clash 或者 openclash (推荐),这样只有一层 NAT,不容易有问题。
    tvirus
        8
    tvirus   2020-07-21 16:51:01 +08:00
    我在局域网的设备上运行 clash,在其他设备上只要将网关和 dns 设置成 clash 所在设备的 ip 就可以了。
    这是我现在用的 iptables 的规则。
    iptables -t nat -N clash
    iptables -t nat -A clash -d 192.168.0.0/16 -j RETURN
    iptables -t nat -A clash -p tcp -j RETURN -m mark --mark 0xff
    iptables -t nat -A clash -p tcp -j REDIRECT --to-ports 7892
    iptables -t nat -A PREROUTING -p tcp -j clash
    tediorelee
        9
    tediorelee   2020-07-21 16:56:35 +08:00 via iPhone
    @huaes 试过只改网关,一样的
    tediorelee
        10
    tediorelee   2020-07-21 16:56:49 +08:00 via iPhone
    @misaka19000 。。好像也是这个道理
    tediorelee
        11
    tediorelee   2020-07-21 16:57:14 +08:00 via iPhone
    @Hyseen 那我这里的话应该是改光猫的了?
    tediorelee
        12
    tediorelee   2020-07-21 16:57:40 +08:00 via iPhone
    @banricho 有想关 tun 模式的文档吗,晚上回去试试
    tediorelee
        13
    tediorelee   2020-07-21 16:58:41 +08:00 via iPhone
    @jfdnet 我只是截图截得是没改之前的地址,主要是路由器我觉得性能太差了,跑 clash 可能有点吃力
    Hyseen
        14
    Hyseen   2020-07-21 17:02:17 +08:00
    @tediorelee #11 改路由器的 DHCP 配置啊
    tediorelee
        15
    tediorelee   2020-07-21 17:08:11 +08:00 via iPhone
    @Hyseen 晚上回家看看,我记得上次看的时候光猫只有关闭 dhcp 选项,好像不能指定网关
    tediorelee
        16
    tediorelee   2020-07-21 17:09:30 +08:00 via iPhone
    @jfdnet 就是打算周末给电信打电话改桥接
    banricho
        17
    banricho   2020-07-21 17:24:22 +08:00
    @tediorelee
    官方文档就有,有些防火墙对 FullCone NAT 支持不好,用 tun 模式可以规避这个问题
    tediorelee
        18
    tediorelee   2020-07-21 18:29:29 +08:00 via iPhone
    @banricho 好的了解了,回去试试看
    noahzh
        19
    noahzh   2020-07-21 18:55:43 +08:00
    clash 只适合给笔记本用,旁路由老老实实用 ssr plus 这种,clash fakeip 会有些问题,而且这种规则判定很容易漏了.
    Jevan
        20
    Jevan   2020-07-21 19:01:46 +08:00   ❤️ 1
    @tediorelee 光猫和路由器都不需要动本身的设置,只需要更改路由器 DHCP 下发的网关就行了,路由器不用更改本身的网关。
    流量就是 手机等客户端----路由器的 clash------路由器-------光猫
    具体设置界面截图给你。
    tediorelee
        21
    tediorelee   2020-07-21 19:01:52 +08:00
    @noahzh 哎主要是想用规则代理
    tediorelee
        22
    tediorelee   2020-07-21 19:04:14 +08:00
    @Jevan 意思就是说我只需要在路由器上指定网关为 clash 那个服务器地址就行了吗
    Jevan
        23
    Jevan   2020-07-21 19:29:22 +08:00
    @tediorelee #22 是的,在 DHCP 里这么指定网关就可以了。
    jfdnet
        24
    jfdnet   2020-07-21 21:47:57 +08:00
    @tediorelee wrt1900 跑 openclash 能跑满带宽 家里十几台设备用没什么问题。
    moln
        25
    moln   2020-07-21 23:54:26 +08:00
    3 楼和 20 楼正确。你路由的网关实际上是 wan 口的地址,改掉之后所有数据你都发不到互联网了。按 20 楼的方法操作就行了,不过有些路由器的 dhcp 默认自己是网关不能修改。
    yov123456
        26
    yov123456   2020-07-22 09:30:01 +08:00
    @tvirus 你的 iptable 不完全 没有加上 udp 的 tproxy 规则…
    DopaminePlz
        27
    DopaminePlz   2020-07-23 09:53:15 +08:00 via Android
    搭车同问:我用了 clash 做旁路由,可是旁路由本身无法科学上网,不知道有没有办法?
    madbigg
        28
    madbigg   2020-08-10 23:05:00 +08:00
    我也是路由用了 clash,但是手机访问国内和国外都很慢,不确定是透明代理还是 chiandns 的关系。
    renzhezhu
        29
    renzhezhu   293 天前
    @madbigg 现在解决 了 吗
    liioiil
        30
    liioiil   195 天前
    @Jevan
    liioiil
        31
    liioiil   195 天前
    @Jevan 大佬,这个网关应该怎么填?填魔法上网那台电脑的局域网 IP 地址吗?
    Jevan
        32
    Jevan   195 天前
    @liioiil #31 是的,填 clash 做透明代理的那台机器的 IP 。看我上面的截图。
    liioiil
        33
    liioiil   195 天前
    @Jevan 无法上网啊
    liioiil
        34
    liioiil   195 天前
    198.18.0.2 是这个地址吗?还是 192.168.2.1xx?
    Jevan
        35
    Jevan   195 天前
    @liioiil #34 每个人的都不一样,看自己的路由器的设置。clash 大概允许局域网,Allow LAN 。
    liioiil
        36
    liioiil   195 天前
    @Jevan 反复试过很多遍了,按你说的设置,要不整个局域网断网,要不能联网但是无法出墙
    liioiil
        37
    liioiil   194 天前
    楼主解决了吗?如何操作的,能否指点下?
    tediorelee
        38
    tediorelee   194 天前 via iPhone
    @liioiil 我现在是旁路由模式跑的了
    liioiil
        39
    liioiil   192 天前
    @tediorelee 解决不了吗?
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2387 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 09:00 · PVG 17:00 · LAX 01:00 · JFK 04:00
    ♥ Do have faith in what you're doing.