V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GabrielleBellamy
V2EX  ›  Apple

想请教一下网络大佬们, Surge 的 Ponte 在 Apple TV 上内网穿透回家访问 NAS 没成功,是哪里出错了呢?

  •  
  •   GabrielleBellamy · 13 天前 · 1415 次点击

    本人是网络相关的小白。最近因为把 Surge 升级到最新了,于是想尝试一下 Ponte 内网穿透,连接家里的 NAS ,但一点都没成功。我已经把站里大部分与 Surge Ponte 有关的帖子都看了一遍,也照着更改了几遍,但我的设备还是没法正常运行,请大佬支支招~

    情况如下:

    1. 我有一个 Apple TV ,上面运行了 Surge ,设定了 Always On ,因此应该是不会断开的。
    2. 所有设备上都装有 Surge ,都是最新版本。
    3. Apple TV 上打开了 Ponte ,设置的类型为 NAT Traversal 。设置这个类型是因为我用 MacBook Pro 上的 Surge 检测了一下,可以支持 Full Cone NAT ,于是就选择了这个类型。其他类型我也都试过,都没成功。(没有公网 IP ,因此静态端口转发肯定不会成功)名称设置成了 appletv 。
    4. Apple TV 端使用了独立的配置文件,配置文件中不包含 IP-CIDR 到其他设备的规则。
    5. 同时,Apple TV 配置文件的开头,skip 的部分保留了192.168.0.0/16, 而在所有客户端上将这一条删去了。
    6. 在客户端上,设置规则IP-CIDR,192.168.0.185/24,DEVICE:appletv,放在配置文件较后的位置,具体位于 GEOIP,CN,"🎯 全球直连"FINAL,🐟 漏网之鱼的前面,彼此紧接着。192.168.0.185 是我家里网络里 NAS 的地址,这样写应该是没问题的吧?
    7. 接着我配置了各个设备端,然后想测试一下官网手册给出的用例,结果都失败了。其中,连接系统文件共享服务是用 MacBook Pro 作为服务器测试的,当然不出意外也是失败的。报错为“The operation couldn't be completed. Operation not supported”。在测试通过这个 Ponte 访问家中其他设备时,自然也是连不上。
    8. 我发现,当我在家里(服务器端)的网络下时,Ponte 诊断显示一切正常,只是提醒我在同一个网段下的时候 ponte 转发不会被激活。然而当我离开家、换成别的网络的时候,在 Surge 内的 Ponte 似乎也显示异常,诊断结果是“Surge on the remote device may not be turned on. (POSIX:61)”。这样来说其实还是没有成功打通的样子。

    请问各位大佬们,我漏掉了什么步骤吗?或者路由器的什么设置需要我特别配置的?我没有公网 IP ,暂时就不考虑这个类型了(很多教程都是基于公网 IP 的,似乎更顺利一些)。谢谢谢谢🙏

    第 1 条附言  ·  12 天前

    感谢大家的帮助,我已经成功跑通了!上午跑的时候还没成功,我睡个午觉起来,说最后再试一次,这半小时再不行我就再也不试了。结果整整弄了两天都没成的事情,再最后半小时误打误撞搞成了,真是造化弄人啊……

    具体来说是这样的。

    第一,在大家留言的帮助下,我去路由器上打开了各种设置。默认情况下这些都是关闭的,现在我转发了 6208 和 6209 两个端口,ip 地址指向 Apple TV。之后重启了路由器。

    第二,在客户端的配置上,文件头部 skip 的部分,除了删去 192.168.0.0/16,我还删去了 127.0.0.1。但我没有检测这是不是关键的一步,也许不重要。最关键的是,我在规则中间按照大佬们的留言,增加了一个策略组:

    [Proxy Group]
    🏠 回家线路 = select, DEVICE:APPLETV, DIRECT
    

    我发现,如果我测试的时候没有选择走这个线路,而只是依赖规则里零散的 rule,是无法打通的(也许 rule 里面还有相互冲突的部分)。最后尝试的时候,选择了全局模式-回家线路,于是就通了……

    感觉我也不算很聪明,这个点居然一直没有想到……想着只要有 rule 应该就完事大吉了。不过最后终于通了还是非常不错的。通的那一瞬间有点不可置信,感谢各位大佬让我这个网络小白尝到了技术的乐趣!又学习到了新的技能。多谢多谢🙏

    如果以后还有朋友想要打通 ponte,我这篇帖子也许可以作为一个参考。@我也可以,我也会提供力所能及的帮助,感谢🙏

    23 条回复    2025-01-08 20:49:29 +08:00
    tediorelee
        1
    tediorelee  
       13 天前   ❤️ 1
    虽然我现在有公网 IP 了用的静态转发,但是之前一直用的 ponte 的 NAT Traversal 也用的好好的

    看了下 OP 的描述,"skip 的部分保留了 192.168.0.0/16"这里我一般都没有在意过, 默认都包含了这个规则

    "设置规则 IP-CIDR,192.168.0.185/24,DEVICE:appletv"按照你的 NAS 的 ip 地址是 192.168.0.185 的话是不是应该直接给整个网段都配置 ponte 的 DEVICE 规则?类似 IP-CIDR,192.168.0.0/16,DEVICE:appletv
    我的配置是这样 IP-CIDR,192.168.0.0/16,GoHome,no-resolve ,同时 GoHome 这个规则组下:

    [Proxy Group]
    GoHome = select, DEVICE:HOMEMINI, DIRECT

    最后你可以试试看手机流量下,访问 appletv.sgponte 能不能行?这个域名是 surge 内部直接解析到 ponte 设备的
    Koma
        2
    Koma  
       12 天前
    手机上 surge 的工具>远程控制器里应该可以看到 Ponte 设备,用数据流量测试一下能不能连接。
    explorerproxy
        3
    explorerproxy  
       12 天前
    路由器端口转发设置了么
    GabrielleBellamy
        4
    GabrielleBellamy  
    OP
       12 天前
    @Koma 嗯,测试是一换网就出错,但同网没有意义🥹
    GabrielleBellamy
        5
    GabrielleBellamy  
    OP
       12 天前
    @explorerproxy 没有设置诶,因为没有公网 ip ,用静态端口转发会有端口出来,6208 端口。但 nat traversal 的设置里没有端口,该转发哪个端口呢?谢谢🙏
    explorerproxy
        6
    explorerproxy  
       12 天前
    @GabrielleBellamy 比如

    IPv4-tcp, udp
    来自 所有主机 位于 wan
    通过 所有路由 IP 在 端口 6000-7000
    转发到 surge ip, 端口 6208 位于 lan
    msdurex
        7
    msdurex  
       12 天前
    一般的 SD-WAN 可能有 4 个 VPN Tunnels 来保证稳定性,这个 Surge Ponte 用来做 SMB 可能不是很稳定。
    stanasis
        8
    stanasis  
       12 天前 via iPhone
    路由器把 mac ip:6208 转发到外部端口 6208
    Koma
        9
    Koma  
       12 天前
    @GabrielleBellamy nat traversal 默认应该就是 6208 ,我的TV 用静态转发在路由设置把 6208 占了,Mac 的 nat traversal 离开外网就连不上了。
    JMC95
        10
    JMC95  
       12 天前
    主要是需要路由器开 DMZ 或者端口转发

    skip 这个部分先不用管,配置好先用 ponte 在外网环境诊断一下,看看什么情况

    配置放的位置没问题,具体规则是
    IP-CIDR,192.168.0.185/32,DEVICE:appletv
    或者
    IP-CIDR,192.168.0.0/24,DEVICE:appletv
    GabrielleBellamy
        11
    GabrielleBellamy  
    OP
       12 天前
    @explorerproxy #6 @stanasis @JMC95 谢谢🙏我试了试,果然可以在 surge 里通了。就是实际使用还是不通,我再找找原因,可能是不同的设置界面有些不一样。我再试试看~
    @Koma #9 原来如此~
    @msdurex 谢谢🙏
    SakuraYuki
        12
    SakuraYuki  
       12 天前   ❤️ 1
    @GabrielleBellamy http 6208 https 6209
    JMC95
        13
    JMC95  
       12 天前
    @GabrielleBellamy 通了理论上就能转发了,实际使用不行就去看最近请求,规则按照我给你的改了吗?不行的话截图请求日志看看
    GabrielleBellamy
        14
    GabrielleBellamy  
    OP
       12 天前
    @JMC95 已经全部通了~我把过程写在附言里了~谢谢大佬!👍🙏
    SakuraYuki
        15
    SakuraYuki  
       12 天前
    proxy group 这步其实可以省略,只要把相关的 rule 放在 rule list 最前面保证域名不被外部 dns 解析或者 ip 不走 ip-cidr 之类的规则就行了
    GabrielleBellamy
        16
    GabrielleBellamy  
    OP
       11 天前
    @SakuraYuki #15 谢谢~🙏我试过,好像没用。如果把相关 rule 放在前面,surge 会提醒你,IP-CIDR 类型的规则不能放在巴拉巴拉的前面,建议用户移到底部。至于解析的问题,加了 no-resolve 和不加对我似乎没区别,都不通。最后通的是因为全局+proxy group 。也许不同的配置不太一样,我看站里确实有人加了 no-resolve 就好了,但也有像我一样加了也没用的。
    liuleisail
        17
    liuleisail  
       11 天前 via iPhone
    路由 udp 放行
    xpn282
        18
    xpn282  
       10 天前
    个人觉得:
    1 ,如果 Surge 的接管模式是默认的话,那就和 skip 没什么关系,可以无视这个选项。
    2 ,我觉得是你的规则有问题,而不是有无策略组的问题。因为你用全局模式的话,要使用 DEVICE:APPLETV 节点必须要有一个策略组才能指向 DEVICE:APPLETV 。所以你误以为一定要有策略组才行。

    那么问题来了,为什么全局模式才行,为什么规则模式不行?那只能是你的整个规则有问题咯。真正完美的方案是用规则模式,只把回家内网的流量指向 DEVICE:APPLETV ,其他流量不需要先绕回家。
    好好研究一下规则吧,配置最好是自己学会编写,不要用其他人的配置文件。
    GabrielleBellamy
        19
    GabrielleBellamy  
    OP
       10 天前
    @xpn282 谢谢,确实是规则问题比较大。我后来又再加一条规则,特定软件和特定访问的流量走这个策略组,就和只加规则差不多了,不在全局下也能用,但效果上比全局慢。但这确实不是最简洁的版本。我规则确实很多,少说应该也有几千条,是一开始到现在不断累积的,肯定有一些相互冲突部分吧我想。
    xpn282
        20
    xpn282  
       10 天前
    @GabrielleBellamy
    几千条规则是什么意思,你的规则是用规则集吗?规则集一般几条就够了
    GabrielleBellamy
        21
    GabrielleBellamy  
    OP
       9 天前
    @xpn282 就是分流的规则,很多很多很多🥹
    GabrielleBellamy
        22
    GabrielleBellamy  
    OP
       9 天前
    @xpn282 规则集也用了。最开始是订阅了一个规则,然后自动更新,后来没有订阅,因为自己需要自定义的更多了,就改成手动,以前的规则就都全部留了下来。后来又陆续加了几个规则集,在散装规则的基础上加上的。所以现在就像屎山一样庞大。
    xpn282
        23
    xpn282  
       9 天前   ❤️ 1
    @GabrielleBellamy
    一般正常就几条规则集就搞定了,那需要那么多条啊。。。。
    比如我自己的规则集:apple 、ChatGPT 、SONY 、gfw 、cn 域名、lan 、geoip:cn

    就这些而已
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2588 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:06 · PVG 19:06 · LAX 03:06 · JFK 06:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.