Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

External clients can't connect to realm. #381

Closed
RobertRoberts2020 opened this issue Apr 21, 2019 · 16 comments

Comments

Projects
None yet
3 participants
@RobertRoberts2020
Copy link

commented Apr 21, 2019

This is a fresh install.

SO: Windows server 2008
PVPGN Magic Builder Version: 2.26

Explanation:

When a client tries to connect using a modified gateway, the connection works, but they get a " Diablo 2 could not connect to realm" right after registering.

I can connect, create an account, create a character, and just play forever with no problems, I am using the same client version they are using, I am connecting using a gateway that points to my external IP.

All ports are opened and routed to the same IP which is the internal server IP, all config files have been modified to point to this internal IP, windows firewall is off.

D2GS Service is started.
PVPGN GUI is started.
D2BS is started.
D2GC is started.

It looks like some kind of routing problem but I have no idea how to fix it.

PVPGN LOG

Apr 21 00:46:50 [info ] pvpgn::bnetd::realm_active: realm SYNDICATE actived Apr 21 00:47:26 [info ] pvpgn::bnetd::sd_accept: [408] accepted connection from 181.165.242.166:55292 on 0.0.0.0:6112 Apr 21 00:47:26 [info ] pvpgn::bnetd::handle_init_packet: [408] client initiated bnet connection Apr 21 00:47:26 [info ] pvpgn::bnetd::conn_set_gamelang: [408] setting client gamelang to "enUS" Apr 21 00:47:26 [info ] pvpgn::bnetd::_client_authreq109: [408] CLIENT_AUTHREQ_109 ticks=0xbe71c88f, verstr=1.0.13.0 exeinfo="Game.exe 03/09/10 04:10:51 61440" versionid=0x0000000d gameversion=0x01000d00 checksum=0x7686beca Apr 21 00:47:26 [info ] pvpgn::bnetd::_client_authreq109: [408] client matches versiontag "D2XP_113C" Apr 21 00:47:26 [info ] pvpgn::bnetd::_client_authreq109: [408] no upgrade is available Apr 21 00:47:26 [info ] pvpgn::bnetd::_client_fileinforeq: [408] file requested: "bnserver-D2DV.ini" - type = 0x80000004 Apr 21 00:47:28 [info ] pvpgn::bnetd::_client_loginreq2: [408] "PabloEscobar" logged in (correct password) Apr 21 00:47:42 [info ] pvpgn::bnetd::_client_setemailreply: [408] init account "PabloEscobar" email to "REDACTED@gmail.com" Apr 21 00:48:10 [info ] pvpgn::bnetd::conn_destroy: [408] "PabloEscobar" logged out Apr 21 00:48:10 [info ] pvpgn::bnetd::conn_destroy: [408] closed bnet connection Apr 21 00:48:11 [info ] pvpgn::bnetd::sd_accept: [408] accepted connection from 181.165.242.166:55313 on 0.0.0.0:6112 Apr 21 00:48:11 [info ] pvpgn::bnetd::handle_init_packet: [408] client initiated bnet connection Apr 21 00:48:11 [info ] pvpgn::bnetd::conn_set_gamelang: [408] setting client gamelang to "enUS" Apr 21 00:48:11 [info ] pvpgn::bnetd::_client_authreq109: [408] CLIENT_AUTHREQ_109 ticks=0x1db21089, verstr=1.0.13.0 exeinfo="Game.exe 03/09/10 04:10:51 61440" versionid=0x0000000d gameversion=0x01000d00 checksum=0x7686beca Apr 21 00:48:11 [info ] pvpgn::bnetd::_client_authreq109: [408] client matches versiontag "D2XP_113C" Apr 21 00:48:11 [info ] pvpgn::bnetd::_client_authreq109: [408] no upgrade is available Apr 21 00:48:11 [info ] pvpgn::bnetd::_client_fileinforeq: [408] file requested: "bnserver-D2DV.ini" - type = 0x80000004 Apr 21 00:48:13 [info ] pvpgn::bnetd::_client_loginreq2: [408] "PabloEscobar" logged in (correct password) Apr 21 00:48:40 [info ] pvpgn::bnetd::conn_destroy: [408] "PabloEscobar" logged out Apr 21 00:48:40 [info ] pvpgn::bnetd::conn_destroy: [408] closed bnet connection

