![如何通过终端扫描 minecraft lan 游戏](https://linux22.com/image/1632788/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%E7%BB%88%E7%AB%AF%E6%89%AB%E6%8F%8F%20minecraft%20lan%20%E6%B8%B8%E6%88%8F.png)
我正在尝试弄清楚如何在本地网络上扫描 Minecraft 局域网游戏。当我打开游戏本身时,扫描会非常快,并且几乎立即返回本地 IP 及其各自端口的列表。但是,我不想让游戏在后台保持打开状态只是为了检查活动端口,我想用脚本来做这件事。
我尝试使用nmap扫描特定端口,但据我所知,局域网上的 Minecraft 游戏没有设置端口范围。Minecraft 可以使用的数万个端口上,扫描网络上的每个 IP 太慢了。
我发现最接近答案的是这个问题,尽管我不确定它在时间段(4 年前,从那时起游戏经历了重大发展)和我不必担心多次切换的事实方面有多适用。
在我的研究过程中,我还研究了一些有关广播数据包的内容。但是,我不确定从哪里开始,或者这是否能用于实现我的目标。
所以我的总体目标是使用 (Linux) 终端在我的本地网络 (lan) 上搜索 Minecraft 游戏。真的,任何关于如何实现这一点的指示都很好,或者如果有人能给我指出正确的方向。至少我现在知道使用 nmap 是不可行的。
谢谢!如果我需要编辑此问题,请告诉我。
答案1
我解决了!
我使用 Wireshark 发现局域网游戏在运行时会向多播 224.0.2.60:4445 发送一个 UDP 数据包。我编写了一个简单的 bash 脚本来使用 Wireshark 监听这些数据包,然后在发现时触发 Dunst 通知。数据包含用户名、世界和 tcp 端口,我用 ack 提取了这些数据。它确实比保持 Minecraft 处于打开状态占用更少的内存,而且我还可以享受通知的好处。