0

I have a server running a minecraft server. It's configured to work on port 25565.

In my router, I've forwarded port 25565 to the server, port 25565. Simple forward.

Internally I can log in just fine (with and without port, by specifying the server's local IP). CanYouSeeMe.org says the port is open, but I cannot log in using the external IP (with and without port, no difference).

We found out through an nmap scan on my external ip, that the port is closed anyway...

ufw is disabled, I'm absolutely sure of it. Enabled firewall (ufw), ran the nmap scan again, still closed.

Do I have to call my ISP, or is this something I'm doing wrong/haven't fixed yet?

EDIT Fine, I'll add this to the question even though it's good enough for an answer for me:

Something to do with NAT loopback.
When I connected my pc with my phones' dataplan, the external IP worked like a charm.

So

  • when I'm connected to the home network, I use the internal IP
  • when I'm not at home, I use the external IP

Another edit
People, I'm fucking sorry for posting in the forum where in the end it didn't belong. With the information I had (port forwarding worked, ssh'ing worked with both IP's) I thought the problem was in the server.

Go ahead, mark it as off-topic. Perhaps someone who never heard of NAT reflection either (like me) will find this topic, figure out the problem, and be helped.

closed as off-topic by user68186, user117103, Eric Carvalho, TheWanderer, David Foerster Feb 3 '17 at 0:46

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This is not about Ubuntu. Questions about other Linux distributions can be asked on Unix & Linux, those about Windows on Super User, those about Apple products on Ask Different and generic programming questions on Stack Overflow." – user68186, guntbert, Eric Carvalho, TheWanderer
If this question can be reworded to fit the rules in the help center, please edit the question.

  • You allude that the Minecraft server is connected to the internet through a router with NAT. Did you configure the router to forward incoming connections on that port to the server? Is the router based on Ubuntu? – David Foerster Feb 3 '17 at 0:46
  • No, actually my router does NOT support NAT, which means I can't use the external IP when I'm connected to the home network. I did already forward the ports and everything, it's just that NAT was giving me trouble. But I never knew it even existed, so that can be troublesome to figure out :P – Diamundo Feb 3 '17 at 10:17
  • How is the server connected to the internet if the router doesn't use NAT and machines on the local network don't have IP addresses reachable from outside the local network? – David Foerster Feb 3 '17 at 11:23
2

From your description you have configured and tested the ports correctly, and the results is something you will have to communicate with your Internet Service Provider to remedy. Some ISP's block certain ports to avoid having their clients run certain types of servers. A couple of common ports blocked by some ISP's are ports 25 and 80.

You can verify the port forwarding operation by configuring a server on a particular port. Start the server, forward the port, then test the connection with this command-line:

$ telnet [serverip] [portnumber]

The arguments in the commandline is:

  • ServerIP - This is the public IP address of your computer.
  • Portnumber - This is the port number that the server is running on.

If your public IP address is 172.217.7.14 and the port you want to test is 8080, then the command would be:

$ telnet 172.217.7.14 8080

Now by running that command from a remote computer you can tell by the response if you are getting to the program.

In this case if you configure your Minecraft Server to run on this port the response to that command will be:

Trying 172.217.7.14...
Connected to 172.217.7.14.
Escape character is '^]'.

You can exit out of the connection with by hitting Ctrl+]. Then type quit at the prompt. That's the conventional way which always works. In this case just Ctrl+C will do the trick for the Minecraft server.

Edit your Minecraft server.properties file to test a different port. Change the server-port:

Change from:

server-port=25565

Change to:

server-port=8080

You might also test other random ports such as 12345 to get an idea of how specific they may be with their blocking selection.

After you have verified the port is blocked by your ISP (by having other ports work), then you have an educated dialog to express your concern.

You may have to speak with one of their technicians, because most of the time their regular sells people don't understand the concept of ports and servers.

Not the answer you're looking for? Browse other questions tagged or ask your own question.