G2DBS log:

Apr 21 00:46:49 [info ] app_main: D2DBS Version 1.10.1.1 Built Apr 20 2019 22:18:55 Apr 21 00:46:49 [info ] app_main: server initialized Apr 21 00:46:49 [info ] pvpgn::d2dbs::dbs_server_main: establishing the listener... Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_checksum_check: ladder file check pass (checksum=0x7232C059) Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_checksum_check: ladder file check pass (checksum=0x7232C059) Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_saveladder: backup ladder file Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_saveladder: ladder file saved (2 changes) Apr 21 00:46:49 [info ] pvpgn::d2dbs::dbs_server_main: waiting for connections... Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_checksum_check: ladder file check pass (checksum=0x7232C059) Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_saveladder: backup ladder file Apr 21 00:46:49 [info ] pvpgn::d2dbs::d2ladder_saveladder: ladder file saved (0 changes) Apr 21 00:46:50 [info ] pvpgn::d2dbs::dbs_server_loop: accepted connection from 192.168.1.20:49485 , socket 328 . Apr 21 00:46:50 [info ] pvpgn::d2dbs::setsockopt_keepalive: set KEEPALIVE option for socket 328 Apr 21 00:46:50 [info ] pvpgn::d2dbs::dbs_verify_ipaddr: ip address 192.168.1.20 is valid Apr 21 00:46:50 [info ] pvpgn::d2dbs::dbs_packet_handle: set connection type for gs 192.168.1.20(1) on socket 328

D2CS log:

Apr 21 00:46:50 [info ] app_main: D2CS Version 1.10.1.1 Built Apr 20 2019 Apr 21 00:46:50 [info ] pvpgn::d2cs::d2gs_create: added game server 192.168.1.20 (id: 1) to list Apr 21 00:46:50 [info ] pvpgn::d2cs::d2ladder_readladder: ladder file loaded successfully (28 types 35 maxtype) Apr 21 00:46:50 [info ] pvpgn::d2cs::d2ladder_init: ladder data initialized Apr 21 00:46:50 [info ] pvpgn::trans_load: trans file loaded Apr 21 00:46:50 [info ] pvpgn::FDWSelectBackend::FDWSelectBackend: fdwatch select() based layer initialized (max 1000 sockets) Apr 21 00:46:50 [info ] app_main: server initialized Apr 21 00:46:50 [info ] pvpgn::d2cs::d2cs_server_process: network initialized Apr 21 00:46:50 [info ] pvpgn::d2cs::s2s_create: try make s2s connection to 192.168.1.20:6112 Apr 21 00:46:50 [info ] pvpgn::d2cs::s2s_create: connection to s2s server 192.168.1.20:6112 is in progress Apr 21 00:46:50 [info ] pvpgn::d2cs::d2cs_conn_create: created session=1 socket=320 (1 current connections) Apr 21 00:46:50 [info ] pvpgn::d2cs::server_listen: listen on 192.168.1.20:6113 Apr 21 00:46:50 [info ] pvpgn::d2cs::d2cs_server_process: entering server loop Apr 21 00:46:50 [info ] pvpgn::d2cs::conn_handle_connecting: connected to 192.168.1.20:6112 Apr 21 00:46:50 [info ] pvpgn::d2cs::handle_bnetd_init: sent init class packet to bnetd Apr 21 00:46:50 [info ] pvpgn::d2cs::on_bnetd_authreq: received bnetd sessionnum 0 Apr 21 00:46:50 [info ] pvpgn::d2cs::on_bnetd_authreply: authed by bnetd Apr 21 00:46:50 [info ] pvpgn::d2cs::d2ladder_readladder: ladder file loaded successfully (28 types 35 maxtype) Apr 21 00:46:51 [info ] pvpgn::d2cs::server_accept: accept connection from 192.168.1.20 Apr 21 00:46:51 [info ] pvpgn::d2cs::d2cs_conn_create: created session=2 socket=336 (2 current connections) Apr 21 00:46:51 [info ] pvpgn::d2cs::on_d2gs_initconn: [336] client initiated d2gs connection Apr 21 00:46:51 [info ] pvpgn::d2cs::handle_d2gs_init: sent init packet to d2gs 1 (sessionnum=2) Apr 21 00:46:51 [info ] pvpgn::d2cs::on_d2gs_authreply: game server 192.168.1.20 authed Apr 21 00:46:51 [info ] pvpgn::d2cs::d2gs_active: game server 192.168.1.20:49486 (id: 1) actived (1 total) Apr 21 00:46:51 [info ] pvpgn::d2cs::on_d2gs_setgsinfo: change game server 192.168.1.20 max game from 0 to 50 (0 current)

