Server 端安装在有公网的云主机上.
WireGuard 的网段是 10.0.0.0/24
家中的路由器网段是 192.168.31.0/24
我按照 Google 的一些教程配置了 WireGuard, 现在只能通过 WireGuard 的 IP 访问所有连入 WireGuard 局域网中的设备. 并不能访问其所在的局域网.
问: 如何在外通过192.168.31.1访问位于家中的局域网, 家中只有 Windows 系统,没有软路由.
1
JLTHU 2022-06-04 19:40:21 +08:00 2
那需要你内网的其中一台设备(比如 192.168.31.2 )充当网关去做 SNAT
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j SNAT --to-source 192.168.31.2 |
2
jasonyang9 2022-06-04 21:55:02 +08:00 1
核心配置就是 1 楼讲的,局域网中的 WG 节点必须开启 IP 转发和 MASQUERADE ,或者说 SNAT ;
但 Windows 不清楚,一般都是 Linux 跑 WG 。 推荐看看这个站的教程,写的比较通透,各种拓扑都有。典型的点到站配置: https://www.procustodibus.com/blog/2020/11/wireguard-point-to-site-config/#configure-routing-on-host-b |
3
zro 2022-06-04 22:25:18 +08:00 1
不做 NAT 也可以,家中网段加条静态路由。。
|
4
clickhouse 2022-06-05 01:10:46 +08:00
iptables 配置一下转发就行。
|
5
noqwerty 2022-06-05 02:49:05 +08:00
不想折腾的话可以直接 Tailscale ,你需要的功能可以直接用 subnet router 或者 exit node 实现
|
6
me221 OP @JLTHU @jasonyang9 感谢你们提供的方法, 不过没有 Linux 设备了,无法尝试.
@zro 在 Windows 运行了 **route ADD 192.168.31.0 MASK 255.255.255.0 192.168.31.1 METRIC 3 IF 14** 还是不行. 请问一下 route 添加在那个网卡(wifi 网卡还是 Wireguard 虚拟网卡) @noqwerty Tailscale 确实好用! 不过还是想自己折腾 |
7
Kinnice 2022-06-05 08:37:58 +08:00 via Android
route ADD 192.168.31.0 MASK 255.255.255.0 wg 的对端 ip
|
8
Kinnice 2022-06-05 08:39:00 +08:00 via Android
就是你家里的 wireguard 获得的 ip 10.0.0.x
|
12
dennisun 2022-06-06 15:39:16 +08:00
我的情况是:
server 端是威联通 VPN 自带的 wg 功能 家中宽带有公网 ip ,端口转发到威联通 在威联通内配置 A (公司-windows ),B (另一套房子-windows )两个 peer 现在是 A 和 B 均能访问家里的局域网,但是 A 和 B 两者之间无法互动,求教~ |
13
me221 OP 最终的解决方案: 放弃了 Windows , 使用 Linux 开发 ipv4 转发即可.....
|
14
dasidj12 2022-06-29 17:17:01 +08:00
你好,遇到同样问题 能贴下配置文件吗?
|
17
me221 OP |
18
me221 OP @liekkas20 GitHub: [Github]( https://git hub.com/antwuu/Profile/tree/main/Conf/WireGuard)
推荐参考#2 的连接. 写的很全很通透 |
20
billytom 2022-07-01 20:52:26 +08:00
在这里借楼请教下 V2 的大神
[debian11 ,ufw 防火墙] 服务器端:192.168.188.99 (内网 IP ) 10.0.100.1 ( wireguard IP ) 192.168.192.248 ( Zerotier IP ) WG 网段 10.0.100.0/24 Zerotier 网段:192.168.192.0/24 公司内网网段:192.168.10.0/24 ; 192.168.80.0/24 私人家庭网段:10.0.123.0/24 ; 10.0.122.0/24 ; 10.0.121.0/24 现在有个问题,我服务器端安装了 wireguard 和 zerotier ,wireguard 工作用,接入公司网络。zerotier 私人用接入家庭网络。在这台 192.168.188.99 服务器上,我可以 ping 通公司和私人的所有网段内机器。 但远程的话,用 zerotier 接入,可无障碍访问 公司网段 和 私人家庭网段 ,但如果用 wireguard 接入,就只能访问该服务器和公司网段,而靠 zerotier 连接到改服务器的 10.0.xx.0/24 的机器全都无法访问 (简单点说就是想通过 wireguard 接入从而访问家里电脑不能) 路由表: root@WG:/etc/ufw# ip route default via 192.168.188.254 dev ens192 metric 100 onlink 10.0.100.0/24 dev wg0 proto kernel scope link src 10.0.100.1 10.0.120.0/24 via 192.168.192.188 dev ztyxa66ssl proto static metric 5000 10.0.121.0/24 via 192.168.192.172 dev ztyxa66ssl proto static metric 5000 10.0.122.0/24 via 192.168.192.232 dev ztyxa66ssl proto static metric 5000 10.0.123.0/24 via 192.168.192.119 dev ztyxa66ssl proto static metric 5000 192.168.188.0/24 dev ens192 proto kernel scope link src 192.168.188.99 metric 100 192.168.192.0/24 dev ztyxa66ssl proto kernel scope link src 192.168.192.248 |
21
zxq1002 2023-11-06 13:47:58 +08:00
@billytom 兄弟后来解决了吗,我用华硕路由器启动的 wireguard ,也是能访问互联网和路由器,但不是访问内网。。
|
22
nooneanyone 275 天前
@me221 #18 404 了
|