Author Topic: Server does not ping out of the blue.  (Read 1625 times)

So, this has happened multiple times, and I usually just wait it out. But this is getting pretty annoying, and I need some type of fix for it.
So every once in a while I will randomly not be able to ping to my servers:


here is a link to my console.log (I put it in a zip because I figured it would be faster / more efficient)
http://www.mediafire.com/download/lcjovzmv5rp0ebl/Welp.zip

I know that most people will say to port forward, but this server is shared by my brother, which is shared by a router by my father's server. I honestly don't know what I would be doing if I were to port forward, so my father doesn't trust me enough to do it / he does not think that it will work. Usually sounds like
"What ports would you forward to?"
"I don't know"
fin.


So are there any alternate solutions to this?

and thats when the firenation attacked


rip server postponed

Oh, also. I am using this:
Code: [Select]
"C:\Program Files (x86)\Blockland\BlocklandLauncher.exe" -dedicated -profilePath "C:\User\USER\Desktop\SERVERNAME" -port PORTHERETo supposedly host on different ports.

»TheBlackParrot«: you need to port forward
»TheBlackParrot«: Starting Internet Server
Binding server port to default IP
UDP initialized on port 28400

Initializing UPnP...
--------------------
UPnP Discovery Failed
--------------------
DragonoidSlayer: How long does port forwarding take
DragonoidSlayer: Also
DragonoidSlayer: I know that most people will say to port forward, but this server is shared by my brother, which is shared by a router by my father's server. I honestly don't know what I would be doing if I were to port forward, so my father doesn't trust me enough to do it / he does not think that it will work. Usually sounds like
"What ports would you forward to?"
"I don't know"
fin.
»TheBlackParrot«: that's your only solution
»TheBlackParrot«: or you can continue banking on uPnP working some of the time
DragonoidSlayer: What's that
DragonoidSlayer: And would doing anything with this fix it
DragonoidSlayer: "C:\Program Files (x86)\Blockland\BlocklandLauncher.exe" -dedicated -profilePath "C:\User\USER\Desktop\SERVERNAME" -port PORTHERE
»TheBlackParrot«: no
»TheBlackParrot«: port forwarding isn't hard
DragonoidSlayer: How do
DragonoidSlayer: And how long does it takke
DragonoidSlayer: :|
»TheBlackParrot«: like 20 seconds
DragonoidSlayer: Do I need to connect to router and do stuff
»TheBlackParrot«: yes
DragonoidSlayer: Sounds like more than 20 seconds

-snip-
After I could not connect to my router the usual way, I tried everything in this list that I could.

nothing works.

uPNP is what handles ports when you host a server, unfortunately it failed to create an opening so it couldn't create a gateway for anyone to connect, not even you

Port forward is the only way, and to do this correctly you need to make sure your server's port matches with the router that portforwarded the same port.

So, after having a long conversation about me being an idiot about ports with a scripting friend, I have concluded that none of this makes any sense.

Apparently I am supposed to portforward XXXXX to XXXXX. Lets use 28600 for example.

According to my friend, port forwarding is like saying "hey, if someone sends something to this port, send it this way" to the router.

So if I am forwarding port 28600, I would say "hey, if someone comes to port 28600, send it to 28600."
So how does this make sense? Does this not create a null, or an infinite loop of it sending a port to itself? Will it not change nothing? He said it may be cause by my UPnP broke, which is impossible because I disabled UPnP on my server. Also, I cannot do the website interface on my server to access my router settings. I have to do portproxy (which is significantly more difficult) through CMD because my internet rig is a bit odd. Don't ask me how or why, because I don't know.

Can somebody please go into insane detail WHY my ports are breaking, what ports I would redirect to what, and how anything above makes sense.

Just for anybody that does not know, I use this command in a bat:
Code: [Select]
"C:\Program Files (x86)\Blockland\BlocklandLauncher.exe" -dedicated -profilePath "C:\User\USER\Desktop\SERVERNAME" -port PORTHERE

to host my servers on completely different ports.

So if I am forwarding port 28600, I would say "hey, if someone comes to port 28600, send it to 28600."
no
let's say your local IP address is 192.168.1.13
then you forward port 28600 to 192.168.1.13

You can use whatever port you want, 28000 is just the default.
If you and your brother are both hosting servers on different computers, you need to forward different ports. It doesn't matter what, as long as you configure blocking settings to use the same port

I will go into more detail
first of all HOW to port forward. open the windows command prompt, type "ipconfig" and press enter. this is useful for two reasons: it tells you what IP you need to visit in your browser to get to your router settings, and it tells you what your local IP address is
you should see something that looks like this

there might be a couple of other entries, depending on your computer (I have several extra, mostly VM stuff), but chances are only one of them will have all of this info
then visit the "Default Gateway" IP in your browser, and look for something that mentions port forwarding. with my router, there's a section for "Applications and Gaming" and it's in there. you should see something like this

