全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 663|回复: 9

[美国VPS] 【已解决】求助PVE服务器套Wireguard,端口转发失效怎么办

[复制链接]
发表于 2023-12-14 23:09:44 | 显示全部楼层 |阅读模式
本帖最后由 Just纱世里 于 2023-12-15 19:09 编辑

解决了。见此贴: https://hostloc.com/thread-1250215-1-1.html


由于某些原因,家里面有个软路由刷了PVE做主系统,通过PPPOE拨号获取公网IP。
PVE后面连了几个客户端,通过vmbr0网卡获取内网IP。然后NAT成公网IP上网。

然后我想把里面的端口转发到公网IP上,
使用命令
  1. iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 18080 -j DNAT --to-destination 192.168.1.2:80
复制代码
  1. iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.2 --dport 18080 -j MASQUERADE
复制代码
转发后没问题,公网IP:18080可以访问。

但是PVE在国内,需要上网代理,想给客户端也顺便代理上。当我开启Wireguard后,端口转发直接连不上了。
我怀疑是路由问题,想使用 ip rule添加策略路由,把DNAT的回包打标,从哪来就从哪回,然而并不行,要么客户端不走代理,要么端口转发不通,要么两个都不行。
为了使用策略路由,我在wg配置文件里加上了”Table = Off“,通过ip route和ip rule设置路由表,但始终有问题。

我估计就是回程数据包走扶墙出去,然后源IP和之前不同,导致握手失败。

但是拿Openwrt试了下,链路层都全局代理的情况下,端口转发还可以使用,这是为什么?

我觉得大概率和默认路由有关,Op是怎么区分的?

折腾两天了都没搞定,特来发帖求助各位大神。

如果DNAT再加上SNAT,把源IP NAT成PVE的内网IP(192.168.1.1)再加一条静态路由
ip route add 192.168.1.0/24 dev vmbr0 table direct
似乎可以,但是SSH或者是其他的软件应该就看不见访客的真实IP了,但Openwrt还可以……
发表于 2023-12-14 23:55:57 | 显示全部楼层
应该要调路由,源地址为你的客户端的ip,源端口为80端口,目的地址任意的网关设为你的路由器的ip地址。
这样不会走wireguard就行了。
 楼主| 发表于 2023-12-15 00:05:02 | 显示全部楼层
我太难了 发表于 2023-12-15 00:55
应该要调路由,源地址为你的客户端的ip,源端口为80端口,目的地址任意的网关设为你的路由器的ip地址。
这 ...

感谢大佬,我明天再看看。需要在客户端都手动调吗,还是路由器(PVE)宿主机,我试过根据和源IP还有流入网卡来打标签在设置路由之类的,没成功,明天再试试。
不知道是不是因为Wireguard是网络层协议导致的,但Op套Warp就可以……

点评

我这样讲你看你理不理解,假设有个用户ip1访问你的服务器ip2,恰好你又装了wireguard ip3。本来应该是 ip2向ip1回数据包,这个时候会变成ip3向ip1回.  发表于 2023-12-15 00:16
 楼主| 发表于 2023-12-15 00:21:26 | 显示全部楼层
我太难了 发表于 2023-12-15 00:55
应该要调路由,源地址为你的客户端的ip,源端口为80端口,目的地址任意的网关设为你的路由器的ip地址。
这 ...

我理解,3向1回,然后1发现不是2回,握手失败。
肯定有办法避免,因为openwrt套上wg就还能正常回复,哪怕是真全局代理。
但是其他linux没有专门为路由器优化过,肯定需要调一些设置,只是我不知道怎么做。

我试过用iptabls标记回程数据包,试图走进来时使用的接口(ip2)但是不行:我再折腾折腾。

点评

所以你在你的80端口的服务器上面,要配置路由表。源端口为80端口的不经过wireguard即可。wireguard的流量也是通过路由表控制的。  发表于 2023-12-15 00:36
 楼主| 发表于 2023-12-15 17:03:10 | 显示全部楼层
@我太难了 感谢点拨,解决了,我待会发个教程
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-10 01:36 , Processed in 0.063052 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表