• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Linux - problem z IP.

sn3ejk

This account is inactive.
Joined
Nov 16, 2011
Messages
2,121
Solutions
1
Reaction score
147
Witam

Mam taki problem, używam ostatniego trunka, i wszyscy normalnie mogą się do mnie połączyć (wyłącznie do wybierania postaci, a potem ani rusz), gdy ktoś wybierze postać z listy to ani rusz - wczytuje się, wczytuje i nie łączy. Problem jest w tym, że linux nie chce łapać mojego globalnego Ip tylko podaje serwerowi moje lokalne, czyli to 192.X.X.X. Pokażę w kodzie, plik protocollogin.cpp w funkcji, która służy do pokazywania listy postaci:
PHP:
void ProtocolLogin::onRecvFirstMessage(NetworkMessage& msg)
W tym fragmencie kodu, program ustala jakie IP na odsyłać - na które gracz ma wysyłać zapytanie, z prośbą do dołączenie do gry.
PHP:
if(OutputMessage_ptr output = OutputMessagePool::getInstance()->getOutputMessage(this, false)) 
    { 
        TRACK_MESSAGE(output); 
        output->put<char>(0x14); 
        uint32_t serverIp = getConnection()->getEndpoint();

Tutaj jest ten problem, że ta funkcja getConnection()->getEndpoint(); , która później nawiązuje do ASIO, nie zwraca mojego globalnego IP, tylko lokalne. Czyli zamiast 83.253.22.XXX daje 192.168.0.XXX.
Wszystko sprawdziłem i jest tak jak mówię wyżej. Więc tutaj jest moje pytanie, jak to naprawić zamiast każdy trunk (a mam ich wiele) fixować, czy da się w linuxie jakoś to po ludzku ustawić?
 
A nie możesz zdefiniować w configu zewnętrznego IP samemu? On jest podawany przy liście postaci jako adres servera.
A technicznie rzecz biorąc, serwer binduje do lokalnego IP bo dalej routingiem zajmuje się Twój router, a że jest to oszukańcze to zwie się NATem, ale działa.
 
A nie możesz zdefiniować w configu zewnętrznego IP samemu?
Wtedy serwer nawet się nie zbinduje, przy próbie logowania nawet listy nie widzę.
On jest podawany przy liście postaci jako adres servera.
Podawany jest endpoint połączenia.
 
napisz na project boardzie, bedziesz miał pewność że ci taki elf odpisze albo tala albo tryller
 
Back
Top