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

讨教:不常在家,在外如何做到几乎与家中同等丝滑的体验?

  •  
  •   neos2014 · 312 天前 · 5787 次点击
    这是一个创建于 312 天前的主题,其中的信息可能已经有所发展或是发生改变。

    家里主路由 K3 双线,wan1 移动 500M 下/300M 上含 V6 ,wan2 电信 500M 下/50M 上含 V4DDNS ,K3 刷了梅林 386 ,然后 N1 旁路由用的 pass 沃,然后家中一台 esxi 各种虚拟机内网啥的,网络体验挺好的。 近期及接下来经常带电脑出差,时不时需要连接家中内外,也有科学的需求,就试了下 DDNS 到梅林的 open/v\p(n),内网效果非常棒,但是 1 不能科学,我猜测是因为家中科学是靠 N1 旁路网管起的作用,2 不能走移动线路,猜测是 ovn 是通过电信 V4DDNS 来的,无法走移动? 所以请教大佬,有啥办法实现 既能方便直连内网,又能借助家中科学,还能分流移动线路(家中设备可以正常分流)?

    第 1 条附言  ·  312 天前
    根据各位大佬的回复,我感觉我没描述清楚:
    家庭主路由梅林双线,wan1 移动有 V6 大上传,wan2 电信有 DDNS V4 ,然后科学走的旁路由 Openwrt 上 passwall+smartdns ,然后 openvpn 是在梅林上走 DDNS 端口进入,电脑 macOS 通过 openvpn 的 UDP 可以非常流畅回家访问家庭全部设备。
    想要实现的是:
    1 、电脑目前只能回家,无法借助家庭网络科学上网,目测是因为科学在旁路由上导致的
    2 、openvpn 似乎只走的家中 wan2 电信,没有像家中设备那样实现部分网站 cmcc 分流
    3 、不是太想折腾 clash ssr 之类的软件(哪怕只有一个家庭节点),出门在外,希望电脑手机上都没有这些软件(防止被检查)
    4 、之所以倾向于 openvpn 之类的方案,在于这个软件国内高校企业等大面积都有使用,同时只有一个回家的配置节点,相比阿 sir 一查就是一个小猫咪/小火箭/纸飞机之类的来说,安全性高点吧😂
    41 条回复    2024-05-08 09:19:50 +08:00
    ltkun
        1
    ltkun  
       312 天前 via Android
    开个 wg 服务器然后这个主机网关指向科学上网网关 外面机器连这个服务器就行了 出门必连家里服务器 openvpn 开销比 wg 大
    mantouboji
        2
    mantouboji  
       312 天前
    全套 wg

    家里 RouterOS 直接 wg 科学,不需要什么旁路由。

    RouterOS 上再开个 wg ,专门用来自己回家。

    用 dynv6 的免费域名,通过 ipv6 连回家。
    strp
        3
    strp  
       312 天前
    如果国内要用 VPN 的话还是不建议用 UDP Based 的,因为国内在部分地区的运营商对 UDP 有很严重的 QoS 。不怕一万就怕万一,用 TCP Based 的会好点。如 https://github.com/bjdgyc/anylink
    Livid
        4
    Livid  
    MOD
       312 天前   ❤️ 1
    https://tailscale.com/

    可以用家里的机器作为 exit
    SenLief
        5
    SenLief  
       312 天前
    我现在的方案就是 tailscale 回家,家里 exit node 。
    yyysuo
        6
    yyysuo  
       312 天前
    内网虚拟机装个 alpine ,配置一下 wireguard 就行了,手机端用 surge 。
    miyunda
        7
    miyunda  
       312 天前
    我是 linux 跑 ocsrv ,出门用思科 anyconnect 客户端连回家
    cli007
        8
    cli007  
       312 天前
    我的方案是家里旁路由,openWRT 装 tailscale 组网,在外面通过 exit node 出国
    maybeonly
        9
    maybeonly  
       312 天前
    我家情况类似,联通+移动,常年 openvpn 回家
    基于 rockylinux 的软路由做核心路由器
    1. ddns:用自己的域名开策略解析啊。维护两个子域名(我都有公网所以都是双栈,其实一个双栈一个只有 AAAA 也没问题),然后自建了一个策略解析 dns 服务器,也可以买国内的带策略解析服务的 dns 服务。udp 跨不跨运营商体验云泥之别。
    内网如果忘了关 vpn 的话,建议再加个内网 dnsmasq 记录直接把 vpn 域名劫持到 vpn 服务器上。
    不想搞这么复杂就弄两个 ddns ,自己手工选择。
    2. 翻墙:这种事情……旁路由的话得 vpn 出来指向旁路由,虽然也不是做不到就是了。ip ru add from vpn 网段 table xxx ,ip r a default via 旁路由 table xxx ,大概这样,必要时可能还要 snat 一下。主路由都这么复杂了干嘛还念念不忘旁路由呢?
    3. 为什么这里没有用 wg ?
    a. openvpn 支持两种协议,爱开 tcp 就开 tcp ,爱开 udp 就开 udp 。
    b. wg 只在连接的时候解析一次域名,当然会有保活检测,这里还需要一个网络变化重新解析域名的。比如我手机也是联通+移动双卡,切换网络甚至回家之后就希望用新的 ip 连(会比较快)。不知道有没有合适的客户端。跨运营商这种事情真的就是中国特色。
    c. 2024 年了,越来越多的设备都有硬件 aes ,没必要死磕 cpu 去算 chacha20 。
    b+. 为什么回家还要开 vpn 呢?还是中国特色,总有恶心的 app 想通过运营商接口偷窥我手机号,直接给他个 vpn ,嘿嘿。
    neos2014
        10
    neos2014  
    OP
       312 天前
    @SenLief tailscale 这个跟当前的 opvn 相比能指定客户端的网关到旁路由吗?我的情况是 openv9n 走的是双线主路由的 wan2 口,只能实现上国内网全走家中 wan2 电信,并且可以顺畅家中各内网设备,遗憾的是无法科学文明也无法分流 wan1
    zx900930
        11
    zx900930  
       312 天前
    tailscale 蛋疼的问题是跨运营商就难受了。
    家中移动可以公网 ipv6 直连。
    但是公司电信 NAT4 怎么打洞都不成功。
    走中转速度 1Mbps ,开个文档都费劲。
    neos2014
        12
    neos2014  
    OP
       312 天前
    @cli007 谢谢大佬,我搜索了下 exit node 感觉比 openvn 强大很多😂 与现在相比至少能实现借家中网络出国,但是 1 、家中设置的出国分流是否依然能直接享受到无需额外再设置? 2 、家中还有个双 wan ,也在主路由上设置了几个特殊网站的分流,不知道这个能否也能享受到?
    Hf1G1sGBYS8QSLN8
        13
    Hf1G1sGBYS8QSLN8  
       312 天前
    Gost 代理回家。
    neos2014
        14
    neos2014  
    OP
       312 天前
    @maybeonly 谢谢大佬,1 给了我思路,我也可以单个域名 DDNS 到 wan2 电信的 V4 以及 DDNS 到 wan1 移动的 V6 上,这个办法应该可行。然后依据我在外面的网络情况,有 V6 就走移动,有 V4 就走电信。只是目测依然无法实现家中主路由设置的国内分流吧
    2 、综合上面各位大佬的意见,看来 vpn 得指向旁路由或者家中其他 vm 建立的中转 vn 上吧
    我最理想的期盼就是出门在外,电脑 macOS 和手机 iOS 都不需要安装火箭 clash 之类的工具,可以有个风险度低的类似 opvn 这样的工具,连接家中即可。这样被突击检查的时候,查到 opvn 以及一个内地家庭的连接节点,应该不会太被针对吧?
    SenLief
        15
    SenLief  
       312 天前
    @neos2014 #10 tailscale 是局域组网,也就是说局域网怎么进怎么出,他就怎么进怎么出。你想 wan 分流这取决于家里如何分流吧。
    neos2014
        16
    neos2014  
    OP
       312 天前
    谢谢各位大佬,再次描述大概目的就是实现:
    在外面的时候,能有跟家中差不多的体验,国内自动双 wan 分流及家中局域网自由体验,国外也自动被分流,并且电脑 macOS 和手机 iOS 都避免使用小火箭 clashX 等太过明显的工具以防抽查之类的😂
    maybeonly
        17
    maybeonly  
       312 天前
    @neos2014
    不管用 openvpn 还是 wg 还是其他东西,都可以这样指定 vpn 客户端的下一跳(在 vpn 服务器上):

    ip ru add from vpn 网段 table xxx
    ip r a default via 旁路由 table xxx
    会把所有流量转发给下一跳(你的例子是旁路网关),所以翻墙策略都是可用的
    必要时可能还要 snat 一下,取决于下一跳的配置:iptables -t nat -A POSTROUTING -s vpn 网段 -o 去下一跳的网卡通常是内网网卡 -j SNAT --to 一个下一跳接受的内网 ip

    命令都是手敲的如有报错敬请见谅

    tailscale 其实是多点互联用的……这里只做出口的话,openvpn server 就相当于 exitnode 了
    a3000xgyj
        18
    a3000xgyj  
       312 天前
    @neos2014 家里有公网 IP 的话 可以使用 TightVNC 安全又方便 点对点访问
    我出差就用这个的 而且还能文件传输
    hbytw1
        19
    hbytw1  
       312 天前
    我是在家里的 N1 上面使用 zerotier ,自己搭建的 planet ,笔记本电脑上,手机上都安装有 zerotier 客户端,公司网络也安装有。现在是在外,在公司,都可以无缝访问家里,公司网络。我本身是负责公司网络维护的。
    thereone
        20
    thereone  
       312 天前
    有公网 ipv4 或者 v6 采用 softether 不是更好,二层隧道三层隧道随意选择 TCP UDP 也是随意选择,不知道有什么好纠结的。
    maoshen1234
        21
    maoshen1234  
       312 天前
    家里开个 V6 的 VPN 就行了,我是用 V6 的 DDNS+V2R 服务器回家,还有 zerotier 保底
    chuxi
        22
    chuxi  
       312 天前
    最完美的解决方案:家庭内全局代理分流上网+在外 openVPN ( or wg )代理本机全部流量走家庭内部路由器。

    可以直接试试这个 openwrt 上的 https://github.com/9566618/shadowproxy ,直接下载 ipk 安装,如果失败就额外安装 kmod-nft-tproxy 。利用 nftables ,已经配置好 proxy 分流,dns 解析默认国内解析,避免影响正常使用,可以 ACL 配置。

    直接基于 shadowsocks 编译版本,有做过一点修改避免使用插件,可以直接上网,个人使用非常顺滑,几乎无感。

    另外 ddns+cloudflared+openvpn ,设置 5 分钟检查一次 ip ,基本上没有断过连接,注意 ddns 重启后不会主动检测 ip ,需要在启动项 -> 本地启动脚本内添加:/etc/init.d/ddns restart

    openvpn server 的好处是,客户端非常齐全,个人觉得比 wg 好用,看自己喜好。
    LonelyWenti
        23
    LonelyWenti  
       312 天前 via iPhone
    如果经常出差的话,那就不能用 ipv6 进行异地组网了,因为很多酒店或公共场所的 Wi-Fi 根本不支持 V6 。
    一劳永逸的方法就是申请公网 ipv4 ,然后用 WireGuard 连回家,远程桌面用 parsec ,开启 HEVC 编码,全程直连,没有中转服务器,那叫一个丝滑
    qqoicq
        24
    qqoicq  
       312 天前
    生命在于不折腾,买个蒲公英吧。
    rulagiti
        25
    rulagiti  
       312 天前
    @maybeonly openvpn 有个很大的问题,息屏后 vpn 会断开亮屏后要重新建立连接,wg 没这问题。
    neos2014
        26
    neos2014  
    OP
       312 天前
    @chuxi 是的,我也觉得 opvpn 停好用的,我的家庭网络是梅林双线+OP 旁路由科学,V4 的 DDNS 在 wan2 电信,opvpn 也就在 wan2 单线上,不过好在解决了家庭其他内网设备访问问题。只是 wan1 没法做出口,另外由于科学在 op 旁路由上,所以我如果要实现借助家庭网络科学的话,貌似应该先 DDNS 转发到旁路由对应 opvpn 端口,再将 openvpn 服务放在旁路由上吧。
    chuxi
        27
    chuxi  
       312 天前
    openwrt 支持 openvpn server 运行,按照官方文档脚本跑一遍就有了,目前我自己的拓扑路线:光猫 -> 软路由 -> 交换机 -> 全屋 lan 。光猫桥接 ddns ,openvpn server 也在软路由上。

    你无法代理 openvpn 自身的流量,可以检查一下自己的防火墙路由转发有没有开启,即软路由需要支持代理自身应用,查看下 mangle 转发配置是否正确,可以搜索 v2ray mangle 配置了解一下
    LeeReamond
        28
    LeeReamond  
       311 天前
    @SenLief 这种打洞工具是不是中转服务器必须在国内,国外会被墙吧
    SenLief
        29
    SenLief  
       311 天前
    @LeeReamond #28 首先想的不应该是中转,应该尝试公网,没有则看有没有 NAT1 ,其次是 ipv6 ,最后才是中转。中转服务在国内会友好些,因为延迟低,但是带宽太差了,也就能 ssh 用用了。用国外机器中转主要是延迟太高了,过墙这个倒是小事。
    aeron
        30
    aeron  
       311 天前
    @LeeReamond 可以在国外,就是延迟高,还偶尔会断,不稳定
    LeeReamond
        31
    LeeReamond  
       311 天前
    @SenLief 我现在是纯中转方案,用的精品网,效果挺好的,但是带宽最大 50M 上不去了,我想试试打洞方案但是印象里 wg 这种会墙
    SenLief
        32
    SenLief  
       311 天前
    @LeeReamond #31 打洞为什么要跳墙啊,不应该是直连吗?
    LeeReamond
        33
    LeeReamond  
       311 天前
    @SenLief 没有公网 IP 的情况下需要一步中转才能给两个端打上直连洞
    SenLief
        34
    SenLief  
       311 天前
    @LeeReamond #33 tailscale 有公共服务器啊,他只是连接的时候会先中转保证连接,后面能直连还是直连的。
    LeeReamond
        35
    LeeReamond  
       310 天前
    @SenLief 公共服务器是服务商提供的,自建服务器的程序是社区开源的。你使用对方提供的程序,第一,在无法打洞时会有速度问题,不是所有网络拓扑都能打洞成功,第二,可能有潜在的安全风险
    SenLief
        36
    SenLief  
       310 天前
    @LeeReamond #35 derp 中继开源了吧? derp 只是中继流量,节点间是端对端加密的,derp 并不知道你发了啥玩意。不过我自己也部署了两台中继服务器。
    LeeReamond
        37
    LeeReamond  
       310 天前
    @SenLief 所以你说了半天在说啥。。。你自己部署中继当然要公网 IP 啊,这不就涉及到墙的问题了
    SenLief
        38
    SenLief  
       310 天前
    @LeeReamond #37 我也是最近才部署的,之前一直用的是公共服务器。跳墙流量不大的话一般还是能的。
    neos2014
        39
    neos2014  
    OP
       308 天前
    update0127:
    感谢各位大佬建议,我昨天又换了个思路,因为旁路由 N1 用的是 openwrt ,也带了 openvpn ,我试了下,在旁路由上建了个 openvnserver ,然后主路由上用 DDNS 端口转发到旁路由,然后电脑 opvn 连接后,可以走科学上网,但是无法国内上网,也无法访问内网网段(但是可以访问旁路由自身),旁路由科学用的是 pass 沃+中国列表外,所以只要把模式改为全局即可勉强全局走家里的设备了😂 先这样顶着吧,虽然离完美一步之遥
    whetherTsmile
        40
    whetherTsmile  
       247 天前
    @maybeonly #17 大佬 xxx 是自己新建一个表吗,然后 snat 那个命令是写在主里有还是旁路由的,下一跳接受的内网 ip 是指哪个
    syh2
        41
    syh2  
       207 天前
    现在搞了个偷懒方案,自建 RustDesk 服务,然后家里有一台 NUC 一直常年 7*24 开机,可以连家里其他的机器,然后出门在外我就带一台 surfece ,直接连家里电脑,因为自建服务,延迟的话基本没有,也没出现过掉线的情况,就一直这样用下去了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2599 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 10:32 · PVG 18:32 · LAX 02:32 · JFK 05:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.