Dinnerbone / mcstatus

A Python class for checking the status of an enabled Minecraft server
http://dinnerbone.com/minecraft/tools/status/
1.11k stars 146 forks source link

Socket Timeout #69

Closed Carlipoot closed 5 years ago

Carlipoot commented 5 years ago

Hi there. I just installed mcstatus 2.2.1 on my raspberry pi using pip. I can successfully run ping and status on my Minecraft Server (1.14.3) with results. When I run query I get a socket timeout. Below is there error.

$ mcstatus 192.168.1.150 query Traceback (most recent call last):   File "/usr/local/bin/mcstatus", line 11, in <module>     sys.exit(cli())   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 764, in __call__     return self.main(*args, **kwargs)   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 717, in main     rv = self.invoke(ctx)   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 1137, in invoke     return _process_result(sub_ctx.command.invoke(sub_ctx))   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 956, in invoke     return ctx.invoke(self.callback, **ctx.params)   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 555, in invoke     return callback(*args, **kwargs)   File "/usr/local/lib/python2.7/dist-packages/mcstatus/scripts/mcstatus.py", line 79, in query     response = server.query()   File "/usr/local/lib/python2.7/dist-packages/mcstatus/server.py", line 82, in query     raise exception socket.timeout: timed out

Carlipoot commented 5 years ago

Ok, so I figured it out... the mcstatus query command uses UDP, which was disabled on my server's inbound firewall rule. I added a new rule to allow it and now it works. Mystery solved!