PVPGN PARTIAL LOG:

Apr 21 01:04:24 [debug] pvpgn::bnetd::ipbanlist_check: checking 181.165.242.166
Apr 21 01:04:24 [info ] pvpgn::bnetd::sd_accept: [408] accepted connection from 181.165.242.166:55782 on 0.0.0.0:6112
Apr 21 01:04:24 [debug] pvpgn::bnetd::conn_create: [408][392] sessionkey=0x1555843401 sessionnum=0x00000002
Apr 21 01:04:24 [debug] pvpgn::bnetd::sd_accept: [408] client connected to a bnet listening address
Apr 21 01:04:24 [info ] pvpgn::bnetd::handle_init_packet: [408] client initiated bnet connection
Apr 21 01:04:24 [trace] pvpgn::bnetd::conn_shutdown: [408] connection already closed
Apr 21 01:04:24 [debug] pvpgn::bnetd::conn_set_class: added latency check timer
Apr 21 01:04:24 [debug] pvpgn::bnetd::_client_auth_info: [408] AUTH_INFO packet { protocol=0x0, platform=IX86, product=D2XP, versionid=0xd, language=enUS, localip=0xe01a8c0, tzbias=00b4, locale=11274, language=3082, country=ARG.Argentina }
Apr 21 01:04:24 [info ] pvpgn::bnetd::conn_set_gamelang: [408] setting client gamelang to "enUS"
Apr 21 01:04:24 [debug] pvpgn::bnetd::_client_auth_info: [408] selected "IX86ver1.mpq" "A=3845581634 B=880823580 C=1363937103 4 A=A-S B=B-C C=C-A A=A-B"
Apr 21 01:04:24 [info ] pvpgn::bnetd::_client_authreq109: [408] CLIENT_AUTHREQ_109 ticks=0x5f4f2423, verstr=1.0.13.0 exeinfo="Game.exe 03/09/10 04:10:51 61440" versionid=0x0000000d gameversion=0x01000d00 checksum=0x7686beca
Apr 21 01:04:24 [info ] pvpgn::bnetd::_client_authreq109: [408] client matches versiontag "D2XP_113C"
Apr 21 01:04:24 [info ] pvpgn::bnetd::_client_authreq109: [408] no upgrade is available
Apr 21 01:04:24 [info ] pvpgn::bnetd::_client_fileinforeq: [408] file requested: "bnserver-D2DV.ini" - type = 0x80000004
Apr 21 01:04:27 [debug] pvpgn::bnetd::file_read_attrs: loading "var\users/PabloEscobar"
Apr 21 01:04:27 [info ] pvpgn::bnetd::_client_loginreq2: [408] "PabloEscobar" logged in (correct password)
Apr 21 01:04:27 [debug] pvpgn::bnetd::conn_set_realm: [408] set to "SYNDICATE"
Apr 21 01:04:27 [debug] pvpgn::trans_net: checking 192.168.1.20:6113 for client 181.165.242.166 ...
Apr 21 01:04:27 [debug] pvpgn::trans_net: no match found for 192.168.1.20:6113 (not translated)
Apr 21 01:04:35 [debug] pvpgn::bnetd::ipbanlist_check: lastcheck: 1555819464, now: 1555819475, now-lc: 11.
Apr 21 01:04:35 [debug] pvpgn::bnetd::ipbanlist_check: checking 192.168.1.10

I uploaded the conf files to my own website so it's easier to get them but not sure if the link will get removed since it's a ddns so I'm posting both the ddns and the IP:

Current Diablo 2 pvpgn conf files (DDNS):
http://syndicate-node.ddns.net/files/ConfFiles/

Current Diablo 2 pvpgn conf files ( IP ):

http://190.16.225.166/files/ConfFiles/

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 21, 2019

