wireguard 组网请教

2023-10-10 09:41:42 +08:00
 ixdeal

各局域网随便找了台机器装了 wireguard,请教如何设置能解决这个问题:局域网可以互相访问其它局域网资源。

是否能够设置个中心 wireguard 节点,新加入的局域网就可以通过加入该中心节点,然后访问其它节点资源,其它节点也可以访问该新节点?

2562 次点击
所在节点    宽带症候群
19 条回复
ghostwwg
2023-10-10 09:47:55 +08:00
各节点宣告自己要转的路由网段,各局域网网关做静态路由,比如点 A(192.168.22.0/24) wg ( 192.168.22.250 ) 自己宣告网段 192.168.22.0/24 点 B (192.168.23.0/24)网关需要加静态路由 目的 192.168.22.0/24 下一条是点 B wg (192.168.23.250)
wacke
2023-10-10 09:48:56 +08:00
个人建议是直接在各局域网的主路由上建立端到端的网状 wg 链路。。。。这样所有局域网都可直连互访
ghostwwg
2023-10-10 09:50:19 +08:00
@ghostwwg 读了遍 好像有点乱。。 就 2 步:1.wg 宣告自己本地网段 ; 2.局域网网关加静态路由,访问其它局域网走自己的 wg
dude4
2023-10-10 11:16:59 +08:00
WG 本身设计时没有所谓服务端客户端的概念, 就是 peer 对 peer ,所以你要实现需求最简单的方法就像 2 楼说的,需要 peer 在构建 WG 之前本身就是该网段的网关,譬如 peer A 和 B ,需要分别是各自网段的网关,这样 A 和 B 通过 WG 连接后,其他连接到 A 的客户端就能自动访问对面 peer B 的局域网资源了
Archeb
2023-10-10 11:20:19 +08:00
这个需求用 netbird 或者 tailscale 比较简单……可以 peer to peer ,也可以自建一个连接性好的 DERP 服务器做中继。
ixdeal
2023-10-10 12:38:35 +08:00
@Archeb #5 是啊,一直想考虑 tailscale/headscale, 但是 wg 速度太快了。
ixdeal
2023-10-10 12:40:11 +08:00
@ghostwwg #1 请问有具体的教程吗?
dacapoday
2023-10-10 13:21:01 +08:00
@ixdeal tailscale/headscale 的底层就是 wireguard 呀
dacapoday
2023-10-10 13:24:23 +08:00
@ixdeal 而且 tailscale 的 wireguard 实现,比内核中的还要快: https://tailscale.com/blog/more-throughput/
即使介意商业公司的产品,用 headscale 也能实现完全的自主控制,自己手动管理 wireguard 配置和组网没有意义了。
Jimmyisme
2023-10-10 13:27:04 +08:00
wireguard 实际上就是一条网线。你如果每个局域网都连起来就是去中心化。如果都连到一台主机,再转发,那就是中心化的。
Jimmyisme
2023-10-10 13:31:03 +08:00
ixdeal
2023-10-10 13:51:42 +08:00
@dacapoday #9 所以用 Headscale 的也可以用 wg 拨入?
dacapoday
2023-10-10 14:06:56 +08:00
@ixdeal 仅理论可行,tailscale 托管了 公钥交换 和 地址分配,没有暴露接口去手动添加一个节点的 公钥和 地址段。
mantouboji
2023-10-10 16:48:48 +08:00
这个很简单,建议搜索一下 wireguard 里面 allowedIPs 的介绍就知道了。

有个要点:这些局域网的 IP 网段不能相同,比如不能都是 192.168.0.0/24 ,一定要这个是 192.168.1 ,那个是 192.168.2… 然后你把 wireguard 自己的网段用另外一个,比如就是 192.168.0 好了。
rrfeng
2023-10-10 16:56:45 +08:00
其实我也有个疑问:

A - B - C
这样连

A:allowIPs = B ,C
B:allowIPs = A ,C
C:allowIPs= A ,B


如果 A 访问 C ,那么 B 默认会转发吗?是从 B 的 tun 里出来之后,重新路由回到了 tun 里?要额外加解密一次?
HawkinsSherpherd
2023-10-10 17:25:59 +08:00
给每对连接配置一个独立的 Wireguard 接口,这样每对连接都能有重叠的 AllowedIPs 了。
在每个 Wireguard 配置里加上 Table=off ,这样 AllowedIPs 里面的内容就不会影响路由表。
每台机器上装个 frr ,打开路由转发,配上 ospf ,把局域网里有的网段塞进去,就全网通了。
GoldenSheep
2023-10-10 19:43:16 +08:00
GoldenSheep
2023-10-10 19:45:13 +08:00
wireguard+bird+BGP 看看我们的成果 https://status.dn11.top/
ixdeal
2023-10-16 12:54:26 +08:00
@GoldenSheep #18 牛逼,这个可视化做的很好。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/980491

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX