V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
kiritoyui
V2EX  ›  NAS

优雅访问家里内网服务的方式讨论

  •  1
     
  •   kiritoyui · 4 天前 · 9671 次点击

    背景:家宽动态公网域名,部分服务跑在 nas 上面,公网访问服务目前有以下几种方式:

    1.访问服务的 ddns 域名:端口
    2.借助代理软件和内网的 wg 服务直接访问服务的内网地址:192.168.2.x:xxxx (代理软件基本 24 小时开,内网访问 192.168.2.xx 的时候还是会被代理软件走一遍分流绕一圈?)
    3.通过 edgeone 加速(可能)域名访问,不用加端口

    请问各位佬,你们更倾向哪一种方式,或者说你们还有更优雅便捷的访问内网服务的方式,请不吝赐教。

    第 1 条附言  ·  3 天前
    方法 2 已经找到办法解决内网绕圈问题;
    代理软件设置一个规则 ip-cidr,192.168.2.0/24 然后指定这个规则走 ssid 策略,ssid 策略是默认走回家节点,家里 ssid 下走直连,完美解决问题
    其实应该还有其他解决方法,比如路由器自定义域名( wg 域名直接解析到本地,但是我用的华为 Q6 没这功能)
    152 条回复    2025-07-19 18:36:45 +08:00
    1  2  
    Actrace
        1
    Actrace  
       4 天前
    tailscale 或者 frp 。
    NessajCN
        2
    NessajCN  
       4 天前   ❤️ 1
    你都有公网了当然是 ddns 啊.....反代是没公网的无奈妥协之举
    zed1018
        3
    zed1018  
       4 天前
    tailscale+1
    Int100
        4
    Int100  
       4 天前 via iPhone
    内网一律 vpn 接入
    kiritoyui
        5
    kiritoyui  
    OP
       4 天前   ❤️ 1
    @Actrace tailscale 要开他的 app 不能和代理软件共存
    zhangeric
        6
    zhangeric  
       4 天前
    cf 搞内网穿透,还能搞安全访问限制.不过需要一个域名.
    kiritoyui
        7
    kiritoyui  
    OP
       4 天前
    @Int100 和方案 2 是一样的 卧室 wg 接入
    wind1986
        8
    wind1986  
       4 天前
    我现在都用 edgeone 加速了, 感觉听挺好用的
    1una
        9
    1una  
       4 天前
    我倾向于 tailscale ,无论公网还是内网都统一访问 tailscale 分配的 ip ,这样内网访问不会绕一圈,公网访问也能直连
    wind1986
        10
    wind1986  
       4 天前
    一部分内网域名走 surge ponte 或者 wg, 一部分公网访问的走 edgeone
    kingfire
        11
    kingfire  
       4 天前
    搭建 vpn ,买域名,内网搭建 caddy ,通过 dns challenge 获取域名的证书,通过设置 dns 或者 host 文件实现在内外网通过同一个域名访问内网的服务
    kingfire
        12
    kingfire  
       4 天前
    这样既不会暴露内网的服务,也可以通过内网访问便于记忆,也解决了安全提示的问题
    lin41411
        13
    lin41411  
       4 天前   ❤️ 5
    有公网 IP 的情况下:
    Wireguard 、Openvpn 第一选择,优点是速度快,安全性高。缺点是需要部署服务,客户端需要安装 APP/软件,配置相对复杂。
    PPTP 、L2TP 第二选择,优点是大部分路由都自带,客户端大多数自带这个 VPN 服务,无须额外安装 APP/软件,配置简单。缺点是安全性相对稍低,端口容易被 ban 。
    域名+端口第三选择,优点是无须配置任何 vpn ,直接裸连,简单快捷。缺点是服务直接暴露安全性堪忧,也有概率要求你做备案。

    没公网 IP 的情况下:
    首选免费的 tailscale ,Zerotier 哪个速度快选哪个。
    其它付费的组网工具就不推荐了,还有 FRP 内网穿透等,自己尝试。
    Drool
        14
    Drool  
       4 天前
    我是直接阿里云 zeroTier 回家
    z7356995
        15
    z7356995  
       4 天前 via Android
    我是买了域名,用 cloudflare 指向 ipv6 的 nas 手机和宽带同一个服务器,手机在外面看家里 nas 电影感觉和在家里一样快
    wxw752
        16
    wxw752  
       4 天前
    我在用 1 ,这么多年了一直没有事
    kirafreedom
        17
    kirafreedom  
       4 天前   ❤️ 1
    路由器搭个酸酸,把端口映射到公网,连这个酸酸回家,这样的好处移动端可以回家科学两不误
    565656
        18
    565656  
       4 天前
    家里路由器上跑的 clash socks5 当成一个节点, 自己在外地的设备引入这个节点设置分流规则, 解决不能和 tailscale 共存的问题
    bytesfold
        19
    bytesfold  
       4 天前 via iPhone
    Wireguard NAT to NAT ,问题就是 UDP QoS ,知道有 UDP over TCP ,但是太懒了,也怕搞崩了,一直没干
    xiaooloong
        20
    xiaooloong  
       4 天前
    ipsec 标准协议,常见 os 都自带客户端
    zaaad
        21
    zaaad  
       4 天前
    把代理装在家里,去外面也回家兜一圈,只要回家能直连,够用了。
    Int100
        22
    Int100  
       4 天前 via iPhone
    @kiritoyui wireguard 只是四层 vpn ,udp 封装,还有很多其他的协议,例如 ipsec ,layer3 ,esp 封装;可以自行调整内网路由条目,只针对特定前缀转发.
    zggsong
        23
    zggsong  
       4 天前
    家里开个 socks5 服务,ipv6+ddns/ frp+服务器(ipv4) 配置到代理软件里,代理软件移除家里网段的跳过代理,添加内网网段规则走家里的节点,两个节点放到代理组(比如公司网络没有 v6 )

    https://www.zggsong.com/posts/network/gohome/
    WorkerRoddy
        24
    WorkerRoddy  
       4 天前
    我是用 wg ,iOS 用小火箭,可以让境外流量和内网 IP 段流量走 wg ,其他的都走直连
    WizardLeo
        25
    WizardLeo  
       4 天前
    需要对外人开放的服务(比如文件共享)使用内网反向代理+端口映射
    不需要对外人开放的服务随便搞个 vpn 回家就行
    totoro625
        26
    totoro625  
       4 天前
    我目前主要是方案 3 ,通过百度 CDN 加速 ddns 域名
    具体分析:直连方案白天丢包 10%,CDN 加速价格实惠

    其次使用 FRP 内网穿透到 3 台阿里云服务器上
    dddedd
        27
    dddedd  
       4 天前
    mihomo 开个 vless 节点 192.168.XX 回家
    way2create
        28
    way2create  
       4 天前
    我也有动态公网 ip ,但我桥接老掉线懒得折腾,还是猫拨号。而且我只有远程需求,没部署什么,用的 tailscale 或 zerotier ,如果是跟朋友 steam 打游戏辅助联机就用比较傻瓜式的 radmin vpn
    FakerLeung
        29
    FakerLeung  
       4 天前
    @zhangeric #6 怎么搞? cf tunnel 吗?
    ticysis
        30
    ticysis  
       4 天前
    @1una #9 这个是不是要每个被访问设备上都要安装客户端
    cubecube
        31
    cubecube  
       4 天前
    @NessajCN 还要考虑安全性
    A1exL
        32
    A1exL  
       4 天前
    我用的类似方案 2 ,只不过开的是 ss 服务。缺点是现在 v6 only ,所以在没有 v6 的环境下连不回去。不过还在内网 unraid 上搞了个 tailscale subnet routing 备用,所以大部分场景下都没什么问题
    InDom
        33
    InDom  
       4 天前
    因为家里有公网 IP

    直接在路由器上开了一个 OpenVPN + IPSec VPN (iPhone 原生支持),

    然后又在软路由上起了一个 HTTP 代理(带认证) 在路由器上暴露到高位端口.

    手机日常分流内网流量到 HTTP 代理, 特殊情况直接 VPN 回家处理.
    zwlinc
        34
    zwlinc  
       4 天前   ❤️ 1
    @kiritoyui #5 的问题我解决了,体验丝滑,十分推荐,可以看我的博客,https://blog.zwlin.io/post/tailscale-with-fakeip/
    Smilencer
        35
    Smilencer  
       4 天前
    ddns, v2ray 爬梯子回家
    wind1986
        36
    wind1986  
       4 天前
    @totoro625 edgeone 免费
    m3mcpy
        37
    m3mcpy  
       4 天前
    Pangolin+Authentik
    reayyu
        38
    reayyu  
       3 天前
    lucky ddns + cf 小黄云代理 + cf https 证书 确保 https 访问
    daisyfloor
        39
    daisyfloor  
       3 天前
    @kiritoyui sing-box 了解一下,支持共用 https://linux.do/t/topic/540872/16
    1una
        40
    1una  
       3 天前
    @ticysis 所有设备都要装,所以如果手机 24 小时挂梯子就有点麻烦
    authony2020
        41
    authony2020  
       3 天前
    ddns+cf+lucky 这种方式+1 。cf 的端口转发挺好用的,不需要输入端口号了,也能使用证书。
    engunai
        42
    engunai  
       3 天前
    买个最新的阿里云或腾讯云的 200M 峰值不限流量的轻量级服务器,组建 tailscale ,通过服务器访问家里的服务,这样不会被监测到 http 的流量
    GotKiCry
        43
    GotKiCry  
       3 天前
    担心安全的情况下只暴露 vpn ,不担心可以直接 open
    ihainan
        44
    ihainan  
       3 天前
    动态公网 IP + DDNS Go ,对外唯一暴露 SS 协议端口,设置代理规则,连接家庭 SSID 时候直连,否则访问 192.168.100.x IP 段的时候走上述代理。

    用了很多年了,完全无感,非常巴适。
    kiritoyui
        45
    kiritoyui  
    OP
       3 天前
    @ihainan 我打算改成这个,但是你这个回家直连就没有魔法上网了
    Panameragt
        46
    Panameragt  
       3 天前
    socsk5 裸奔回家
    kiritoyui
        47
    kiritoyui  
    OP
       3 天前
    @zwlinc 感谢 学习一下
    kiritoyui
        48
    kiritoyui  
    OP
       3 天前
    @authony2020 用的 cf 隧道那个么?速度怎么样
    cloverzrg2
        49
    cloverzrg2  
       3 天前
    tailscale ,设置 subnet
    yeh
        50
    yeh  
       3 天前
    有公网 ip 犯不着 cf tunnel ,直接同 @ihainan 的方法,ddns + 端口转发 + 随便个 vpn 服务端,比如 vmess ss 啥的就可以了

    客户端直接做策略,比如 wifi=家里 直连,在外就是比如 10.0.0.* 回家,完全无感。
    kiracyan
        51
    kiracyan  
       3 天前
    我是 DDNS 部分自用服务加端口访问 大部分服务内外 然后开 openvpn 进去
    ihainan
        52
    ihainan  
       3 天前
    @kiritoyui 可以区分开的,我科学和回家弄了两个代理组,只不过家里有软路由,所有两个的规则都是回家之后直连。
    WDATM33
        53
    WDATM33  
       3 天前
    @cubecube #31 只用 ipv6 的话其实也没啥问题,我常年开常用端口至今没被攻击过
    susandownes
        54
    susandownes  
       3 天前
    @kiritoyui 如果安卓设备有 Magisk/KernelSU 环境,那么可以使用 https://github.com/anasfanani/Magisk-Tailscaled 达到和 Linux 相近的体验,不用担心占用手机 VPN 通道
    sairoa
        55
    sairoa  
       3 天前
    首先家里有公网 ip ,配置了 ddns ,家里有台 windows server 的服务器,远程桌面映射到公网,然后做白名单,将自己的 vps 、公司网络出口,常去的客户办公网出口加到白名单,基本能覆盖 80%的需求。
    剩下的 20%需求用 vps 当跳板,慢点也能将就用。
    将来要是公网 ip 没了,在外面有 IPv6 的话直接 IPv6 直连,没有的话走 vps 跳转。
    Haku
        56
    Haku  
       3 天前
    用公网服务器搭 frp
    capella
        57
    capella  
       3 天前
    Tunnels 有点影响速度。。。
    hasdream
        58
    hasdream  
       3 天前
    公网 IP , 路由器搭建 openvpn 家里的局域网做路由
    dosmlp
        59
    dosmlp  
       3 天前
    netbird
    hfl1995
        60
    hfl1995  
       3 天前   ❤️ 1

    家里的 macmini 运行 Surge ,公司的电脑也运行 Surge ,在公司电脑只加一条规则,当匹配到家里内网网段的时候,把流量指向家里的 Macmini 。齐活!
    Surge 就是这么优雅。
    n0bin0bita
        61
    n0bin0bita  
       3 天前
    我家也是有公网 ip ,加了 DDNS 以后,直接路由器开启 VPN ,然后通过 l2tp 访问。用的时候挂 VPN 回去。
    int80
        62
    int80  
       3 天前 via Android
    tailscale+bw hk nginx 反代
    Liftman
        63
    Liftman  
       3 天前
    我买的懒猫。。。因为我懒。
    readonly
        64
    readonly  
       3 天前
    tailscale windows 上第一次安装好像要翻墙才行,zerotier 就不需要,为啥大家都推荐 tailscale 呢,我觉得自定义的能力 zerotier 似乎要更强,一直有这个疑惑,借问
    zbatman
        65
    zbatman  
       3 天前
    怎么感觉每隔几天就有问这个的
    有公网 IP 就 DDNS ,最优雅,最省心
    没公网 IP 就内网穿透,zerotier 、tailscale 、easytier 随便挑
    EricDeamn
        66
    EricDeamn  
       3 天前 via iPhone
    直接 nas 上起个 ss 代理服务,代理软件加个规则访问家里的网段走这个代理就行了,根本没必要用 tailscale 。
    yqs112358
        67
    yqs112358  
       3 天前
    @kiritoyui Tailscale 可以共存,至少安卓可以。见博客 https://blog.openyq.top/posts/26027/
    tyrone2333
        68
    tyrone2333  
       3 天前
    @FakerLeung 对的 我也是用 cloudflare 但是现在有的不能直连, 挂着翻墙速度还是很快的
    Liqiniu
        69
    Liqiniu  
       3 天前
    旁路由配置了 clash ,passwall 开启服务端,并打开局域网访问
    外出设备用 v2rayNG ,连接家里 passwall ,可以访问家中资源同时也可以翻墙。

    另外旁路由上的 zerotier 连接的其他网段设备(比如公司网络)也可以访问
    xuromky
        70
    xuromky  
       3 天前
    @lin41411 #13 第一选择的话速度快吗 外网看家里 nas 部署的 emby 本地硬盘资源)
    flxxy
        71
    flxxy  
       3 天前
    其实可以把家里的一台机器挂上 openwrt 旁路由网关,再装上 tailscale 做 exit-node ,回家上网 (doge
    guanzhangzhang
        72
    guanzhangzhang  
       3 天前
    有 ecs 就自建 headscale ,然后用 tailscale 在路由器上跑
    guanzhangzhang
        73
    guanzhangzhang  
       3 天前
    @readonly 因为 tailscale 是商业性质的公司,但是它开源了代码,headscale 是基于 tailscale 的源码和协议写的开源控制端。tailscale 多端支持很好。其次它有强大的 acl
    deepbytes
        74
    deepbytes  
       3 天前 via iPhone
    基于无公网 ip:
    1:我是主机 macOS ~ SSH 隧道~阿里云 99 本市 VPS ~内网 win11 的 RDP ,家里软路由魔法上网(此方案无暴露 RDP 风险,舒服好多年了)
    2:Netbird 备用
    yianing
        75
    yianing  
       3 天前 via Android
    caddy 反代,用 sni 分流到 vps 本机和家里云
    alva0
        76
    alva0  
       3 天前
    家里路由器放一个蒲公英,需要回家就用挂上蒲公英,可以 p2p 直连,网速还可以
    chenjies
        77
    chenjies  
       3 天前
    用 IP 直连是最快的,安全性不高,最好是路由器设置 ip 白名单,每次连接前改一下要用来连接的 ip 地址。用代理的话,延迟与速度会有一些降低,安全性会高一些,也方便。看你用来做什么了,不要求最低延时与最快传输,用代理方便。
    lujiaxing
        78
    lujiaxing  
       3 天前
    我家是必须先 OpenVPN 过去, 然后 HTTP 访问即可.
    caola
        79
    caola  
       3 天前
    EasyTier 是基于 p2p 优先的异地组网方案 不香吗,还能兼容 wireguard 协议
    tjsdtc
        80
    tjsdtc  
       3 天前
    @zhangeric cf 感觉带宽不太行
    Admstor
        81
    Admstor  
       3 天前
    不建议 DDNS 了,因为已经不止十次看到有人说因为域名未备案的问题被封网,签承诺书才恢复开通

    另外 DDNS 也存在一定的安全风险,毕竟是直接暴露端口,需要较高的安全防护意识

    这里还是建议直接 tailscale/zerotier
    FrankAdler
        82
    FrankAdler  
       3 天前
    OpenWrt 的 DHCP 选项里有个本地域名,配置后内网的所有主机都可以使用 hostname + 域名的方式访问,比如 immich.domain.io ,如果离开家了,使用 tasker 自动打开 clash 并连回家,使用起来和在家里没有任何区别
    clash 设置的通过 ddns 连接家里的 ss-server ,规则是需要科学上网+本地域名的走家里中转一次
    heiybb
        83
    heiybb  
       3 天前
    澳洲家宽,没公网 V4
    方案是家里的 ROS 和悉尼的 VPS 用 wireguard 组网
    然后做公网端口转发给家里的 ROS 的 WIREGUARD 内网 IP
    稳定 3 年了,家里的上行是完全跑满的没有丝毫损耗
    foru17
        84
    foru17  
       3 天前 via iPhone
    上面说的方案我基本都验证过,直接说最佳实践吧:
    edgeone 套 ddns 解析家里公网 ip ( v4/v6 均可),家里部署一个 vmess+ws 的服务暴露一个端口就好。
    这套方案有效规避跨网 qos 。
    注:不要直接暴露家里的服务,上面这种是通过 vmess 绕了一圈。
    楼上说的其他诸如 tailsclae ,wg 你会遇到 udp qos 之类的问题。
    foru17
        85
    foru17  
       3 天前 via iPhone
    edgeone 也可以换成腾讯云 200M 轻量,拿一个 200M 主机做中继也可以。
    MYDB
        86
    MYDB  
       3 天前 via iPhone
    1.ss 连接主域名加端口回家
    2.内网反代子域名
    3.子域名根据情况解析为内网 ip 或者 cname 主域名

    这样就可以实现无端口号+https 了+udp 无 qos+免流(如果是手机卡)
    bowencool
        87
    bowencool  
       3 天前
    一种新的方式:
    HFX3389
        88
    HFX3389  
       3 天前
    @1una #9
    @ticysis #30
    Tailscale 有 Subnet Routers 功能,不需要每个被访问的设备都装呀,找一台开 Subnet Routers 就可以了。
    不过缺点就是 Subnet 的子网不能都是一样的,比如办公室和家里的都是 192.168.1.0/24 的话就起冲突了。
    HFX3389
        89
    HFX3389  
       3 天前
    @engunai #42 老用户买不到,老用户不如狗..
    Ipsum
        90
    Ipsum  
       3 天前 via Android
    Vpn 回家后,直接内网 ip 访问。
    jpyl0423
        91
    jpyl0423  
       3 天前
    ss 代理连回家,所有服务都用内网 ip 访问
    wsbqdyhm
        92
    wsbqdyhm  
       3 天前
    @yeh 也是这样,不过我用 snell v3 协议,稳定使用 3 年。
    cubecube
        93
    cubecube  
       3 天前
    @WDATM33 还是不安全的,我之前把 rdp open 了,发现会被探测,然后 win 有密码重试次数的锁定策略,导致回不了家。 后来回家我也先组网再回了
    dabaibai
        94
    dabaibai  
       3 天前
    CloudFlare
    ENE
        95
    ENE  
       3 天前 via Android
    自建代理 vmess 这种,还能绕限速
    R1ta
        96
    R1ta  
       3 天前
    爱快挂 DDNS,域名备案了,EXSI 虚拟机安装 OPENWRT,WRT 上安装 passwall 和 wireguard, 任何外面需要连进来的全部用 WG 连接,顺便也可以科学上网,苹果手机的话用 shadowrocket 连接 DMIT 节点。
    Ackvincent
        97
    Ackvincent  
       3 天前
    KSA
    yxmyxmyyy
        98
    yxmyxmyyy  
       3 天前
    看你那里运营商管不管吧,不管的话 1 跟 3 没什么区别,管的话只能 2 了,wg 或者其他 vpn 组网软件,没什么区别
    zhy0216
        99
    zhy0216  
       3 天前 via Android
    easytier 是最容易的
    likooo125802023
        100
    likooo125802023  
       3 天前
    zerotier 蛮好的

    直接就变成局域网了。
    1  2  
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2730 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 08:20 · PVG 16:20 · LAX 01:20 · JFK 04:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.