UE5.1.1基于EOS搭建P2P联机无法加入会话问题求助
排查UE5.1.1 EOS P2P会话加入超时问题
核心问题定位
从日志可见加入方尝试连接MyIP:7777超时,说明会话传递的主机IP存在异常,或EOS P2P穿透/直连机制未正确触发。
具体排查步骤
- 校验会话内主机IP信息
主机创建会话后,通过蓝图输出或日志查看Get Session Details中的Host Address字段,确认是否为EOS分配的中继服务器地址而非本地私有IP(如192.168.x.x)。若显示本地IP,说明NAT穿透未生效,外部无法直接访问。 - 检查EOS插件与会话配置
确认DefaultEngine.ini中EOS配置正确开启P2P:
同时关闭[OnlineSubsystemEOS] bEnabled=true bUseP2PConnection=true P2PPort=7777Advanced Sessions Plugin会话设置中的Allow LAN Connection选项,避免优先尝试本地LAN连接干扰EOS P2P流程。 - 验证NAT穿透状态
在双方日志中搜索EOS_P2P相关条目,查看是否有NAT Traversal Succeeded或Relay Server Assigned记录。若无,检查Epic开发者门户:- 组织是否启用
P2P Voice & Data服务 - 游戏
Product Settings中Allowed IPs是否留空(允许所有IP)
- 组织是否启用
- 确认端口监听与中继 fallback
用netstat -ano | findstr 7777命令检查主机是否正常监听7777端口。若私有IP无法被访问,EOS应自动切换到中继服务器,可通过pingrelay.epicgames.com验证加入方网络能否访问EOS中继节点。 - 调试蓝图加入流程
在Join Session节点后,确保Client Travel使用的是会话返回的Session URL而非硬编码本地IP。同时检查On Join Session Failed回调是否被正确处理——加入会话“成功”可能仅指获取会话信息成功,而非实际连接成功。 - 同一网络环境测试
若局域网内加入正常,说明NAT穿透是核心问题;若局域网也超时,检查UE5网络驱动配置:[NetDriver] NetServerMaxTickRate=60 NetClientTickRate=60 MaxClientRate=100000
额外注意事项
- 确保双方使用同一EOS环境(均为开发/生产环境),跨环境会导致会话不兼容
- 确认
Account Portal认证后的用户处于同一EOS沙盒,沙盒隔离会导致无法发现或加入会话
内容的提问来源于stack exchange,提问作者Elias Marrero
相关产品推荐
相关产品推荐

