cso2-master-server icon indicating copy to clipboard operation
cso2-master-server copied to clipboard

Can't connect to host

Open dronmoroz opened this issue 5 years ago • 14 comments

Hello! At first, I would like to thank for the development of this server! Sir Ochii thank you for your hard work! We are overtaken by the following error: User 's unreadied in room and kicks from the server for loading 10%. We are opened server on GCP (google cloud platform). Opened all ports for server needed. We can enter on the server and can join in room but we cant play together with my friends.

As soon as I start the server my friends loading to 10% and it stops. Then 10-20 seconds later he have kicked from room with error Game server connection failed and in the consoce serve writes it:
host "DraveMor" updated room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s settings (id: 2) user "DraveMor" tried to toggle a room's game start countdown, although it can't start. room name "CSO2_UI_DEFAULT_ROOMTITLE_001" room id: 2 user "GudVether" readied in room "CSO2_UI_DEFAULT_ROOMTITLE_001" (id 2) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 6 (host says it's at 6) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 5 (host says it's at 5) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 4 (host says it's at 4) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 3 (host says it's at 3) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 2 (host says it's at 2) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 1 (host says it's at 1) room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id 2) countdown is at 0 (host says it's at 0) host "DraveMor" started room "CSO2_UI_DEFAULT_ROOMTITLE_001"'s (id: 2) match on map 7 and gamemode 3 user "GudVether" unreadied in room "CSO2_UI_DEFAULT_ROOMTITLE_001" (id 2) toggleUserReadyStatus: host tried to toggle ready

image

NodeJS -v: 10.15.3 NPM -v: 6.4.1 OS: Windows server 2016

Please help... Server release latest.

dronmoroz avatar Apr 09 '19 17:04 dronmoroz

Make sure the room's host has enabled NAT in its network's router.

Does the server allow inbound/outbound UDP traffic?

Also put your server version instead of saying it's the latest one

L-Leite avatar Apr 09 '19 18:04 L-Leite

Make sure the room's host has enabled NAT in its network's router.

Does the server allow inbound/outbound UDP traffic?

Also put your server version instead of saying it's the latest one

NAT is enabled on host router.

UDP traffic is allowed as well: image

And server version is - 0.8.14

dronmoroz avatar Apr 09 '19 19:04 dronmoroz

Try adding this code to line 185:

        // ...
        if (packet.isHeartbeat()) {
            console.log('Received holepunch heartbeat, ignoring...')
            return
        }
        // ...

This will log any incoming "heartbeat" (side note: I'm not sure if it's a heartbeat) packets.

And in line 206:

        // ...
        console.log('User %s holepunched. IP: %s (internal %s) Client Port: %i (internal %i)'
            + 'Server Port: %i (internal %i)',
            user.userName, user.externalIpAddress, user.localIpAddress,
            user.externalClientPort, user.localClientPort)
        // ...

This will log an user's internal and external IP addresses, and the ports to be used by the host or guest.

Feel free to hide the IP addresses. I want to know if the server is receiving any holepunching attempt.

EDIT: you need to download the source code, add the new lines of code then build it with npm run build. Do you want me to send you a build instead?

L-Leite avatar Apr 09 '19 19:04 L-Leite

Yes send me please a build, I'll test it now

dronmoroz avatar Apr 09 '19 19:04 dronmoroz

https://a.uguu.se/SH1ayQscRgqy.gz

L-Leite avatar Apr 09 '19 19:04 L-Leite

log.txt Here is a log file from server. We can't connect with my friend again. Error 2004 still have.

dronmoroz avatar Apr 09 '19 19:04 dronmoroz

Did you try to play in some other server?

L-Leite avatar Apr 09 '19 19:04 L-Leite

We now trying run server with hamachi network with another computer. And problem is solved. We are successfully connect and playing

dronmoroz avatar Apr 09 '19 19:04 dronmoroz

In google RPD problem still have. And I don't know how it resolve. For any decision my trouble I would grateful

dronmoroz avatar Apr 09 '19 20:04 dronmoroz

In google RPD problem still have. And I don't know how it resolve. For any decision my trouble I would grateful

Run a OpenVPN server on your server and disallow Internet traffic should be good.

GEEKiDoS avatar Apr 09 '19 22:04 GEEKiDoS

you and the host need connect to a virtual LAN, or need host in the public IP state (you can use https://pingmyip.org/ for testing), currently the server will not be responsible for forwarding the traffic data between the two people. if no one has a public IP, this can be solved by using the P2P hole punch tool (just like Hamachi), or connect to a virtual LAN through a VPN

dounai2333 avatar Apr 10 '19 08:04 dounai2333

I have the same situation. My friend has such a problem. (Although the launcher"CSO2" are the same).

My ports are all open.

NPM: 6.4.1 NodeJS: v10.10.0 OS Server: Debian 4.9.110-3+deb9u2 (Linux)

DmitrySenpai avatar Apr 14 '19 13:04 DmitrySenpai

I have the same situation. My friend has such a problem. (Although the launcher"CSO2" are the same).

My ports are all open.

NPM: 6.4.1 NodeJS: v10.10.0 OS Server: Debian 4.9.110-3+deb9u2 (Linux)

as I said above, there is no other solution, if the situation allows, and the number of people is not large, the use of P2P hole punch tool is the fastest solution.

dounai2333 avatar Apr 14 '19 13:04 dounai2333

Can you ping it?

rizkidewanto avatar Apr 19 '19 10:04 rizkidewanto