爱快Q3000与immortalwrt24.10.6配置wireguard实现网络互通。

发布于 2026年05月14日

提示词:

1、我有一个爱快路由器,型号Q3000 在我老家六盘水盘州。接入300M宽带,有公网IPv6地址。
2、我还有一个cmcc rax3000m路由器,已经刷入immortalwrt24.10.6  在贵阳。接1000M宽带,有公网IPv6地址。
3、2台路由器上我均已配置DDNS  自动解析IPv6地址
现在我想在这2个路由器上配置wireguard.打通2地网络,通过ipv4互通内网。ImmortalWrt  25.12.0-r2 我还没有安装wireguard.
使用的时apk安装软件。请给我详细的教程。

根据你的需求(两台 ImmortalWrt 路由器通过 IPv6 公网地址建立 WireGuard 隧道,实现两地 IPv4 内网互通),以下是详细配置教程


该教程文档所搭建得Wireguard服务端主要在爱快路由器,并且可以正常使用。Opentwrt端的服务端不能正常使用,原因我想大概是运营商限制了。为啥爱快路由器上的服务端没有被限制呢,AI搜索了一下,说是爱快在Wireguard的基础上作了改动,可以减低运营商封锁的几率。

第一步:在两台路由器上安装 WireGuard

爱快路由器上无需安装WireGuard

通过 SSH 登录到每台路由器,执行以下命令:

# 更新软件源
opkg update
# 安装 WireGuard 内核模块和工具(关键步骤)
opkg install wireguard-tools kmod-wireguard luci-proto-wireguard

说明

  • wireguard-tools:提供 wgwg-quick 命令行工具。

  • kmod-wireguard:WireGuard 内核模块(必须安装,否则无法创建隧道)。

  • luci-proto-wireguard:LuCI Web 界面插件(可选,但推荐用于可视化配置)。

安装完成后验证:

modprobe wireguard
wg

若无报错,说明安装成功。如果有报错需要解决报错。

安装完成后重启路由器:

reboot

第二步:规划网络参数

参数

盘州爱快路由器 (Q3000)

贵阳 CMCC 路由器 (RAX3000M)

公网 IPv6 地址

240e:xxx:xxxx::a (DDNS: panzhou.example.com)

2409:xxx:xxxx::b (DDNS: guiyang.example.com)

内网 IPv4 网段

192.168.9.0/24

192.168.8.0/24

WireGuard 私有 IP

10.0.0.1/24

10.0.0.2/24

监听端口

58081

58081

⚠️ 注意:

  • 确保两台路由器的防火墙放行 UDP 端口 58081(IPv6 流量)。

  • DDNS 已正确解析 IPv6 地址(可通过 ping6 panyu.example.com 测试)。


第三步:生成密钥对

在每台路由器上生成密钥(SSH 执行):

盘州路由器 (Q3000)

在immortalwrt上执行

mkdir -p /etc/wireguard
chmod 700 /etc/wireguard
# 生成私钥和公钥
wg genkey | tee /etc/wireguard/private_q3000.key | wg pubkey > /etc/wireguard/public_q3000.key

# 查看公钥(记录下来)
cat /etc/wireguard/public_q3000.key
# 输出示例: A1B2C3...xyz= (记为 PUBLIC_KEY_PANZHOU)

贵阳路由器 (RAX3000M)

mkdir -p /etc/wireguard
chmod 700 /etc/wireguard
wg genkey | tee /etc/wireguard/private.key | wg pubkey > /etc/wireguard/public.key
cat /etc/wireguard/public.key
# 输出示例: X9Y8Z7...abc= (记为 PUBLIC_KEY_GUIYANG)

第四步:配置 WireGuard 隧道