Probably you did not setup port forwarding if you have a router.

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 21, 2019

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 21, 2019

Attach configs: bnetd, d2dbs, d2cs, d2gs

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

Updated original post with link to current configs.

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 22, 2019

realm.conf must contain external IP address. A player tries connect to the local IP address from this file and can not.

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

I added my external IP address to realm.conf , clients now get a "no realms are available right now, please try again later".

And now this problem affects me too I can't join and I get that same error. ( I could join with the internal IP)

Port is still open:

open port finder
Remote Address
190.16.225.166

Use Current IP
Port Number
6113

Open Port 6113 is open on 190.16.225.166.

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 22, 2019

I was wrong, this file is responsible to a connection between pvpgn and d2cs, and it can be not exposed to the internet.
When exactly the message "Diablo 2 could not connect to realm" appears? Take a screenshot to get a full picture.
Do you connect from the same computer where D2GS is running?
Am I correct that you trying to connect to your external IP address but behind the router and it works for you, but when other users try connect then they cant? If yes then it may be still because the wrong port forwarding. If you try use VPN then you should get the same error.

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

Ok I undone the changes to realm.conf which now has the internal server IP.

Screenshot from one of the clients:
http://syndicate-node.ddns.net/files/ConfFiles/norealmsexternalclient.jpeg

I can connect to it with no problems using my public IP on the gateway from inside the network.
I am pretty sure it's some kind of routing problem, though I'm unsure how to fix it. It's like clients can actually connect but are not reaching the realm, for some reason.

The server has its windows firewall off and all ports, literally all four of them have been routed and I have confirmed they are open.

http://syndicate-node.ddns.net/files/ConfFiles/allports.JPG

The error shows up right after registering.

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 22, 2019

Open also UDP proto for 6112 and 4000

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

Ok, we tried again, and apparently, (before forwaring udp too ) they managed to join the realm but when they try to create a game they get the error " Failed to join game" then diablo 2 returns to lobby.

I believe they managed to connect to the realm because I set the translation from 192.168.1.20 to my public IP, but there's still something else missing.

PVPGN LOG:

Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: game "Asdasd" has ref=1, count=1; trying to remove player "PoblaPeres"
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: removing player #0 "PoblaPeres" from "Asdasd", 0 players left
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: player "PoblaPeres" left without reporting (valid) results
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: player deleted... (ref=1)
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: no more players, reporting game
Apr 22 13:15:03 [info ] pvpgn::bnetd::game_report: diablo gamereport disabled: ignoring game
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_del_player: no more players, destroying game
Apr 22 13:15:03 [debug] pvpgn::bnetd::game_destroy: game "Asdasd" (count=1 ref=1) removed from list...
Apr 22 13:15:03 [info ] pvpgn::bnetd::game_destroy: game deleted
Apr 22 13:15:03 [debug] pvpgn::trans_net: checking 192.168.1.20:6113 for client 200.125.122.242 ...
Apr 22 13:15:03 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 192.168.1.20:6113 network 192.168.1.0/0xffffff00
Apr 22 13:15:03 [debug] pvpgn::trans_net: client is not in the correct network
Apr 22 13:15:03 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 190.16.225.166:6113 network 0.0.0.0/0x00000000
Apr 22 13:15:03 [debug] pvpgn::trans_net: 192.168.1.20:6113 translated to 190.16.225.166:6113
Apr 22 13:15:03 [debug] pvpgn::bnetd::on_d2cs_accountloginreq: user PoblaPeres loggedin on d2cs
Apr 22 13:15:03 [debug] pvpgn::bnetd::on_d2cs_charloginreq: loaded portrait for character Chingui
Apr 22 13:15:03 [debug] pvpgn::bnetd::_client_progident2: [408] CLIENT_PROGIDENT2 clienttag=0x44325850
Apr 22 13:15:03 [trace] pvpgn::bnetd::conn_set_playerinfo: [408] playerinfo request for client "D2XP" playerinfo="SYNDICATE,Chingui"
Apr 22 13:15:03 [info ] pvpgn::bnetd::conn_set_channel: [408] joined channel "Diablo II-1"
Apr 22 13:15:03 [debug] pvpgn::bnetd::class_topic::class_topiclist::get: returning nullptr

