Minecraft Server - failed to bind port!

Zombie
minecraft
PITERSON
PITERSON

Witam, na wstępie zaznaczę, że korzystałem już z poradnika na forum i w mojej opinii dobrze skonfigurowałem wszystko jednak chyba nie do końca.

Na routerze odblokowałem porty w konsoli i raczej po stronie routera wszystko jest dobrze. Odblokowałem w ubuntu za pomoca iptables porty 44444 oraz 25565 - na których prowadziłem testy. W server.properties w linii server-ip wpisałem moje IP ponieważ gdy wpisywałem 0.0.0.0 to działało tylko na sieci lokalnej a gdy nic to nawet nie było błędu. IP jest zewnętrzne, sprawdzałem.

KOD BŁĘDU:

[14:44:46] [Server thread/INFO]: Starting Minecraft server on ...:44444 [14:44:47] [Server thread/INFO]: Using epoll channel type [14:44:47] [Server thread/WARN]: **** FAILED TO BIND TO PORT! [14:44:47] [Server thread/WARN]: The exception was: io.netty.channel.unix.Errors$NativeIoException: bind(..) failed: Cannot assign requested address [14:44:47] [Server thread/WARN]: Perhaps a server is already running on that port? [14:44:47] [Server thread/INFO]: Stopping server

Próbowałem zarówno na 25565 jak na 44444 i jest to samo );

Dodatkowo mam jeszcze jakiś taki błąd:

Gtk-Message: 14:44:45.465: Failed to load module "canberra-gtk-module"

oraz na początku taki:

2019-12-05 14:35:10,824 main ERROR Cannot access RandomAccessFile java.io.FileNotFoundException: logs/latest.log (Permission denied) java.io.FileNotFoundException: logs/latest.log (Permission denied)

Wkleiłem tylko według mnie tą istotną część (błędy), ewentualnie jeśli jest taka konieczność to wyślę cały log.

Próbowałem także na craftbukkit i ten sam problem. kod poniżej

piotr@piotr-server:/Pulpit/Server$ java -Xms1024M -Xmx1024M -jar craftbukkit.jar nogui Loading libraries, please wait… [15:30:56] [Server thread/INFO]: Starting minecraft server version 1.14.4 [15:30:56] [Server thread/INFO]: Loading properties [15:30:56] [Server thread/INFO]: Default game type: SURVIVAL [15:30:56] [Server thread/INFO]: Generating keypair [15:30:56] [Server thread/INFO]: Starting Minecraft server on . . . :44444 [15:30:56] [Server thread/INFO]: Using epoll channel type [15:30:56] [Server thread/WARN]: **** FAILED TO BIND TO PORT! [15:30:56] [Server thread/WARN]: The exception was: io.netty.channel.unix.Errors$NativeIoException: bind(…) failed: Cannot assign requested address [15:30:56] [Server thread/WARN]: Perhaps a server is already running on that port? [15:30:56] [Server thread/INFO]: Stopping server [15:30:56] [Server thread/INFO]: Saving worlds piotr@piotr-server:/Pulpit/Server$

Lumpiasty
Lumpiasty Stały bywalec

Co mówi lsof -i :44444?

PITERSON
PITERSON

piotr@piotr-server:$ lsof -i :44444 piotr@piotr-server:$

piotr@piotr-server:$ sudo lsof -i :44444 [sudo] password for piotr: piotr@piotr-server:$

Lumpiasty
Lumpiasty Stały bywalec

Pole z IP serwera służy do wpisania adresu IP karty sieciowej na której serwer ma nasłuchiwać połączeń. Wpisując 0.0.0.0 sprawiamy, że słucha na wszystkich. Twoje zewnętrzne IP nie wskazuje na żadną kartę sieciową, stąd ten błąd.

Jeśli serwer działa po sieci lokalnej znaczy to wystarczy tylko port przekierować. Skąd wiesz, że "IP jest zewnętrzne"? Jeśli masz rację to błąd jest w przekierowaniu portu.

PITERSON
PITERSON

Jeśli serwer działa po sieci lokalnej znaczy to wystarczy tylko port przekierować.

Nie działa, ale mogę zmienić w server-ip na 0.0.0.0 i będzie działał...

Skąd wiesz, że “IP jest zewnętrzne”?

Wiem że IP jest zewnętrzne bo sprawdziłem to na stronie, także dostawca zepewniał mnie o tym.

Nie mam pojęcia zatem jak naprawić ten błąd.

