V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jonsshyu
V2EX  ›  宽带症候群

如何通过 wireguard 把家里的自建游戏服务器端口暴露在云服务器上?

  •  
  •   jonsshyu · 2025 年 5 月 23 日 via Android · 2990 次点击
    这是一个创建于 245 天前的主题,其中的信息可能已经有所发展或是发生改变。

    家宽有公网 ip ,自己搭建游戏服务器和几个朋友联机玩。 为了改善联机体验,买了一台有公网 ip 的阿里云 win 服务器。 两边配置了 wireguard 建立连接。 现在的问题是如何把家里服务器的端口暴露到阿里云 win 服务器上给朋友接入? 目前能想到的是云 win 服务器开启 nat 转发,把入站端口转发到 wg 的 ip:port ,这样可行吗? 或者还有没有别的可行方案?不想用 http/s ,怕被封。

    16 条回复    2025-05-30 10:42:21 +08:00
    starryloki
        1
    starryloki  
       2025 年 5 月 23 日
    “目前能想到的是云 win 服务器开启 nat 转发,把入站端口转发到 wg 的 ip:port ,这样可行吗? ”
    可行,配好路由表即可
    virualv
        2
    virualv  
       2025 年 5 月 23 日 via iPhone
    frp
    linhu66
        3
    linhu66  
       2025 年 5 月 23 日
    家宽有公网 ip 直接路由器端口转发就行了
    totoro625
        4
    totoro625  
       2025 年 5 月 23 日
    可行,注意一下阿里云的阻断,特殊情况下 ipv6 有奇效
    coolcoffee
        5
    coolcoffee  
       2025 年 5 月 23 日
    阿里云的服务器都是 BGP 多线接入的,遇到阻断限流的概率会比家宽小。

    楼主可以将阿里云公网的端口直接转发给 wireguard 其他设备的 ip 和端口,这样就完成了公网暴露内网的资源。

    nginx 会简单一点,配置一个 stream proxy_pass 就行。
    peasant
        6
    peasant  
       2025 年 5 月 23 日
    游戏服务器端口应该是 tcp 或者 udp 的吧?如果端口不能通过 http 访问,直接在服务器做端口转发把流量转发到家宽的公网 IP 上就行了,根本不需要套 wg
    zhangsanfeng2012
        7
    zhangsanfeng2012  
       2025 年 5 月 23 日   ❤️ 1
    让你朋友也用 wg 拨号到服务器上,三台 pc 用同一个网段 ip ,这样安全风险还小
    Puteulanus
        8
    Puteulanus  
       2025 年 5 月 23 日
    6L 说得对啊,两边都有公网,直接转发不就行了,怎么 nat 都来了
    不想用 http 是啥意思,不想 http 的服务直接暴露在家宽公网端口上导致家宽被封?游戏服务器是用的 http 通信的么
    f14g
        9
    f14g  
       2025 年 5 月 23 日
    gost 做端口映射,或者直接用 netsh 做端口映射。
    Yanlongli
        10
    Yanlongli  
       2025 年 5 月 23 日
    防火墙转发
    xqzr
        11
    xqzr  
       2025 年 5 月 23 日   ❤️ 1
    云(Windows):
    netsh interface ipv4 set interface <WG 网卡名称> forwarding=enabled
    做 TCP DNAT
    netsh interface portproxy add v4tov4 listenaddress=<网卡 IP> listenport=<端口> connectaddress=<家 WG 网卡 IP> connectport=<游戏端口>

    家(Linux?):
    WG 配置:
    Table = 500
    ...
    allowed-ips = 0.0.0.0

    ip ru from <WG 网卡 IP> table 500

    https://www.procustodibus.com/blog/2024/07/forwarding-wireguard-on-windows/
    ysc3839
        12
    ysc3839  
       2025 年 5 月 23 日 via Android
    云服务器是 Windows 的话比较尴尬,因为缺很多网络功能。
    如果是 Linux 的话,装 firewalld ,配置端口转发规则,家里的设备 WireGuard 上配置允许 IP 为 0.0.0.0 。
    mabelrussell
        13
    mabelrussell  
       2025 年 5 月 24 日 via iPhone
    tailscale
    chapiom
        14
    chapiom  
       2025 年 5 月 24 日 via iPhone
    有公网开端口映射不就好了,最简单网速影响最小的方案,除非这游戏用 80 或者 433 端口
    Kinnice
        15
    Kinnice  
       2025 年 5 月 24 日 via Android
    LodonBoy10086
        16
    LodonBoy10086  
       2025 年 5 月 30 日
    #0 你有结论了吗。我觉得用#6 说的端口转发就够了,gost 我没用过,realm 我用过很好用 https://github.com/zhboner/realm
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   882 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:33 · PVG 05:33 · LAX 13:33 · JFK 16:33
    ♥ Do have faith in what you're doing.