Решение за грешка во Metin2 „Socket Bind Failed“.
Кога ќе ги стартувате Metin2 PVP серверите, каналите (CH) не се отвораат, влезовите во играта остануваат затворени и датотеките syserr.txt во основните директориуми се бришат. „SocketBindBind: bind: адресата веќе се користи“ или "SYSTEM_CMD: socket_bind: не успеа" Ако видите предупредувања, вашиот сервер се соочува со конфликт на порта. Во ова упатство ќе ги научите причините и точните решенија за овој проблем.
1. Која е основната причина за проблемот?
Секој канал за игра (Auth, CH1, CH2, Game99, итн.) зафаќа одреден број на порта (Пр: 13000, 13001) на оперативниот систем FreeBSD со цел да се прифатат врски со надворешни играчи. Ако вашите датотеки со играта се обидат повторно да отворат порта што е **веќе отворена и користена** во системот, ќе даде грешка „Socket Bind Failed“ и тој канал сам ќе се затвори.
Метод 2: Затворање на MySQL или процеси на игра во позадина
Најчеста причина за оваа грешка е постојано рестартирање на серверот без целосно исклучување. Командата за нов почеток дава грешка бидејќи старите процеси на игра што се извршуваат во позадина не ги затвораат портите. За решението:
- Поврзете се со терминалот Putty и напишете ја следнава команда за да ги наведете сите процеси на играта активни во позадина:
ps ax | grep game - Ако сè уште гледате активни канали за игри во списокот, целосно прекинете ги со една команда:
killall -9 gameилиkillall -9 db - Откако ќе се уверите дека процесите се целосно затворени, обидете се повторно да ја започнете играта.
Метод 3: Поправање на конфликти на порти во CONFIG-датотеките
Ако ја примите оваа грешка при првиот почеток дури и по чисто рестартирање на серверот, броевите на портите во вашите датотеки се во конфликт еден со друг:
- Поврзете се на вашиот сервер со Filezilla
/usr/game/cores/Одете во директориумот. - соодветно
auth,channel1,channel2иgame99во папки КОНФИГ Отворете ги датотеките еден по еден. - во секоја датотека ПОСТАНИЕ Проверете ја вредноста. На пример; Ако портата за Auth е 13000, портата Channel1 треба да биде 13010, портата Channel2 треба да биде 13020.
- Проверете дали **истиот број на порта** не е запишан во датотеката CONFIG во две различни папки. Ако е исто, дајте му единствен број на порта и зачувајте ја датотеката.
Метод 4: Откривање на апликацијата со користење на конфликтната граница и порта
Освен вашите датотеки со игри, надворешната скрипта, веб-таблата или софтверот за заштита (Guard) што сте го инсталирале на серверот може да ја окупира вашата порта за игра. За да дознаете која апликација ја користи портата:
- Наведете ги активните порти и услуги со извршување на следнава команда во терминалот Putty:
sockstat -4 -l - Во списокот што се појавува, пронајдете го неотворениот број на портата на вашата игра и проверете го името на апликацијата (Идентификатор на процес / Име) лево. Можете да го решите проблемот со запирање на конфликтната надворешна услуга.
Оваа статија е специјално подготвена за PvPServer.