Lumpiasty
Lumpiasty Stały bywalec

PITERSON:

Jeśli serwer działa po sieci lokalnej znaczy to wystarczy tylko port przekierować.

Nie działa, ale mogę zmienić w server-ip na 0.0.0.0 i będzie działał…

Ale serwer musi działać, żeby można było się podłączyć...

PITERSON:

Skąd wiesz, że “IP jest zewnętrzne”?

Wiem że IP jest zewnętrzne bo sprawdziłem to na stronie, także dostawca zepewniał mnie o tym.

Mnie też zapewniał ;) Tylko dostawca mówiąć publiczne IP często ma nie ma na myśli routingu do Ciebie, a raczej to, że nikt inny w tym samym czasie nie będzie korzystał z Twojego adresu.

Jedyny sposób na sprawdzenie tego to sprawdzenie czy pakiety docierają do Twojego routera. Najprościej traceroute twoje.ip. (tracert na Windows) i zobaczyć, czy trasa się kończy na Twoim routerze.

PITERSON
PITERSON

Ale serwer musi działać, żeby można było się podłączyć…

W takim razie mam zmienić z ip mojej sieci na 0.0.0.0 czy próbować robić to na moim IP?

...i zobaczyć, czy trasa się kończy na Twoim routerze.

Zainstalowałem pakiet tracerroute

3 * * * 4 * * * 5 * * * 6 * * * 7 * * * 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 * * * 14 * * * 15 * * * 16 * * * 17 * * * 18 * * * 19 * * * 20 * * * 21 * * * 22 * * * 23 * * * 24 * * * 25 * * * 26 * * * 27 * * * 28 * * * 29 * * * 30 * * * piotr@piotr-server:~$

tylko w pierwszym i drugim wyskoczyły mi adresy ip Jeśli dobrze rozumiem teraz muszę sprawdzić czy adres ip z pola drugiego zgadza się z adresem ip routera?

Lumpiasty
Lumpiasty Stały bywalec

PITERSON:

Ale serwer musi działać, żeby można było się podłączyć…

W takim razie mam zmienić z ip mojej sieci na 0.0.0.0 czy próbować robić to na moim IP?

0.0.0.0 działa zawsze. Wszystko inne w tym miejscu to tylko ograniczenie.

PITERSON:

tylko w pierwszym i drugim wyskoczyły mi adresy ip

Timeouty do limitu TTL to nie jest dobry znak. Znaczy to tyle, że nic ostatecznie na ping nie odpowiedziało. Można jeszcze sprawdzić, czy router odpowiada na ping na bramie, powinno to być gdzieś w konfiguracji, czasem jest to traktowane jako funkcja "zabezpieczająca". Jeśli wszystko tu wygląda dobrze to raczej nic ze stawiania serwera na tym internecie, po prostu nie ma połączenia z zewnątrz.

PITERSON
PITERSON

0.0.0.0 działa zawsze. Wszystko inne w tym miejscu to tylko ograniczenie.

Ustawiłem w takim razie to, co ciekawe przy porcie 44444 nie działało nawet na LAN natomiast przy porcie domyślnym dla mc czyli 25565 zaczęło działać

Tyle, że to nie jest moim celem, także niech działa na LAN - fajnie - tylko niech też działa ogólnie w internecie, hmm z tym jest problem. Odnośnie testu tracertroute to dokładnie wygląda to tak: (oczywiście ip zamazane)

piotr@piotr-server:/Pulpit/Server$ traceroute xx.xxx.xxx.xx traceroute to xx.xxx.xxx.xx (xx.xxx.xxx.xx), 30 hops max, 60 byte packets 1 _gateway (192.168.100.1) 0.550 ms 0.653 ms 0.444 ms 2 xx.x.xxx.xx (xx.x.xxx.xx) 2.873 ms 2.781 ms 2.867 ms 3 * * * 4 * * * 5 * * * 6 * * * 7 * * * 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 * * * 14 * * * 15 * * * 16 * * * 17 * * * 18 * * * 19 * * * 20 * * * 21 * * * 22 * * * 23 * * * 24 * * * 25 * * * 26 * * * 27 * * * 28 * * * 29 * * * 30 * * * piotr@piotr-server:/Pulpit/Server$

Mój dostawca to ARTCOM, system którego używam Linux. Mam internet podłączony światłowodem, router HUAWEI.

Czy warto konsultować się z dostawcą i poprosić o zmianę tego by działało czy raczej takiej opcji nie ma?

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.