More PVPGN LOG:

Apr 22 13:23:12 [debug] pvpgn::trans_net: client is not in the correct network
Apr 22 13:23:12 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 190.16.225.166:6113 network 0.0.0.0/0x00000000
Apr 22 13:23:12 [debug] pvpgn::trans_net: 192.168.1.20:6113 translated to 190.16.225.166:6113
Apr 22 13:23:12 [debug] pvpgn::bnetd::on_d2cs_accountloginreq: user LEANDER loggedin on d2cs
Apr 22 13:23:13 [debug] pvpgn::bnetd::on_d2cs_charloginreq: loaded portrait for character Leander
Apr 22 13:23:13 [debug] pvpgn::bnetd::_client_progident2: [404] CLIENT_PROGIDENT2 clienttag=0x44325850
Apr 22 13:23:13 [trace] pvpgn::bnetd::conn_set_playerinfo: [404] playerinfo request for client "D2XP" playerinfo="SYNDICATE,Leander"
Apr 22 13:23:14 [trace] pvpgn::bnetd::_client_motdw3: lastnews() 1396083966 news_time 1096621567
Apr 22 13:23:19 [debug] pvpgn::bnetd::_client_joingame: [404] trying to join game "Syn1" pass=""
Apr 22 13:23:19 [info ] pvpgn::bnetd::_client_joingame: [404] "LEANDER" joined game "Syn1"
Apr 22 13:23:54 [info ] pvpgn::bnetd::_client_closegame: [408] client closing game
Apr 22 13:23:54 [debug] pvpgn::bnetd::game_del_player: game "Syn1" has ref=3, count=3; trying to remove player "PoblaPeres"
Apr 22 13:23:54 [debug] pvpgn::bnetd::game_del_player: removing player #1 "PoblaPeres" from "Syn1", 2 players left
Apr 22 13:23:54 [debug] pvpgn::bnetd::game_del_player: player "PoblaPeres" left without reporting (valid) results
Apr 22 13:23:54 [debug] pvpgn::bnetd::game_del_player: player deleted... (ref=3)
Apr 22 13:23:54 [debug] pvpgn::trans_net: checking 192.168.1.20:6113 for client 200.125.122.242 ...
Apr 22 13:23:54 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 192.168.1.20:6113 network 192.168.1.0/0xffffff00
Apr 22 13:23:54 [debug] pvpgn::trans_net: client is not in the correct network
Apr 22 13:23:54 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 190.16.225.166:6113 network 0.0.0.0/0x00000000
Apr 22 13:23:54 [debug] pvpgn::trans_net: 192.168.1.20:6113 translated to 190.16.225.166:6113
Apr 22 13:23:54 [debug] pvpgn::bnetd::on_d2cs_accountloginreq: user PoblaPeres loggedin on d2cs
Apr 22 13:23:54 [debug] pvpgn::bnetd::on_d2cs_charloginreq: loaded portrait for character Chingui
Apr 22 13:23:54 [debug] pvpgn::bnetd::_client_progident2: [408] CLIENT_PROGIDENT2 clienttag=0x44325850
Apr 22 13:23:54 [trace] pvpgn::bnetd::conn_set_playerinfo: [408] playerinfo request for client "D2XP" playerinfo="SYNDICATE,Chingui"
Apr 22 13:23:54 [info ] pvpgn::bnetd::conn_set_channel: [408] joined channel "Diablo II-1"
Apr 22 13:23:54 [debug] pvpgn::bnetd::class_topic::class_topiclist::get: returning nullptr
Apr 22 13:24:13 [info ] pvpgn::bnetd::_client_closegame: [404] client closing game
Apr 22 13:24:13 [debug] pvpgn::bnetd::game_del_player: game "Syn1" has ref=2, count=3; trying to remove player "LEANDER"
Apr 22 13:24:13 [debug] pvpgn::bnetd::game_del_player: removing player #2 "LEANDER" from "Syn1", 1 players left
Apr 22 13:24:13 [debug] pvpgn::bnetd::game_del_player: player "LEANDER" left without reporting (valid) results
Apr 22 13:24:13 [debug] pvpgn::bnetd::game_del_player: player deleted... (ref=2)
Apr 22 13:24:13 [debug] pvpgn::trans_net: checking 192.168.1.20:6113 for client 190.55.33.224 ...
Apr 22 13:24:13 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 192.168.1.20:6113 network 192.168.1.0/0xffffff00
Apr 22 13:24:13 [debug] pvpgn::trans_net: client is not in the correct network
Apr 22 13:24:13 [debug] pvpgn::trans_net: against entry -> 192.168.1.20:6113 output 190.16.225.166:6113 network 0.0.0.0/0x00000000
Apr 22 13:24:13 [debug] pvpgn::trans_net: 192.168.1.20:6113 translated to 190.16.225.166:6113
Apr 22 13:24:13 [debug] pvpgn::bnetd::on_d2cs_accountloginreq: user LEANDER loggedin on d2cs
Apr 22 13:24:14 [debug] pvpgn::bnetd::on_d2cs_charloginreq: loaded portrait for character Leander
Apr 22 13:24:14 [debug] pvpgn::bnetd::_client_progident2: [404] CLIENT_PROGIDENT2 clienttag=0x44325850
Apr 22 13:24:14 [trace] pvpgn::bnetd::conn_set_playerinfo: [404] playerinfo request for client "D2XP" playerinfo="SYNDICATE,Leander"
Apr 22 13:24:14 [trace] pvpgn::bnetd::_client_motdw3: lastnews() 1396083966 news_time 1096621567
Apr 22 13:25:49 [debug] pvpgn::bnetd::_client_joingame: [408] trying to join game "Syn1" pass=""
Apr 22 13:25:49 [info ] pvpgn::bnetd::_client_joingame: [408] "PoblaPeres" joined game "Syn1"