1. 盘州路由器配置

  • 登录爱快后台 → 网络设置 →VPN客户端-> WireGuard添加新接口

  • 填写以下参数:

    • 名称: wg0

    • 本地公钥: 粘贴 /etc/wireguard/public_q3000.key 的内容

    • 本地私钥: 粘贴 /etc/wireguard/private_q3000.key 的内容

    • 监听端口: 58081

    • 分配的 IPv4 地址: 10.0.0.1/24

  • 添加对端 (Peer):

    • 公钥: 贵阳路由器的公钥 (PUBLIC_KEY_GUIYANG)

    • 端点主机: guiyang.example.com (贵阳的 DDNS 域名)

    • 端点端口: 58081

    • Allowed IPs: 192.168.8.0/24, 10.0.0.2/32 (允许访问贵阳内网)

    • Persistent Keepalive: 25 (秒)

2. 贵阳路由器配置(通过 LuCI 界面)

  • 进入 LuCI → 网络 → 接口添加新接口

  • 填写参数:

    • 名称: wg0

    • 协议 WireGuard VPN

    • 私钥: 贵阳的私钥

    • 监听端口: 58081

    • 分配的 IPv4 地址: 10.0.0.2/24

  • 添加对端 (Peer):

    • 公钥: 盘州路由器的公钥 (PUBLIC_KEY_PANZHOU)

    • 端点主机: panzhou.example.com

    • 端点端口: 58081

    • Allowed IPs: 192.168.9.0/24, 10.0.0.1/32

    • Persistent Keepalive: 25


第五步:配置防火墙和路由

1. openwrt路由器中将 WireGuard 接口加入 wg0区域

  • 网络 → 防火墙 中:

放开openwrt路由器中的58081端口。我这里的DDNS解析到br-lan接口的ipv6地址。在网络->通信规则中配置如下,保存应用。

2. 添加静态路由(关键!)

  • 盘州路由器:

    • 网络 → 静态路由 → 添加:

      • 目标: 192.168.8.0/24

      • 网关: 10.0.0.2 (贵阳的 WG 私有 IP)

  • 贵阳路由器:

    • 网络 → 静态路由 → 添加:

      • 目标: 192.168.9.0/24

      • 网关: 10.0.0.1 (盘州的 WG 私有 IP) 这里是在Luci界面添加的,我添加后,并不能ping通192.168.9.1 使用以下方式3添加路由

3.通过 /etc/config/network 手动配置(可靠)

vi /etc/config/network

config interface 'wg0' 下添加:

list iproute '192.168.9.0/24 via 10.0.0.1'

然后重启网络:

/etc/init.d/network restart

再检查:

ip route show | grep 192.168.9
# 应输出:192.168.9.0/24 via 10.0.0.1 dev wg0

第六步:测试连通性

  1. 检查隧道状态:

    wg show wg0
    • 确认 latest handshake 时间在 1 分钟内。

  2. 测试内网互通:

    • 从盘州内网设备 ping 贵阳内网设备:

      ping 192.168.8.1
    • 从贵阳内网设备访问盘州的服务(如 NAS、摄像头)。


生成手机端配置文件

在immortalwrt上执行

mkdir -p /etc/wireguard
chmod 700 /etc/wireguard
# 生成私钥和公钥
wg genkey | tee /etc/wireguard/private_vivox200.key | wg pubkey > /etc/wireguard/public_vivox200.key

# 查看公钥(记录下来)
cat /etc/wireguard/public_vivox200.key

# 查看私钥(记录下来)
cat /etc/wireguard/private_vivox200.key

客户端下载https://my.feishu.cn/drive/folder/AGYNfOmBal2wiRdkDu4cOOGUnIc?from=from_copylink

immortalwrt 网络->接口-wg0->对端->添加对端

保存一下对端配置,然后再进入这个对端中,点击生成配置。如下填写。手机端扫码导入配置。

故障排查

  1. 无法建立隧道:

    • 检查公网 IPv6 是否可达:ping6 guiyang.example.com

    • 检查防火墙是否放行 UDP 58081(IPv6)。

    • 使用 tcpdump -i eth0 udp port 58081 抓包验证流量。

  2. 能连通 WG 接口但无法访问内网:

    • 确认静态路由已正确添加。

    • 检查对方路由器的防火墙是否允许来自 10.0.0.0/24 的流量。


通过以上步骤,你的两地网络将通过 IPv6 公网建立加密隧道,实现 IPv4 内网无缝互通。



评论