情景
设备 A 与设备 B 均无公网 IP。需要 VPN 构建隧道。
实现方法
服务器端
服务器 Ubuntu 22.04
安装 wireguard
1 | sudo apt install wireguard |
编写 wg0.conf
文件
1 | [Interface] |
在服务器防火墙放行 ListenPort
填入的端口
将 wg0.conf
文件放置于 /etc/wireguard
文件夹中。
编辑 /etc/sysctl.conf
文件,取消 net.ipv4.ip_forward=1
的注释开启转发。并输入下面的命令使其生效。
1 | sysctl -p |
之后输入下面的命令启用并启动系统服务
1 | systemctl enable wg-quick@wg0.service |
服务器端编写完毕
客户端
安装 wireguard 之后新建隧道,并填写下面的内容
1 | [Interface] |
注意事项
AllowedIPs
的子网掩码为 /24
。
其他客户端配置完毕后即可互相 ping
查看能否连接。Windows 可能需要去高级防火墙的入站规则启用文件和打印机共享(回显请求 ICMPv4-IN)。