没有公网 IP ,阿里云搭建了 wireguard 中转,家里是用 openwrt 做旁路由回家。 现在的情况是外网和家里的胖路由都连接到阿里云的时候,是可以 ping 通的,而且外网可以通过 WG 的借口登入 openwrt ,WG 的网段是 10.7.0.0/24 ,但是却没有办法通过外网访问到 LAN 的网段 192.168.2.0/24 。 问了 ChatGPT 说需要设置 IP 转发,但是并没有看到有这个设置。 应该不是 IP 问题,因为 WG allowed 的 IP 是 0.0.0.0/0 ,那么这种情况下如果要通过外网访问家里 LAN 的网段,在端口转发上应该具体怎么设置?
![]() |
1
gunner168 2 天前 via Android
是不是防火墙没有放行 wireguard 的端口?我家里用 openwrt 搭的 wireguard ,搭好要开放端口才行,不用做转发,话说还有你家没 ipv6 吗?有的话直接走 v6 回家,再不行家里和手机装个 tailscale ,比 wiregurd 配置方便很多,还不用额外买服务器
|
![]() |
2
ooh 2 天前
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-IPv4-forwarding.conf
sysctl -p /etc/sysctl.d/99-IPv4-forwarding.conf 服务器上这样? |
![]() |
3
ooh 2 天前
@ooh 还有你干嘛要全部设置成 0.0.0.0/0 ,那岂不是你家里面局域网里面的那台访问 192.168.2.0/24 的流量都也跑到 wireguard 去了,你还能正常正常连接?
|
![]() |
4
ysc3839 2 天前
外网访问设备需要配置路由表 192.168.2.0/24 via wg0 ,且 OpenWrt 可能要用 ip rule 配置原路返回,不然回包估计是从 WAN 口发出的,不走 WireGuard 。
@ooh WireGuard 的 allowed ips 只是收到包时检查源 IP 是否在此范围内,不在则丢弃,跟路由无任何关系。 |
![]() |
5
kaiqiz89 OP @gunner168 防火墙放行了,我把 WG 加到了 LAN 域里面,从外面来的外网可以访问到 WG 的端口,可以登入 Openwrt ,但是就是访问不到 LAN 口。
|
7
nonikka 2 天前
我用的 unraid 自带 wireguard ,之前也是不能访问本地其他设备,后面发现是 peer 类型设错了,allow lan access
|