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:
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.
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ć?
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)
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ć?