ubnt er-x 安装配置wireguard
记录ubnt er-x安装配置wireguard并打通到异地peer局域网
1、安装wireguard软件包
项目地址https://github.com/WireGuard/wireguard-vyatta-ubnt
下载e50-v2-v1.0.20220627-v1.0.20210914.deb这个包并上传到er-x的/home/ubnt目录
1 | sudo dpkg -i e50-v2-v1.0.20220627-v1.0.20210914.deb |
2、配置wireguard并启动
查看wireguard接口信息,后面也可加创建的wireguard接口名称例如wg0
1 | show interfaces wireguard |
生成秘钥
1 | wg genkey | tee privatekey | wg pubkey > publickey |
1 | cat publickey |
进入配置模式
1 | configure |
配接口地址
1 | set interfaces wireguard wg0 address 9.8.7.8/32 |
注意这里不要用/24,我们配节点地址一般都是/32。如果错误配置/24,用以下命令删除
delete interfaces wireguard wg0 address 9.8.7.8/24
配置私钥
1 | set interfaces wireguard wg0 private-key /config/auth/wg.key |
提示:
Value validation failed
Set failed
报错了,私钥地址不对,之前在erx上创建的私钥地址为/home/ubnt/server_keys/privatekey,此外公钥地址”/home/ubnt/server_keys/publickey”
1 | set interfaces wireguard wg0 private-key /home/ubnt/server_keys/privatekey |
以上是interface信息,下面配置peer段相关参数包括endpoint、publickey和allowedips
1 | set interfaces wireguard wg0 peer 6aXRbp+RgbxwNjvC7dTiXg9sOg3tkNiz6oBTq0uT/zY= endpoint 221.131.166.242:34567 |
以上命令记得是一行的,一定要注意。
1 | set interfaces wireguard wg0 peer 6aXRbp+RgbxwNjvC7dTiXg9sOg3tkNiz6oBTq0uT/zY= allowed-ips 9.8.7.0/24,10.139.27.0/24,10.139.22.0/24 |
注意命令写完要commit和save保存生效。
2025-10-4更新
为避免重启路由后上述不生效,最好到webui页面重新保存配置。
如果上述添加路由命令报错例如下面
1 | root@ubnt# commit |
那么要退出去使用show ip route查看是否有已存在的路由条目
并使用以下命令删除
delete protocols static route 10.139.27.0/24
目前在路由器上已经可以ping通对端局域网地址了
6、配置路由器转发局域网设备流量
参考链接https://github.com/WireGuard/wireguard-vyatta-ubnt/issues/137
在er-x本身就能打通远端peer的基础上只需要以下命令就可以了
其中wg0是er-x上wireguard接口名称,192.168.1.0/24是er-x局域网子网地址
1 | configure |
Tips:
配置文件保存在路由器的/config/config.boot
ubnt er-x 安装配置wireguard