for your purposes, both internal and external ports should be the same, and they should be whatever port you wanna host on. then make sure the IP address section matches the "IPv4 Address" part of what you got from the ipconfig command (depending on the coolness of your router, it might have already picked that one for you). I think just setting it to TCP will work, but I'm not completely certain, so maybe ask someone else about that. and, obviously, check the "enabled" box, if your router also has such a thing
then start up a server on the port you chose. it should work, unless there's another problem
if you want to host another server on the same computer, under a different port, you'll have to forward that one to your computer too

also, if you don't want to have to worry about occasionally correcting these settings, you might wanna set a static IP address for your computer. this is more complicated, but still easy. there are two ways to do it, and I would suggest doing both

method #1: through your operating system
I'm assuming you use windows. I also assumed that earlier with the command prompt stuff. if you don't use windows, google this part
go to the network and sharing center in the control panel. then on the left side, click "change adapter settings," and there should be a few options. chances are, there will be one for every entry there was in the ipconfig results. right click on whichever one you're using, and click "properties"
then, in the list, find and select "Internet Protocol Version 4" and click "properties" (or you can just double click on it in the list). this is where you can choose whether to get an IP address automatically from the router when you connect, or use a static one. this is what my settings look like:

hopefully I don't really need to explain the stuff in the first section. it should match the ipconfig info, unless you want to choose a different IP address ending. if you do wanna change it, only change the final part, which in my case is "123." there might be some restrictions on what numbers you can choose, so you should just use the same one you already had, cus you know it'll work
at this point, it may require you to choose a DNS server instead of using whatever DNS server your router is set to. I don't know why, but if it does, the ones I have it set to are a good choice. they're Google's public DNS servers. you could use a different one if you wanted, but I suggest Google's
then click "okay" on that window and the one before it, and you're done

method #2: through your router
if you only do it through your OS, you may run into issues if there are other people connecting and disconnecting to the router often. your router might automatically assign the IP address you wanted to another device, and that would suck for you, when your computer wants the one you set
this is a little more complicated, and probably changes quite a bit depending on what router you have. somewhere in your router settings there should be something called "DHCP reservation" or maybe "IP address reservation" or it might just say something about static IP addresses. this is what you want. you should just have to enter the IP address you want reserved and the MAC address you want it reserved for. the MAC address is an identifier for your computer. it might want a nickname for the computer too. to find the MAC address you need to use, you can go back to the command prompt, and use the ipconfig command again, but this time add "/all" after it. the entire command should look like "ipconfig /all" without the quotes. find the same entry as before, and this time you're looking for the "physical address"

these explanations are certainly imperfect, so if you have any questions, ask


now for the other thing. that you only need to read if you're interested. WHY you have to forward ports
when you have a router, many devices can be connected at once. and when some seemingly random piece of data (that is, not a response to a request that you sent) reaches your router from elsewhere on the internet, it can't just send it to every computer on the network and hope one of them is right. so the router needs to know in advance who's supposed to get it. and that's what port fowarding is for. whenever the router gets something headed to port 1337, it knows to send it to the computer at 192.168.1.123, under that same port (unless you chose a different internal port), since you set it up that way. and you have around 65535 ports to choose from (minus the ones already in use), so don't worry about running out

ive noticed that new consumer routers sometimes streamline the interface; it looks vastly different and less complicated than the ones in typical tutorials.

after opening your router page (through getting the router ip through ip config) just navigate to firewall and open your port by adding an exception/game/program to your computer. since bl isnt a common game, you'll probably need to choose other/custom, and define the port range and tcp/udp setting, then apply said preset to your device/firewall

I think just setting it to TCP will work, but I'm not completely certain, so maybe ask someone else about that.
UDP

ive noticed that new consumer routers sometimes streamline the interface; it looks vastly different and less complicated than the ones in typical tutorials.

after opening your router page (through getting the router ip through ip config) just navigate to firewall and open your port by adding an exception/game/program to your computer. since bl isnt a common game, you'll probably need to choose other/custom, and define the port range and tcp/udp setting, then apply said preset to your device/firewall
I've done this.
Snip
Oh my, a lot to read, but thanks a lot. Makes a lot more sense.
I will try this when I get home

Quote from my insanely tech \ coding dad.
Quote
But this all has to do with YOUR computer only.
The server is unaffected by these forwarding changes.
 
So, when you have 4 instances of BL running and YOU can’t connect to it...are you the only person who can’t get to the server( s ) or are there other people who also can’t get to the server.
If you are the ONLY person who needs to set your router, fine, then do it.
If other people out in the world can’t get to the server, is everyone else in the world constantly resetting port forwarding on their home routers?
 
Setting your IP in our LAN(the computer room) to a static IP is easy.
 
-my dad

Oh my, a lot to read
yeah I can't believe I typed all of that up
Quote from my insanely tech \ coding dad.
I'm not sure what he's saying
are the ports you want to use forwarded to your computer or not? if they aren't, do that. it's the simplest problem and solution. if it doesn't fix it, then we know there's something else going on and figure out what the real problem is