V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ccbikai
V2EX  ›  宽带症候群

没有公网 IPv4 也能玩转 Homelab 远程访问

  •  
  •   ccbikai ·
    PRO
    · 2024-05-01 10:02:13 +08:00 · 3607 次点击
    这是一个创建于 463 天前的主题,其中的信息可能已经有所发展或是发生改变。

    家用 Homelab 远程访问的场景大多有三个:

    1. 共享内部服务到外网访问 (比如 RSSHub);
    2. 外部设备连接家庭内网,访问内网的各种服务/设备;
    3. PT 连通性和上传速度。

    常用的方案有 FRP 代理、IPv6 、Zerotier 等,但都有各自的缺点:

    1. FRP 非直连,依赖代理服务器带宽,不一定跑慢带宽;
    2. IPv6 要求外部设备的网络也支持 IPv6 ,好多办公网络是不支持的;
    3. Zerotier 有时间不能直连,需要中转速度很慢;
    4. 都无法解决 PT 上传的问题。

    我现在折腾的方案用了大概两年,稳定性很好,几乎可以媲美公网 IPv4 。

    但是也有一些前置条件:

    1. 宽带 NAT 为 NAT1(Full Cone);
    2. 路由拨号,路由器系统最好是 Openwrt (其他 Linux 发行版也行,但无法抄作业)。
    3. 有一个内网设备支持运行 Clash (运行在主路由也行)。

    也有一些好处:

    1. 不需要代理服务器,可以跑满带宽。
    2. 不依赖 IPv6 ,有 IPv6 更好一些。
    3. 支持 PT 上传。

    如果你的网络和设备满足上面的条件,就可以按照我的方案来尝试了。

    https://chi.miantiao.me/posts/without-ipv4/

    感谢 V 友开发的 NATMap

    19 条回复    2024-05-02 20:19:06 +08:00
    Puteulanus
        1
    Puteulanus  
       2024-05-01 10:58:34 +08:00
    深圳和合肥新办电信宽带的朋友现在都是 Restric NAT 了,不知道找客服能要到 Full Cone NAT 不
    terrancesiu
        2
    terrancesiu  
       2024-05-01 11:08:35 +08:00
    收藏了
    uncat
        3
    uncat  
       2024-05-01 11:51:51 +08:00
    $ pystun3 -H stunserver.stunprotocol.org

    NAT Type: Restric NAT
    External IP: 223.73.113.x
    External Port: 12130

    广州移动,哭了
    ccbikai
        4
    ccbikai  
    OP
    PRO
       2024-05-01 12:02:45 +08:00
    @Puteulanus 客服: 什么是佛抗南特? 😄
    @uncat 移动是为了限制 PCDN 吧
    Puteulanus
        5
    Puteulanus  
       2024-05-01 12:08:40 +08:00
    @ccbikai 刚刚测了一下家里成都电信的,前段时间测过是 Full Cone NAT ,现在也是 Restric NAT 了。。
    heiher
        6
    heiher  
       2024-05-01 12:13:42 +08:00 via Android
    没有 Fullcone 的多投诉,一口咬定之前有,是你们单方面修改,影响到了我的正常使用了。检测要注意防火墙的干扰,误判。
    titanium98118
        7
    titanium98118  
       2024-05-01 12:18:02 +08:00
    @uncat 广州移动是 FULL CONE 的,我在用着 natmap
    uncat
        8
    uncat  
       2024-05-01 12:42:23 +08:00
    @titanium98118 OK ,我再试试,射射你。
    uncat
        9
    uncat  
       2024-05-01 13:41:40 +08:00
    测试了一下,TCP 不行,UDP 可以。感谢各位!
    shinsekai
        10
    shinsekai  
       2024-05-01 13:49:31 +08:00
    这是不是 surge ponte 的原理?
    lovepocky
        11
    lovepocky  
       2024-05-01 14:28:41 +08:00 via iPhone
    udp 可以的试下开 dmz 重新测
    uncat
        12
    uncat  
       2024-05-01 14:54:59 +08:00
    @lovepocky 是的,广州移动 UDP 是可以。
    uncat
        13
    uncat  
       2024-05-01 14:56:16 +08:00
    很多家庭带宽可以通过 DHCPv6 给局域网所有设备分配公网 IPv6 。

    我家局域网的虚拟化以桥接模式接入局域网,每个虚拟机通过 DHCPv6 分配了公网 IPv6 地址(相当于有多台公网 IPv6 的服务器),配合 DDNS (或者类似的动态更新 DNS 的方案),做基于 IPv6 的 WireGuard 也挺爽的。
    ccbikai
        14
    ccbikai  
    OP
    PRO
       2024-05-01 16:34:12 +08:00
    @shinsekai 类似,可以达到 surge ponte 的效果

    @uncat #13 IPv6 我这边也有正常使用, 但是办公室没有 IPv6 , 所以使用 IPv4 更多一些
    zhaidoudou123
        15
    zhaidoudou123  
       2024-05-01 16:36:02 +08:00 via iPhone
    和 Surge Ponte nat 穿透一个原理
    ponte 要是支持 Windows 客户端那可就太方便了
    xwybss
        16
    xwybss  
       2024-05-01 18:51:14 +08:00
    我用 natmap 打洞 1 年多了,穿透一个 xray vless 代理出去,端口十天一变
    milkman155
        17
    milkman155  
       2024-05-02 17:45:12 +08:00   ❤️ 1
    @Puteulanus 合肥电信刚测的 full cone
    samersions
        18
    samersions  
       2024-05-02 19:39:20 +08:00
    1 、共享内部服务到外网访问 (比如 RSSHub);
    2 、外部设备连接家庭内网,访问内网的各种服务/设备;
    3 、PT 连通性和上传速度。

    对于 1 ,对于带宽需求大的服务(如 Jellyfin )我是通过 IPv6 直连,其他对于带宽需求小的(如 calibre 以及一些本该放在云服务器的 blog 等网站)则直接走 Cloudflare Tunnel ;

    对于 2 ,提供 Tailscale 通过 IPv6 直连,同时部分服务如 RDP 等同时走 IPv6 直连和 FRP 转发,满足双栈的使用需求;

    对于 3 ,IPv4 走 NAT 打洞+IPv6 走直连,打洞成功后通过 webhook 触发脚本动态修改 QB 的监听端口和 OpenWRT 的防火墙设置及端口转发设置以同步。
    ccbikai
        19
    ccbikai  
    OP
    PRO
       2024-05-02 20:19:06 +08:00
    @samersions 1 和我一样,但是我没在 IPv6 共享,主要是办公没 IPv6

    2 Tailscale 我作为备用的, 因为我想把访问国外网站和家庭服务的需求用同一个软件解决

    3 我们一模一样
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5411 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 06:53 · PVG 14:53 · LAX 23:53 · JFK 02:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.