请教下 war3 局域网远程联机问题

342 天前
 edward1987

背景:和朋友最近复古打机,玩 war3 ,想各自在家的时候也能玩,查资料得知 war3 局域网是通过 udp:6112 + tcp:6112 两种交互完成

我有一台腾讯云的 vps 。

尝试 1:我的电脑 A,朋友电脑 B,朋友家有一台和 B 局域网的服务器 C 。

通过 vps+gost ,在 C 上开启本地端口( udp+tcp) 6112 并转发到 VPS 上,在我的电脑 A 上通过远程端口转发 ( rtcp 和 rudp ),将 VPS 上的请求转发到我本地 6112 上。

整体调用链是:B 开了房间,会全局广播 UDP ,C 收到广播,通过 VPS 转发到我本地 6112 端口。 但是 UDP 转发却失败了,每次广播我本地是有看到请求的,但是 C 上面一直报 i/o timeout 。我电脑上也看不到房间。方案一失败,不知道为何?

尝试 2: 组建 zerotier 内网,组建成功,设备都加入了同一个子网,也能 ping 的通,延时 30ms 。但是还是看不到房间,udp 的广播一点都没收到,我也不知道为啥😂

大佬们有啥好的方案嘛? 或者帮忙看看我的方案有啥问题,中年人打机不容易

3905 次点击
所在节点    程序员
50 条回复
liuzhedash
342 天前
没理解 C 的用途是啥,只是看 udp 广播有没有广播出去?
其实有个简单的思路,在 vps 上搭个 openvpn ,然后 AB 都连上去。
bruce0
342 天前
VPN 应该能解决这个问题吧, 一个人开 VPN 服务, 另一个人连接上去, 前提是开 VPN 服务的那个人需要有公网 IP
FlyPuff
342 天前
最无脑的解决方法,这种现成的 xx 对战平台就支持的游戏,直接用就好了诶。不过,不知道这些对战平台还健在没有,很多年没玩过了。。。
ikuan
342 天前
这个之前玩文明 6 局域网连接研究过,挺复杂的,试过一堆开源软件,而且 windows 上还要配虚拟网卡的优先级,还得看当前网络 nat 类型啥的,不过有个现成的软件解决方案 搜搜 EasyN2N(小黄鸭),亲测可用。
bruce0
342 天前
@bruce0 具体的我也没有搭建过, 你可以搜一下 open vpn 的搭建方式 我们公司居家办公的的时候用的就是 open vpn 连接到公司内网, 两个人联机打游戏, 只要模拟链接到另一个人的内网应该能满足
edward1987
342 天前
@liuzhedash C 作用是收到广播并转发广播用,没有 C 的话我不知道咋直接转发😂,openVPN 我看看~
@bruce0 嗯好我下次试下 openvpn
@FlyPuff 对战平台现在存活的很少了,不支持自己开图了
yswb
342 天前
windows 的 udp 广播只发一个网卡,试试类似 https://github.com/ubihazard/broadcast 这样的工具,把广播发到所有网卡(理论可行,我没试过)
edward1987
342 天前
@yswb zerotier 确实有可能是这个问题!下回我试下
@ikuan 好,下回我试试 EasyN2N~
ipfox
342 天前
@FlyPuff +1 ,省的折腾
root01
342 天前
n2n 专门搞这个的
fuzzys
342 天前
radmin vpn 专门局域网联机用的,甚至不需要 vps
documentzhangx66
342 天前
1.技术上:
A.你朋友家里,FRP 服务器 C 的 war3 Server 端口到 VPS 的任意端口。
B.你的 PC ,socat 转发 war3 client 本地端口到 VPS 的相关端口。

你第一次搞这事的话,整个调试过程非常麻烦。

2.使用 zerotier ,VPS 上建立 moon 节点,然后服务器 C 与你的电脑安装 leaf 节点,你的电脑能直接 ping 通服务器 C 就够了。

3.以上两条方案,我都不建议。我建议你使用现成的对战平台。

4.但以上 3 条方案,我也不太建议。因为现在 Steam 上面有非常多的好玩的联机游戏,你和朋友玩,不超过 4 个人,我强推 Deep Rock Galactic 。这游戏现在是 Steam 上组队 PVE TOP 1 的游戏。你可以去 B 站看看游戏视频。
dode
342 天前
两边都是家庭宽带,有公网 IP 吗,直接端口映射,wiregurad 组网看看,
CheckMySoul
342 天前
试试 openvpn 的桥接模式,腾讯云 vps 启动 openvpn 服务 tap 桥接模式,你和朋友练上去,网卡分配 VPC 的 IP ,具体看这 https://community.openvpn.net/openvpn/wiki/BridgingOverviewhttps://community.openvpn.net/openvpn/wiki/BridgingAndRouting
lesismal
342 天前
搭个 BN 大家一起玩?
https://github.com/pvpgn/pvpgn-server
siknet
342 天前
整那么麻烦干嘛,11 平台自建地图房
happyn
342 天前
我们的服务 happyn ,基于 n2n 的,可以用于游戏联机:
happyn
342 天前
missdeer
342 天前
记得当年 war3 联机是用 IPX 啥的协议,像浩方之类的平台是在 TCP/IP 上模拟出来的。
GuuJiang
342 天前
搜索 Battle.Lan ,当年上大学时都用这个来和其他栋楼的寝室甚至其他学校的人联机

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/941856

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX