架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 969|回复: 2

基于 WireGuard 访问 Peer 节点局域网

[复制链接]
发表于 2023-10-15 14:14:16 | 显示全部楼层 |阅读模式
需求:使用 WireGuard 搭建了异地组网,各 peer 节点都可以相互访问,但是,如果想通过节点访问对方的局域网应该如何配置呢?

使用 Docker 搭建 WireGuard 异地组网
https://www.itsvse.com/thread-10681-1-1.html

异地组网方案比较Tailscale、ZeroTier、WireGuard、OmniEdge 和 Ngrok
https://www.itsvse.com/thread-10646-1-1.html

上海移动电脑想访问山东联通电脑所在局域网的其它机器,如下图:

QQ截图20231015132000.jpg

本文不基于 Docker 搭建了,直接在宿主机上面搭建 WireGuard。环境如下:

  • 服务器(Server):Ubuntu 20.04
  • 上海移动(Peer):Windows 11
  • 山东联通(Peer):Rocky 8


服务器(Server)配置

基于 Ubuntu 20.04 系统,具有公网 IP 地址,先设置开启IP转发,命令如下:

安装 WireGuard,命令如下:

PublicKey 公钥和 PrivateKey 私钥的生成,其实服务端、客户端没有任何联系,其实就是帮你通过工具生成所需要的配置,命令如下:

PresharedKey 预共享密钥是可选的,生成命令如下:

在 /etc/wireguard/ 目录新建 wg0.conf 配置文件,完整 /etc/wireguard/wg0.conf 文件如下:

其中 eth0 请根据自己实际情况设置,启动 WireGuard 命令如下:

QQ截图20231015134155.jpg

其实,也可以通过 systemd 来启动 wg0 和 设置开机启动等,命令如下:

QQ截图20231015134503.jpg

Peer 上海移动配置

上海移动要访问山东联通 Peer 所在的局域网的其它机器,配置如下:


Peer 山东联通配置

基于 Rocky 8 系统,首先需要升级一下系统内核,否则会提示“Error: Unknown device type,Unable to access interface: Protocol not supported”错误,命令如下:

安装 WireGuard,命令如下:

同样需要设置开启IP转发,命令如下:

关闭防火墙,否则可能会导致无法访问局域网内的设备,命令如下:

同样新建 wg0.conf 文件,完整 /etc/wireguard/wg0.conf 配置如下:

其中 ens192 需要根据自己实际情况设置,开启 wg0 接口,如下:

QQ截图20231015135936.jpg

测试

从上海移动测试访问山东联通局域网内的机器,如下图:

QQ截图20231015141257.jpg

参考:

https://huelse.gitee.io/posts/wireguard-nat-lan/
https://gitee.com/spoto/wireguard

(完)





上一篇:Linux 包管理 yum 与 dnf 的区别
下一篇:前端 JS 将 base64 转成 blob 后图片展示
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2023-10-15 17:52:01 | 显示全部楼层
实测,山东联通 Peer 也可以直接用 ikuai 路由器设置:https://www.ikuai8.com/zhic/ymgn/lyym/wlsz/vpn/wireguard.html


QQ截图20231015175039.jpg QQ截图20231015175058.jpg
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-3-31 14:08:39 | 显示全部楼层
Rocky Linux 9 安装 wireguard

最新版本的 Rocky Linux 9 附带默认的 Linux 内核 5.14,默认情况下嵌入在其之上的“wireguard”内核模块。在此步骤中,您将启用 Wirguard 内核模块并在 Rocky Linux 服务器上安装“wireguard-tools”。

要永久加载 wireguard 模块,您可以运行以下命令将新的配置文件添加到“ /etc/modules-load.d/”目录中。这将在系统启动时永久加载wireguard内核模块。命令如下:

启用“ wireguard ”内核模块后,必须安装“ wireguard-tools ”软件包来管理Wireguard服务器。这包括生成密钥、启动 Wireguard 服务器等等。命令如下:



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-28 16:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表