Royalty_2001 2024-02-27 15:54 采纳率: 0%
浏览 7
已结题

通过防火墙出入站阻止游戏程序联网失效

为了达到lag switch的目的,防火墙出入站规则设置了,游戏程序在登录界面时有用,可以阻止联网,但在进入服务器以后,防火墙就不能阻止联网了,懂哥帮帮忙,有酬,谢谢

  • 写回答

7条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-02-27 15:55
    关注

    引自免费微信小程序:皆我百晓生

    针对您的问题,您尝试通过防火墙规则阻止游戏程序联网以实现类似于“lag switch”的效果。然而,在登录界面时规则生效,一旦进入服务器后防火墙规则失效。这种情况可能涉及以下几个原因和解决思路:

    1. 动态端口分配:游戏客户端在连接到服务器后,可能会使用动态端口进行通信,而非始终使用固定端口。因此,您需要确保防火墙规则不仅限于游戏的默认端口,还要涵盖动态端口范围。例如,在Windows防火墙中设置出站规则时,您可以限制整个TCP或UDP协议,但请注意这可能会影响到其他应用程序。

    2. 进程变化:游戏程序在进入游戏服务器后可能启动了新的子进程或者改变了网络行为,导致原本阻止的进程不再适用。检查并确认所有与游戏相关的进程,并相应地更新防火墙规则。

    3. 绕过技术:游戏有可能采用了一些技术来规避防火墙的检测,比如通过系统服务或者其他已信任的应用程序作为代理进行网络通信。对于这种情况,您需要更深入地分析游戏的行为并针对性地制定策略。

    由于防火墙规则的具体配置涉及到操作系统、防火墙软件以及游戏本身的详细信息,无法提供通用且直接可用的代码示例。通常,您需要按照以下步骤操作(以Windows自带防火墙为例):

    • 确定游戏主进程及其可能的子进程。
    • 在防火墙中创建新规则,阻止这些进程的出站流量(或特定端口)。
    • 检查是否游戏有利用系统服务或其他已信任应用的情况,如有必要,对这些服务或应用也设置相应的防火墙规则。

    请参照以下简化版命令行概念(非完整代码)来理解如何创建规则:

    # 假设游戏主进程名为game.exe,其PID为12345
    New-NetFirewallRule -DisplayName "Block Game Outbound" `
      -Direction Outbound `
      -Action Block `
      -Program "C:\path\to\game.exe" `
      -Protocol TCP, UDP
    
    # 如果游戏在网络会话中切换至另一个进程,则需要添加该进程的规则
    New-NetFirewallRule -DisplayName "Block Game Subprocess" `
      -Direction Outbound `
      -Action Block `
      -Program "C:\path\to\subprocess.exe" `
      -Protocol TCP, UDP
    

    请您务必根据实际情况调整上述命令,并谨慎操作,避免影响其他正常网络通信。

    最后,请注意,滥用防火墙规则来妨碍游戏的正常运行并不符合网络安全原则,也不利于游戏体验的公平性。如果您是为了调试或研究目的,请确保遵守相关法律法规及游戏使用条款。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月27日
  • 创建了问题 2月27日

悬赏问题

  • ¥15 有没有人会打学生成绩管理系统呀
  • ¥15 在使用Fiddler和夜神模拟器抓包的时候一直出现443该怎么办啊QAQ搜了好几个笔记都没有解决
  • ¥15 3x7的二维数组A、B、C,A中的任意1个数组元素与B的任意1个数组元素、同时又与C的任意1个数组元素比较,把不同位置出现相同数的比较称为无意义,反之称为有意义,把有意义的比较打印输出。
  • ¥20 预测模型怎么处理原始数据(随机森林)
  • ¥20 请问discuz3.5如何实现插入ckplayer全能播放器功能呢?
  • ¥15 thingsboard代码编译出错误
  • ¥15 博途v18仿真报错怎么解决
  • ¥15 欧姆龙plc枕式包装机 ST编程
  • ¥15 为啥快手广告联盟的广告这么难出来
  • ¥15 k8s集群重启后,kubelet一直报systemctl restart kubelet.service "Failed to delete cgroup paths"