D2CS LOG:

pr 22 13:23:00 [info ] pvpgn::d2cs::on_client_charloginreq: got character Chingui(*PoblaPeres) login request
Apr 22 13:23:00 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Chingui authed
Apr 22 13:23:02 [info ] pvpgn::d2cs::on_client_joingamereq: request join game Syn1 for character Chingui on gs 1
Apr 22 13:23:02 [info ] pvpgn::d2cs::on_d2gs_joingamereply: added Chingui to game Syn1 on gs 1
Apr 22 13:23:02 [debug] pvpgn::trans_net: checking 192.168.1.20:4000 for client 200.125.122.242 ...
Apr 22 13:23:02 [debug] pvpgn::trans_net: no match found for 192.168.1.20:4000 (not translated)
Apr 22 13:23:02 [info ] pvpgn::d2cs::on_d2gs_joingamereply: no translation required for gamserver 192.168.1.20
Apr 22 13:23:02 [info ] pvpgn::d2cs::d2cs_conn_destroy: [324] closed connection 13 (3 left)
Apr 22 13:23:08 [info ] pvpgn::d2cs::game_destroy: game Asd removed from game list (1 left)
Apr 22 13:23:12 [info ] pvpgn::d2cs::server_accept: accept connection from 190.55.33.224
Apr 22 13:23:12 [info ] pvpgn::d2cs::d2cs_conn_create: created session=14 socket=324 (4 current connections)
Apr 22 13:23:12 [info ] pvpgn::d2cs::on_d2cs_initconn: [324] client initiated d2cs connection
Apr 22 13:23:12 [info ] pvpgn::d2cs::on_client_loginreq: got client (*LEANDER) login request sessionnum=0x6
Apr 22 13:23:12 [info ] pvpgn::d2cs::on_bnetd_accountloginreply: account LEANDER authed
Apr 22 13:23:12 [debug] pvpgn::d2cs::on_client_charlistreq_110: adding char leander (*LEANDER)
Apr 22 13:23:13 [info ] pvpgn::d2cs::on_client_charloginreq: got character Leander(*LEANDER) login request
Apr 22 13:23:13 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Leander authed
Apr 22 13:23:19 [info ] pvpgn::d2cs::on_client_joingamereq: request join game Syn1 for character Leander on gs 1
Apr 22 13:23:19 [info ] pvpgn::d2cs::on_d2gs_joingamereply: added Leander to game Syn1 on gs 1
Apr 22 13:23:19 [debug] pvpgn::trans_net: checking 192.168.1.20:4000 for client 190.55.33.224 ...
Apr 22 13:23:19 [debug] pvpgn::trans_net: no match found for 192.168.1.20:4000 (not translated)
Apr 22 13:23:19 [info ] pvpgn::d2cs::on_d2gs_joingamereply: no translation required for gamserver 192.168.1.20
Apr 22 13:23:19 [info ] pvpgn::d2cs::d2cs_conn_destroy: [324] closed connection 14 (3 left)
Apr 22 13:23:54 [info ] pvpgn::d2cs::server_accept: accept connection from 200.125.122.242
Apr 22 13:23:54 [info ] pvpgn::d2cs::d2cs_conn_create: created session=15 socket=324 (4 current connections)
Apr 22 13:23:54 [info ] pvpgn::d2cs::on_d2cs_initconn: [324] client initiated d2cs connection
Apr 22 13:23:54 [info ] pvpgn::d2cs::on_client_loginreq: got client (*PoblaPeres) login request sessionnum=0xB
Apr 22 13:23:54 [info ] pvpgn::d2cs::on_bnetd_accountloginreply: account PoblaPeres authed
Apr 22 13:23:54 [info ] pvpgn::d2cs::on_client_charloginreq: got character Chingui(*PoblaPeres) login request
Apr 22 13:23:54 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Chingui authed
Apr 22 13:24:13 [info ] pvpgn::d2cs::server_accept: accept connection from 190.55.33.224
Apr 22 13:24:13 [info ] pvpgn::d2cs::d2cs_conn_create: created session=16 socket=344 (5 current connections)
Apr 22 13:24:13 [info ] pvpgn::d2cs::on_d2cs_initconn: [344] client initiated d2cs connection
Apr 22 13:24:13 [info ] pvpgn::d2cs::on_client_loginreq: got client (*LEANDER) login request sessionnum=0x6
Apr 22 13:24:13 [info ] pvpgn::d2cs::on_bnetd_accountloginreply: account LEANDER authed
Apr 22 13:24:14 [info ] pvpgn::d2cs::on_client_charloginreq: got character Leander(*LEANDER) login request
Apr 22 13:24:14 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Leander authed
Apr 22 13:25:49 [info ] pvpgn::d2cs::on_client_joingamereq: request join game Syn1 for character Chingui on gs 1
Apr 22 13:25:49 [info ] pvpgn::d2cs::on_d2gs_joingamereply: added Chingui to game Syn1 on gs 1
Apr 22 13:25:49 [debug] pvpgn::trans_net: checking 192.168.1.20:4000 for client 200.125.122.242 ...
Apr 22 13:25:49 [debug] pvpgn::trans_net: no match found for 192.168.1.20:4000 (not translated)
Apr 22 13:25:49 [info ] pvpgn::d2cs::on_d2gs_joingamereply: no translation required for gamserver 192.168.1.20
Apr 22 13:25:49 [info ] pvpgn::d2cs::d2cs_conn_destroy: [324] closed connection 15 (4 left)
Apr 22 13:26:47 [info ] pvpgn::d2cs::server_accept: accept connection from 200.125.122.242
Apr 22 13:26:47 [info ] pvpgn::d2cs::d2cs_conn_create: created session=17 socket=324 (5 current connections)
Apr 22 13:26:47 [info ] pvpgn::d2cs::on_d2cs_initconn: [324] client initiated d2cs connection
Apr 22 13:26:47 [info ] pvpgn::d2cs::on_client_loginreq: got client (*PoblaPeres) login request sessionnum=0xB
Apr 22 13:26:47 [info ] pvpgn::d2cs::on_bnetd_accountloginreply: account PoblaPeres authed
Apr 22 13:26:47 [info ] pvpgn::d2cs::on_client_charloginreq: got character Chingui(*PoblaPeres) login request
Apr 22 13:26:47 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Chingui authed
Apr 22 13:27:22 [debug] pvpgn::d2cs::on_client_charlistreq_110: adding char chingui (*PoblaPeres)
Apr 22 13:27:23 [info ] pvpgn::d2cs::on_client_charloginreq: got character Chingui(*PoblaPeres) login request
Apr 22 13:27:23 [info ] pvpgn::d2cs::on_bnetd_charloginreply: character Chingui authed
Apr 22 13:28:05 [info ] pvpgn::d2cs::on_client_joingamereq: request join game Syn1 for character Chingui on gs 1
Apr 22 13:28:05 [info ] pvpgn::d2cs::on_d2gs_joingamereply: added Chingui to game Syn1 on gs 1
Apr 22 13:28:05 [debug] pvpgn::trans_net: checking 192.168.1.20:4000 for client 200.125.122.242 ...
Apr 22 13:28:05 [debug] pvpgn::trans_net: no match found for 192.168.1.20:4000 (not translated)
Apr 22 13:28:05 [info ] pvpgn::d2cs::on_d2gs_joingamereply: no translation required for gamserver 192.168.1.20
Apr 22 13:28:05 [info ] pvpgn::d2cs::d2cs_conn_destroy: [324] closed connection 17 (4 left)

