V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
paperseller
V2EX  ›  问与答

无意中在特定配置实现了 wireguard in proxy 并穿透回家,大家能帮忙看下哪一部分做成的吗?

  •  
  •   paperseller · 150 天前 · 1309 次点击
    这是一个创建于 150 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简述大致配置:家庭局域网中 ROS 作主路由并配置 wg ,endpoint 为 vps-ip ,allow address 为 wg 局域网段 10.0.0.0/24 。pve 中 debian 容器部署 dns 服务器和 xray 客户端,xray 以 tproxy 加 nftables 和 iproute 规则实现透明代理(经测试 xray 节点选择与穿透实现无关); vps 机器配置 wg 和 xray 服务端,vps 的 wg 额外配置了 iptables 规则和 ros 节点家庭局域网段:

    [Interface]
    Address = 10.0.0.1/32
    ListenPort = 51828
    PrivateKey = key
    
    PostUp = iptables -I FORWARD -s 10.0.0.0/24 -i wg0 -d 10.0.0.0/24 -j ACCEPT
    PostUp = iptables -I FORWARD -s 10.0.0.0/24 -i wg0 -d 192.168.88.0/24 -j ACCEPT
    PostUP = iptables -I FORWARD -s 192.168.88.0/24 -i wg0 -d 10.0.0.0/24 -j ACCEPT
    
    PostDown = iptables -D FORWARD -s 10.0.0.0/24 -i wg0 -d 10.0.0.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -s 10.0.0.0/24 -i wg0 -d 192.168.88.0/24 -j ACCEPT
    PostDown = iptables -D FORWARD -s 192.168.88.0/24 -i wg0 -d 10.0.0.0/24 -j ACCEPT
    
    #ros
    [peer]
    PublicKey = key
    AllowedIPs = 10.0.0.4/32, 192.168.88.0/24
    
    #client
    ...
    

    上述 wg 配置在单独使用 wg 节点直连后经常被封 wg 端口,后来未使用但也没有关闭两端的 wg 服务。 偶然发现在小火箭和 loon 等效配置的 skip-proxy 和 tun-excluded 中删除大部分局域网段,并将家庭局域网段 192.168.88.0/24 设为代理规则,即能够在小火箭或 loon 中使用与 wg 相同 vps 机器的 xray 节点直接实现穿透,即使 wg 端口的直连被阻断。 如果能找出实现的具体原理也能方便以后重现,谢谢各位大佬了

    2 条回复    2025-04-24 22:40:05 +08:00
    vibbow
        1
    vibbow  
       150 天前
    不需要写这些 PostUp 和 PostDown 的呀,wg 启动后会自动把 AllowedIP 里的地址加到路由表的。
    paperseller
        2
    paperseller  
    OP
       150 天前
    @vibbow 路由规则是以前照着别人教程加的。自己不知其所以然,所以也不懂为什么这配置能在客户端直接用 xray 节点穿透
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5526 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 03:21 · PVG 11:21 · LAX 20:21 · JFK 23:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.