我电脑: wireguard IP:10.101.0.2 对方电脑: wireguard IP:10.101.0.3 另外一个网卡:172.16.36.88
我电脑可以 ping 通对方电脑的 10.101.0.3 , 对方也可以 ping 通我电脑的 10.101.0.2 ,
对方电脑可以访问 172.16.36.201 的 web 服务
请问怎么设置 我电脑可以访问 172.16.36.201 的 web 服务或者对方电脑同局域网的其他电脑
请大佬指导,谢谢
1
htfcuddles 2022-01-14 15:22:49 +08:00
172.16.36.201 不是本机,所以要 SNAT
linux 的话 iptables 转发 /etc/wireguard/wg.conf: PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ethX -j MASQUERADE ethX 是第二网卡名 /etc/sysctl.conf: net.ipv4.ip_forward = 1 |
2
preach 2022-01-14 15:22:57 +08:00
对方电脑 vswitch 两个网卡
|
3
conupefox 2022-01-14 15:23:13 +08:00
是 windows 吗?用 internet 连接共享应该可以。
对方电脑把 172.16.36.88 那个网卡共享给 10.101.0.3 那个网卡。 你自己的电脑加一条静态路由,cmd 里面输入 route add 172.16.36.0 mask 255.255.255.0 10.101.0.3 |
4
htfcuddles 2022-01-14 15:26:02 +08:00
windows 的话 ics 应该行,随便找了篇将就看看
https://support.ringcentral.com/article/Enable-Internet-Connection-Sharing-ICS.html |
5
iMercer 2022-01-14 15:27:11 +08:00 via iPhone
在你电脑上设置路由表规则:destnation: 172.16.36.1/24
gateway: 10.101.0.3 |
6
pproxy 2022-01-14 15:35:51 +08:00
检查一下.2 的 peer 的 allowed-ips 吧
说回来 wireguard 的 allowed-ips 的确很容易让人误解 |
7
waynevan OP @htfcuddles 两台电脑都是 Windows 系统
|
8
waynevan OP |
10
FakNoCNName 2022-01-14 15:42:39 +08:00
wireguard 里面有个 AllowedIPs ,可以用来指定哪些 ip 走 vpn ,你可以试试在自己电脑的 wireguard 里面加上 172.16.36.1/24 这个网段。
|
11
ik 2022-01-14 15:54:32 +08:00 via iPhone
访问对方主机,你这边需要添加路由
还需要访问对方整个网络的话,对方主机还需要添加 nat |
12
waynevan OP |
13
zagfai 2022-01-14 16:25:25 +08:00
tailscale 瞬间搞定
|
14
ericbize 2022-01-14 16:33:33 +08:00
写路由,把 172.16 写到 隧道里面去
|
15
ericbize 2022-01-14 16:34:06 +08:00
当然可能其中会有,nat , 防火墙 转发 一大堆的东西要调
|
17
digimoon 2022-01-14 16:49:05 +08:00
什么系统? linux 的话要设置打开 ip 转发然后再设好路由表和 iptables ,windows 的话就不知道怎么搞了
|
18
acbot 2022-01-14 16:49:19 +08:00
wireguard IP:10.101.0.3 支持转发的话,要在两边做静态路由
wireguard IP:10.101.0.2 做目标 172.16.36.88 的路由 下一跳 10.101.0.3 wireguard IP:172.16.36.88 做目标 10.101.0.2 的路由 下一跳 10.101.0.3 |
21
digimoon 2022-01-14 16:52:59 +08:00
你的电脑这边的 allowips 需要添加 172.16.36.201 ,这样你电脑 wg 连上对面的时候就会自动添加路由表,访问 172.16.36.201 的时候往对面跑
对面 linux 的话要开 ip 转发 net.ipv4.ip_forward=1 ,还要设好 iptables 的 forward 链 |
22
digimoon 2022-01-14 16:54:24 +08:00
@waynevan windows 就不知道怎么设这个了,你电脑这边只需要设 allowips 就行了,剩下的部分需要对面那边设置
|
23
digimoon 2022-01-14 16:57:00 +08:00
注意一下就是 172.16.36.201 也需要设置静态路由,如果不想设的话只能在对面电脑上 172 出口用 nat
|
24
coolan 2022-01-14 17:05:35 +08:00
对方主机上开启 Routing and Remote Access 服务试试。参考: https://www.cocosec.com/archives/561.html
|
25
coolan 2022-01-14 17:18:59 +08:00
应该不行,你需要对方机器给你做 NAT ,干脆在他那部署一个代理服务器,你连接代理算了。
|
26
jiangwei2222 2022-01-14 17:37:06 +08:00 via Android
让对方开个 openvpn ,然后你连 vpn 过去,你如果什么都不懂的话别折腾什么转发了
|
27
otangee 2022-01-14 17:55:12 +08:00
网段转发的话需要对方需要配置 iptables 转发(参考一楼),本地需要配置路由表,同时 wiregurad 上要修改对方节点的 allowips,简单起见的话,可以考虑使用 netmaker 或是 tailscale
|
29
disk 2022-01-14 19:09:42 +08:00
不行吧。看描述,貌似你和对方电脑都是 client ,需要去配置 server 才能做到网络接入,还是让对方开个端口转发到 10.101.0.3 吧。
|
30
jasonyang9 2022-01-14 19:18:24 +08:00
这是典型的点到站拓扑,Point to Site ,对方节点要配置 MASQUERADE 或 SNAT ,开启 IP 转发
|
31
waynevan OP @jasonyang9 对方是 Windows 系统
|
32
waynevan OP @jiangwei2222 wireguard 就是和 openvpn 差不多的 都是 vpn ,现在就是能访问对方,然后想访问对方同局域网其他电脑。
|
33
jasonyang9 2022-01-14 19:37:25 +08:00
@waynevan 搜了一下,看上去 Windows 应该也是可以的。但这里我出个歪招啊,Windows 上面跑个 VBOX 或容器,最小安装的 Debian 或其它发行版,WG 配置好,一把梭,666
|
34
waynevan OP @jasonyang9 闲鱼上的卖家说 需要加个软路由
|
37
0gys 2022-01-14 21:22:53 +08:00 via iPhone
我记得 windows 有网桥服务。如果对方电脑这两个网卡做成网桥形式,你在你这设置 172.16.36.0/24 段地址按理是可以访问的。前提是这两个网卡能做成网桥形式。如果对方是 Linux,设置源地址转发 snat 也是可行的。
|
38
yorkyoung 2022-01-14 21:41:43 +08:00
我的思路是你 0.2 的 wg 配置 allowed IP 要加上 127.16.36.88/32
路由一跳到 0.3 二跳到 172 每一跳都需要加路由规则 |
39
wlh233 2022-01-14 21:45:15 +08:00
我有过类似需求,但我做法很粗暴,尝试过两种方式都是工作在应用层:一是用 sshuttle ;二是直接在 10.101.0.3 跑一个 v2ray server, 需要访问 172.16.36 网段就挂着代理。不过我的 10.101.0.3 不是 Windows
|
40
yorkyoung 2022-01-14 21:45:17 +08:00
我的思路是你 0.2 的 wg 配置 allowed IP 要加上 127.16.36.0/24
路由一跳到 0.3 二跳到 172 每一跳都需要加路由规则 或者把.201 也加入到你的 wg 内网来 或者在 0.3 上装个 gost 来端口转发也能实现你说的效果 |
42
waynevan OP @zagfai 我看了 tailscale 的文档,说不支持 Windows 做网关。
Currently, we only support Linux devices as subnet routers. We plan to support this feature on Windows and macOS in the future. |
44
waynevan OP 发现 Exit Nodes 这个网关是,做内网出口的,不是从外面访问内网用的
|
45
volks 2022-01-15 00:06:36 +08:00 via Android
学习一下,同样的需求(两个 Windows )没搞成功。看到有文章里打开路由服务就可以,但我打开了也没效果
|
46
ciichen 2022-01-15 00:15:04 +08:00 via Android
172 网段的网关需要手动添加路由表,转发 wg 的 10 网段目的地址到对方电脑的 172 网段 ip 地址。
然后你的电脑的 wg ,需要设置 172 网段对应网关为对方电脑。 对方电脑开启路由转发。 或者,在对方电脑装个 xray ,监听 wg 10 网段 |
47
ciichen 2022-01-15 00:16:27 +08:00 via Android
你的电脑通过 wg ,连接对方电脑的 xray 服务端。然后浏览器使用 xray 代理,xray 开启全局转发。
|
48
ciichen 2022-01-15 00:20:14 +08:00 via Android
关键是,如果 172 网段的 web server 发现 10 网段源地址的请求,回复的数据包会发送到默认网关。而默认网关若是找不到前往 10 目的网段的下一跳路由,可能直接把数据包丢弃。
|
49
hawhaw 2022-01-15 07:00:56 +08:00 via Android
为毛搞不成呢?楼上已经有人把东西都说的很清楚了
1, 在电脑 2 上做 nat ,这样不需要在 172 段设回程路由 2, 在电脑 2 上做转发,这样需要 172 段设置回 10 段的路由 |
50
GHvyuR7N 2022-01-15 08:51:01 +08:00 via iPhone
其实吧,如果有特别重要的事情需要立即弄,还有一种选择是买个蒲公英。就是基础宽带低…
|
51
thisismr2 2022-01-15 11:20:20 +08:00
你的电脑管理员权限运行:
$ zonenetclient --zoneuuid ZONE_UUID --name windows1 对方电脑管理员权限运行: $ zonenetclient --zoneuuid ZONE_UUID --name windows2 --map '80 172.16.36.201:80' 然后你的电脑就可以访问 对方电脑 的 zone ip 的 80 端口就等于访问 172.16.36.201:80 |
52
illl 2022-01-15 14:50:30 +08:00 via iPhone
试一下看雪的 ksa ,aHR0cHM6Ly9rc2Eua2FueHVlLmNvbS8=
|
53
ji39 2022-01-15 15:02:36 +08:00
对方反代行不行
|
54
tailf 2022-01-15 15:17:22 +08:00
|
55
tailf 2022-01-15 15:19:21 +08:00
接上条。
SSH 连上之后不要关,然后在你电脑上访问 127.0.0.1:8000 就可以拿到 172.16.36.201:80 的网页了 |
56
waynevan OP @illl 这个工具好用,解决了,谢谢。你把你的支付宝账号发我,我给你转 20 。我的 pho-ne:1318-67-816-05
|
57
xsen 2022-01-16 06:03:17 +08:00
tailscale ,对方电脑设置 subnet router
Subnet routers and traffic relay nodes https://tailscale.com/kb/1019/subnets/ |
58
guanzhangzhang 2022-01-16 22:56:39 +08:00
如果两个都是 linux ,例如 openwrt 之类的话就很简单了,开启转发和 masq 即可
|
60
waynevan OP |
63
ericww 2022-01-17 12:38:19 +08:00
修改 wireguard 配置和开启 ics 就可以了。你的 AllowsIPs=10.101.0.0/24,172.16.36.0/24 。对方 172 网卡属性允许共享,然后对方 wireguard 网卡会被 windows 修改 IP ,只要手动再设置固定 IP 10.101.0.3 就可以了。你就能访问整个 172.16.36.0/24 网段了。
|
64
echoechoin 2022-01-18 11:56:48 +08:00
windows 用 netsh: 在对方电脑管理员方式打开 cmd ,运行:netsh.exe interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=172.16.36.201 , 这样对方电脑会监听 80 端口给 172.16.36.201:80 做正向代理
|
65
Lentin 2022-07-26 18:47:17 +08:00 via iPhone
https://kenvix.com/post/setup-nat-on-windows/
这里找到了个方法 可以试一下 |