1 hancc 2023-06-27 22:28:48 +08:00 ![]() WireGuard |
2 hu8245 2023-06-27 22:40:25 +08:00 tailscale/headscale wireguard 境内超稳 |
3 233373 2023-06-27 22:51:34 +08:00 那必须是 wireguard |
5 bytesfold 2023-06-27 23:12:53 +08:00 wireguard nat to nat |
6 14 2023-06-27 23:37:26 +08:00 我用 headscale 配合云服务器+权限控制关联几乎所有服务器、wireguard 跑在家里公网端口方便高速回家、zerotier 使用官方服务器作为保底方案。 |
![]() | 7 Evovil 2023-06-27 23:39:18 +08:00 via iPhone ![]() 各地有散落的本地服务器: 如果都有固定 ip 那么 wireguard 是最佳选择 如果没有固定 ip ,云服务器带宽足够,wireguard 是最好的选择。 wg 速度快性能好,内核兼容。前提是云服务器需要中转流量。运维方便。 如果需要服务器点对点连最大化利用带宽,服务器数量不多的情况下可以互相建立 wg 隧道,然后服务器用 ospf 等协议广播路由表,还能自动故障切换。 如果嫌麻烦 zerotier ,tailscale ,tinc 可以尝试 如果不需要 route subnet 直接用 wgip 访问即可,nat 都不需要。 如果遇到运营商 qos ( udp ) 可以套 udp2raw 或者 phantun (手动点对点) |
8 Jirajine 2023-06-27 23:40:40 +08:00 有一个公网 IP 的服务器好办,跑个 wireguard 让其他所有设备连上就行了。 其他设备之间的流量会自动发现 endpoint ,自动直连。 |
![]() | 9 opengps 2023-06-27 23:41:48 +08:00 我用最简单的 frp |
10 Jirajine 2023-06-27 23:42:59 +08:00 @Evovil wireguard 应该会自动发现动态 ip 的“客户端”的 endpoint ,也就是端点直连而非中转。( wireguard 设计里都是对等的,不分服务端客户端)。 以及组一个内网就用不上路由协议这种东西了吧。 |
13 40EaE5uJO3Xt1VVa 2023-06-28 01:20:07 +08:00 请问一下各位大佬,这些组网工具,WireGuard zerotier ,tailscale/tailscale 等等,哪些是流量加密的。 |
![]() | 14 loveqianool 2023-06-28 03:21:23 +08:00 也可以试试 https://openp2p.cn/ |
![]() | 15 webcape233 2023-06-28 07:31:16 +08:00 via iPhone wirguard 是最简单的了! |
![]() | 16 a33291 2023-06-28 08:23:28 +08:00 最简单不是 softether 吗 |
18 datocp 2023-06-28 08:42:12 +08:00 ![]() 一直使用 softether ,之前也有这个需求没有深入研究 https://forum.vpngate.net/viewtopic.php?t=65656 现在网络是分级的,比如 2018 年时,电信联通网络不通,晚上两网之间连接竟然跑到省会城市去连接,搞得网间流量才 50KB/s 。出了墙更是有流量累积风险。移动访问深信服的 vpn 也是有间谒性访问问题的。 从这些年的经验来看,用 softether 常见避墙方法 1 。定时变更级联线路,条条大路通罗马 2 。同一服务器变更不同端口,以上都能有效的避开流量封锁 3 。似乎定时变更证书也能避墙 softether 的另外一个优点是一个服务器端即是服务器端又是客户端,具备一个服务器端连接全球服务器的效果,只是这需要对 linux route 有更高阶的经验。另外作者点拔了一下 softether 实现的 mesh ,只是没能领会用途。 之前测试时用的这种方法,softether 过墙的效果还是非常好的。 Webserver over VPN https://forum.vpngate.net/viewtopic.php?t=65656 Sure. What I did was set up a TAP adapter on the server so the VPN server can ping the VPN cleint. After that I used software like HAProxy and iptables port-fowarding to make the web-server available to the public Setup the VPN server (after creating the TAP adapter in the server control panel) sysctl -w net.ipv4.ip_forward=1 service vpnserver start #if not started allready dhclient tap_tap #get an IP for this TAP adapter For a web server tho I suggest HAProxy so you can use HTTP headers to get client IP address. This part is a little complicated and if you are using multiple subdomains you might need a Wildcard SSL to use in HAProxy (which you can usually get for free from Let's Encrypt) If you are running a Minecraft Server you can use HAProxy and a SpigotProxy plugin to get player's real IPs and it works well for a testing env. Heres what I use on the VPN server for generic port forwarding. x.x.x.x represents the server's public IPv4 and 192.168.30.13 is my VPN Client's IP (this will prob. work for Pv6) iptables -t nat -I PREROUTING 1 -d x.x.x.x -p tcp --dport 8081 -j DNAT --to-dest 192.168.30.13:8081 iptables -t nat -I POSTROUTING 1 -d 192.168.30.13 -p tcp --dport 8081 -j SNAT --to-source 192.168.30.1 iptables -I FORWARD 1 -d 192.168.30.13 -p tcp --dport 8081 -j ACCEPT If you do get a Wildcard SSL thru Let's Encrypt. Use this command to combine the certs than use this command block to turn it into a single pem file to use with HAProxy sudo cat /etc/letsencrypt/live/mydomain.tld/fullchain.pem \ /etc/letsencrypt/live/mydomain.tld/privkey.pem \ | sudo tee mydomain.tld.pem |
![]() | 22 masterclock 2023-06-28 08:57:34 +08:00 有比 softether 更强的吗? |
![]() | 23 yulgang 2023-06-28 08:58:58 +08:00 openvpn |
![]() | 24 liyafe1997 2023-06-28 09:02:14 +08:00 via Android 自用 tailscale 跨国组网还是双方 NAT 的情况下,稳得一逼 |
25 Dzer0 2023-06-28 09:02:40 +08:00 n2n 效果好的一匹,可以直接 P2P 。 |
![]() | 26 mikaelson OP @liyafe1997 如果是内网业务,都只能走公网 ip 映射出来依托于云服务器的带宽了是把? |
![]() | 28 superchijinpeng 2023-06-28 09:07:55 +08:00 Headscale + Tailscale 无敌 |
![]() | 29 mikaelson OP @superchijinpeng 可以自定义虚 IP 吗?可以自建 server 对吗?我去了解一下。然后内网服务要映射的话,都只能走公网 IP 映射端口依托于公网宽带了是把 |
![]() | 30 Achophiark 2023-06-28 09:09:08 +08:00 wg-easy 解君愁 |
31 hello365 2023-06-28 09:15:54 +08:00 udp 打洞就算成功,但是效果不能保证,国内大环境就是这样,要稳定尽量考虑 tcp 中转链接模式。 |
![]() | 32 lingeo 2023-06-28 09:17:22 +08:00 我也有这种需求,公司有个动态公网 IP ,公司路由器上配了个 L2TP ,户外有 20 多个设备,已经到了路由器的上限了。后面又在服务器上跑了个[L2TP-VPN]( https://github.com/daisreaux/L2TP-VPN/tree/master)。 |
![]() | 33 mikaelson OP @superchijinpeng 感谢,我去搜搜教程 |
![]() | 35 NealLason 2023-06-28 09:47:17 +08:00 我的方案: OpenVPN -> NAT -> Nebula. 所有开发人员在 OpenVPN 子网下,然后各地的服务器都通过 Nebula 实现 P2P Mesh 组网,OpenVPN 的子网和 Nebula 之间通过一层 NAT 转换 |
![]() | 37 greenskinmonster 2023-06-28 10:07:57 +08:00 建议官方 tailscale + 自建 derp ,headscale 最近 0.22.x 版本 bug 有点多。 Wireguard 我测试有断流的情况,比如远程桌面和 SSH 偶尔会断开,我留作备用方案了。 而且 tailscale 本身的权限控制非常强大,相对来说 wg 就不够灵活。 |
![]() | 38 mikaelson OP @yuantianwei 想要映射到外网,就走云服务器的公网 IP ,在走云服务器的带宽,是嘛 |
![]() | 39 mikaelson OP @greenskinmonster 好的,谢谢,我去找教程看看 |
![]() | 40 ShunYea 2023-06-28 10:40:44 +08:00 上次各位大佬推荐我的 NPS ,没有人推荐给楼主吗? |
![]() | 42 hbytw1 2023-06-28 11:15:11 +08:00 @mikaelson zerotier 只能异地联网,组建一个跨运营商和地域的局域网。映射外网的话需要使用其他的,例如 frp |
![]() | 43 aiqinxuancai 2023-06-28 11:30:50 +08:00 tailscale 最方便 |
![]() | 44 mikaelson OP @yuantianwei 嗯嗯明白了。只要映射外网那就得依托云服务器的带宽了。 |
![]() | 45 simplove 2023-06-28 11:36:01 +08:00 frp 配合 jumpserver 我司是这么用的,frp 搭建在公司内网,jumpserver 也是在内网 只开入 frp 的管理口。 jumpserver 连接服务器全部走内网 |
![]() | 46 kasusa 2023-06-28 11:37:30 +08:00 tailscale 我用着感觉很慢的。不好用。 我觉得 frp 比较好用。只需要一个自己的云服务器。 |
47 luckyv2 2023-06-28 11:40:40 +08:00 headscale 多好用啊 |
![]() | 49 shulin 2023-06-28 11:46:42 +08:00 也可以试试 https://ip4.ink |
![]() | 51 rwecho 2023-06-28 11:54:34 +08:00 @mikaelson 和你的情况差不多, 刚用 zerotier 搭建好。 https://mp.weixin.qq.com/s/QTzFNR1_e1SimTfdXKFVeg 就是用 zerotier 自建 moon , 降低延迟 然后用自建 network controller ,破图官方的 25 个节点限制 然后结合 dnsmasq 来给节点分配域名 |
![]() | 52 poisedflw 2023-06-28 11:55:42 +08:00 自建 headscale 服务端,另外自己搭建一套 derp 中继,用 tailscale 官方客户端。 绝大部分情况下组网的设备都能直连(延迟极低) |
![]() | 53 superchijinpeng 2023-06-28 12:37:57 +08:00 |
![]() | 54 heiher 2023-06-28 13:18:20 +08:00 via Android https://github.com/heiher/natmap 映射端口 + wireguard |
![]() | 55 weijancc 2023-06-28 13:32:31 +08:00 wireguard 不支持 ddns, 所以我用了 n2n~ |
![]() | 56 mikaelson OP @superchijinpeng 好的,我现在在搭建了,我先试试。 |
57 sunulin 2023-06-28 14:02:06 +08:00 N2N 组网加新设备太麻烦了,zerotier 组网方便,但是当时没相互打通就放弃了,现在用的 tailscale ( headscale ) + 自建 derp 市区内跨运营商 ping 值 30+ 同运营商 10 以内 |
![]() | 59 0044200420 2023-06-28 14:07:20 +08:00 tailscale 加云主机自建 derper 然后屏蔽官方 derper ,简单 https://icloudnative.io/posts/custom-derp-servers/#%E4%BD%BF%E7%94%A8%E7%BA%AF-ip 用这大佬的镜像几分钟就搞好 |
![]() | 60 mikaelson OP @0044200420 只看到了自定义网段,我想给每个节点自定义 IP 呢?另外,我改了个网段,这个警告应该无所谓吧? WRN Prefix 10.86.0.0/16 is not in the 100.64.0.0/10 range. This is an unsupported configuration. |
![]() | 61 howfree 2023-06-28 15:30:19 +08:00 frp |
![]() | 62 weilongs 2023-06-28 15:42:27 +08:00 只用过 frp 和 nps 。相比较我喜欢 frp |
![]() | 63 blueboyggh 2023-06-28 16:00:48 +08:00 via Android 最近发现用 tailscale 的时候,真实局域网内两个终端之间通过本地 ip 互相 smb 传送文件,明明没通过 tailscale 的 ip ,但是 tailscale 的服务会高占用 cpu ,搞不懂为什么,卸载了只用 zerotier 了 |
64 ishalla 2023-06-28 16:02:28 +08:00 之前有用过 nps 也不错,但也不知道是不是安全没做好,网内一台机器中勒索病毒组网里的就全中了,因为好像也很久没维护,所以现在换用 Cloudflared ,大厂还是比较值得信任,而且也很简单 |
![]() | 65 gophlet 2023-06-28 16:05:32 +08:00 还是 zerotier 用起来比较省心,但是 zerotier 在某些网络环境下会连不上。 |
68 14 2023-06-28 20:18:04 +08:00 @root01 Headscale 自身可以直接用纯 IP 不需要证书,DERP 参考文档 https://icloudnative.io/posts/custom-derp-servers/#使用纯-ip 用他的镜像也不需要证书 |
69 14 2023-06-28 20:21:46 +08:00 @mikaelson 我的 Headscale 是用固定带宽的云服务器带宽不高。Wireguard 直接暴露在家里带宽的公网 IP 的 UDP 端口不是云服务器不消耗服务器流量和带宽 |
71 SoFarSoGood 2023-06-28 20:40:24 +08:00 @weijancc 可以的,需要变通一下 |
72 SoFarSoGood 2023-06-28 20:43:11 +08:00 wireguard/taiscale/netmaker/openvpn,当然 DMVPN 也可以是个选项。 |
73 SoFarSoGood 2023-06-28 20:47:55 +08:00 tailscale 优点多多,但是很耗资源。 不是特别多的节点,可以用 ansible 管理 wireguard 实现也是可以的。可以用 vyos + wireguard+ospf+bgp ,轻量好用。 |
![]() | 74 sudoy 2023-06-28 20:54:12 +08:00 zerotier 貌似比 tailscale 好用 |
![]() | 75 mikaelson OP @14 她这个 docker 我今天跑了一下,直接报错,提示没有 glibc 什么的。。。不懂咋回事,我现在换 n2n 试试 |
![]() | 76 mikaelson OP @SoFarSoGood 我决定试试 n2n 了 |
![]() | 77 acbot 2023-06-28 21:10:40 +08:00 "... 散落各地服务器 ... 还需要登陆到服务器来转发 SSH ... " 真不知道你是一个什么应用场景或者是不是组网架构不合理? tinc 支持 站到点,点到点,站到站 组网并且非常稳,因为要更改配置很麻烦所以一般用在站到站的环境比好! 你说不稳个人估计有一下原因: 1. 使用了 udp 模式,在 1.0.x 版本有一个 TCPOnly 参数你可以 设置为 yes ,在 1.1.x 以后的版本取消了这个参数,并且优先使用 udp ,只能在防火墙方面着手阻止 udp 连接曲线救国了。 2. 估计有可能是特征被识别了可以考虑更换以下密钥和加密方式。 第一种原因应该是最常见的。 |
![]() | 78 mikaelson OP 之前一直非常稳定呀,几年了都没问题 自从迁移了 server 端后就这样了。我试了好多方法都没搞定, 加密方式我一直都是用-K 直接生成了,没用别的加密方式,这我倒是没去试过。 udp 的话,我试试把它关了看看。我现在是 1.1.18 ,我用 tinc info 看节点,确实都显示 udp 链接。 @acbot |
79 chihiro2014 2023-06-28 21:18:27 +08:00 试试看中微子代理,国人开发的 |
![]() | 80 acbot 2023-06-28 21:44:03 +08:00 @mikaelson udp 在 1.1.x 新版 已经无法关闭并且是优先的方式了, 因为 TCPOnly 这个参数无效了。要不换回 1.0.x 老版本,要不就是在防火墙屏蔽 udp 曲线救国。加密参数 Cipher 有 aes-256-cbc blowfish 等很多选项你可以切换切换,但是个人觉得这个造成的问题的可能性很小。 另外 1.1.x 的新版本默认还启用了 Ed25519 , 你可以看看 ExperimentalProtocol 等参数,这个也是有可能造成不稳定的,可以设置为 no 。 如果你是 点对点的应用场景多其实 N2N 也是不错的! |
![]() | 81 mikaelson OP @acbot 嗯嗯,我已经决定试试 n2n 了,在搭建了。我主要是希望各地点对点能稳定,业务每天都要互传文件。经不起断。。。哎 |
82 SoFarSoGood 2023-06-28 22:32:29 +08:00 @mikaelson vyos+ wireguard ,不丢包的网络,不 qos udp 的网络,最快的还是 wireguard ,upd 出了名的快。 |
![]() | 83 sickoo 2023-06-28 22:42:28 +08:00 @greenskinmonster tailscale+自建 derp 有指路的吗?想试试 |
![]() | 84 mikaelson OP @SoFarSoGood 又多了一个没听过的。。。vyos 我去搜搜。。。 |
85 SoFarSoGood 2023-06-28 23:07:10 +08:00 ![]() @mikaelson vyos 封好的 router ,源于 vyatta ,当年测速思科路由器的。nat 包转发优秀. 各种网络功能一应俱全。给官方提交 bug ,可以开开发者帐号,免费拿官网正式版 iso ,当然你也可以自动编译,最好放到国外 vps 编译,很多依赖,国内很慢。 基本上所有云都可以安装。512 内存,1 核 cpu 就可以运行。企业级的 router 。非常好用。openvpn ,ipsec site-to-site, l2tp, ikev2, anyconnect, gre, is-is, ospf ,bgp ,gre, openconnect ,dmvpn 应有尽有。 |
86 initObject 2023-06-29 00:51:42 +08:00 via Android 我用的 zerotier +自搭 moon 节点 我的设备也很多 为了和云服务器组建 k3s 使用的是组二层局域网的方案 https://zerotier.atlassian.net/wiki/spaces/SD/pages/7438339 外网访问内部应用就用外网的域名或 ip 当然接入内网或 zerotier 的设备就通过内网 ip |
![]() | 87 lpfzmmlhhlhy 2023-06-29 00:53:58 +08:00 那必须是 zerotier |
![]() | 88 ShunYea 2023-06-29 08:42:50 +08:00 @mikaelson 我的是这个帖子。https://v2ex.com/t/917962 对比了我觉得 NPS 好像更适合我,这几天在研究搭建。但是感觉没有 FRP 稳定,但 FRP 又不适合多用户,有点不方便。 |
![]() | 90 mikaelson OP @weijancc n2n 的-c 参数是什么意思啊?是类似 tinc 那样取一个 vpn 名字吗?往上的教程都好简单。直接设置一个端口就运行起来了。。 |
![]() | /td> | 91 Evovil 2023-06-29 09:21:55 +08:00 @SoFarSoGood VyOS 是全靠 CLI 操作吗? 最近发现 mikrotik 越来越不稳定正在准备换个 router , 官网的 Legacy 1.29LTS 是很久以前的了吗? 是不是得找个外网机器 build 是最好的方案? |
![]() | 92 greenskinmonster 2023-06-29 09:36:54 +08:00 @sickoo Google “derp 自建”, 比如 https://icloudnative.io/posts/custom-derp-servers/ ,这哥们写了不少关于 headscale tailscale 的教程。 |
![]() | 93 mikaelson OP @greenskinmonster docker run --restart always --net host --name derper -d ghcr.io/yangchuansheng/ip_derper 他这个 docker 运行后,我看容器内部直接报 glibc 错误。。不懂为啥 |
![]() | 94 weijancc 2023-06-29 10:18:19 +08:00 @mikaelson -c 是 group 的缩写, -c [group name], 同个 group 内的设备才可互相访问 |
![]() | 95 mikaelson OP @weijancc 随便用个组名就行吗?我找了个现成的组名写到 supernode.conf 里,启动直接报错了。。。另外,怎么定义网段啊?我看教程都好简单。。。supernode 直接启动,都没配置。。。 |
![]() | 96 mikaelson OP @weijancc supernode 的-a 参数应该怎么设置?我试了-a=10.86.1.0-10.86.10.0/16 和-a 10.86.1.0-10.86.10.0/16 这两种都直接报错了,不能启动。。。 |
98 SoFarSoGood 2023-06-29 11:34:08 +08:00 @Evovil 1.29 发布不久,是 1.2.x free 版本。 最新 LTS release 是 1.3.3 , 你可以自动编译,或者有 github 编译好的,安装。 是全 cli 的,和 junos 很像。cli 非常好用,好 debug ,好更改配置。web 想看到问题处在哪特别难。 用 ansible 来部署,非常方便。 |
![]() | 99 mikaelson OP @weijancc 我在客户端都配了,现在客户端可以互通了。那我有一些端口需要再公网转发的。我服务端是不是启了 supernode 也要起一个 edge 才能访问到子网?我现在 supernode 这个节点访问不到底下的 edge |
![]() | 100 nao0gtx 2023-06-29 11:36:57 +08:00 要不试下贝锐的蒲公英看看?属于是 SaaS ,不用自己部署服务端,在各个服务器上直接部署蒲公英的客户端,然后简单操作下就能组网,每台服务器都有虚拟的 IP 地址,远程访问的人同样装个蒲公英客户端登录下就行,效果和本地局域网没什么太大区别,而且蒲公英个人、商用和私有化方案也都有 |