@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 22, 2019

Do you mean address_translation.conf? AFAIR this is required only when you have no control to a router with public IP, or when playing "Open Battle.net" when a connection between players directly without a dedicated server (D2GS). It should not be edited If you setup NAT on the device properly.

Failed to join game can appear because of block UDP traffic or when can't parse the character file https://pvpgn.pro/d2gs_installation.html

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

After removing the change I made to address_translation.conf I can no longer connect to the realm, so apparently, there's something going on with that.

If I comment out the translation I can't connect to realm.
If I keep the settings I modified I can connect to the realm but I cann't create or join games.
This happens from outside the network, if I connect from within everything works ok.

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 22, 2019

Ok so I got it working.

I modified all entries related to diablo 2 on address translation and it worked ok.

This is how address_translation.conf looks like now:

################################################################################
# Diablo II Character Server translation (d2cs)
#
# You need this ONLY if you run a d2cs (ie ONLY if you will host a Diablo2 
# closed realm).
#
# Set input address to the ip of d2cs (same as the ip in the realm.conf)
# Set output address to the address to be sent to the clients
# Set exclude to the range of clients you want to recieve the input address
#    instead of the output address
# Set include to the range of client you want to recieve the output address
#
# input (ip:port)    output (ip:port)    exclude (ip/netmask)    include (ip/netmask)
#-----------------  ------------------  ----------------------  ----------------------

# Example, if you run a d2cs on IP 192.168.1.10 port 6113 and you have put the 
# same IP/port in realm.conf AND you have the external IP 1.2.3.4 AND you want 
# to exclude from translation the internal clients (those with IPs 192.168.1.x) 
# AND you port forward port 6113 TCP from your router to the machine running 
# d2cs and port 6113 then here put:

192.168.1.20:6113   190.16.225.166:6113       192.168.1.0/24        ANY



################################################################################
# Diablo II Game Server Translation (d2gs)
#
# Set input address to the ip of d2gs (same as the gameservlist in d2cs.conf)
# Set output address to the address to be sent to the clients
# Set exclude to the range of clients you want to recieve the input address
#    instead of the output address
# Set include to the range of client you want to recieve the output address
#
# input (ip:port)    output (ip:port)    exclude (ip/netmask)    include (ip/netmask)
#-----------------  ------------------  ----------------------  ----------------------

# Example, if you run a d2gs on IP 192.168.1.100 (and port 4000, d2gs cannot 
# listen on other port, it will automatically listen on port 4000) and you have 
# put the same IP in d2cs.conf and d2dbs.conf gameservlist setting AND you have 
# the external IP 1.2.3.4 AND you dont want to exclude from translation anyone 
# AND you port forward port 4000 TCP from your router to the machine running 
# d2gs and port 4000 then here put:

192.168.1.20:4000  190.16.225.166:4000       NONE                   ANY
@HarpyWar

This comment has been minimized.

Copy link
Member

commented Apr 22, 2019

Great, thanks for the sharing the solution.

@HarpyWar HarpyWar closed this Apr 22, 2019

@HarpyWar HarpyWar added the question label Apr 22, 2019

@cen1

This comment has been minimized.

Copy link
Collaborator

commented Apr 22, 2019

@HarpyWar I made a pull request for this exact problem because I wasted hours. For me it happened on "public" VPS which didn't expose public IP directly on interface. I feel like address_translation.conf should be exposed more in the main README to bring more attention to it.

@RobertRoberts2020

This comment has been minimized.

Copy link
Author

commented Apr 23, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.