Skip to main content

Diagnose FiveM joining problems on the assigned TCP and UDP port

A FiveM server can appear online in a panel while players cannot join. The process being running does not prove that its public TCP and UDP paths work. Test the address assigned to the service, then compare the exact failure with startup logs before changing firewall rules or resource files.

Confirm the connection target

Copy the server's assigned public IP and game port from its connection details. Do not assume the port is 30120, and do not use the txAdmin web address or database endpoint. If a hostname is involved, check that it resolves to the intended address. A website proxied through an ordinary HTTP CDN does not automatically proxy FiveM game traffic.

Use a device outside the server environment for the join test. In your FiveM client's F8 console, replace the placeholders below with your allocation:

connect PUBLIC_GAME_IP:ASSIGNED_GAME_PORT

Record the time and full error. Test a second permitted network if possible, such as another player's connection, to distinguish a single-client problem from an all-player outage. Do not ask players to disable their security software broadly.

Check the server side without assuming root access

Inspect the FXServer console for an endpoint binding failure, licence failure or repeated crash. Confirm the active configuration binds both TCP and UDP on the assigned game port. A container may bind 0.0.0.0 internally while the host maps the public address; forcing a public IP that is absent inside the container can prevent startup.

If you own a VPS and are authorised to manage its firewall, check only the assigned game port and both protocols. On a managed game service, ask CloudExa to verify allocation and host firewall mapping. Do not install a firewall inside a container, flush host rules, or open every port as a troubleshooting shortcut.

Understand what a web check proves

From your own computer, an optional HTTP check against the assigned game port can help distinguish basic TCP reachability. Replace the placeholders before running this in a local terminal:

curl --connect-timeout 5 --max-time 10 "http://PUBLIC_GAME_IP:ASSIGNED_GAME_PORT/info.json"

A valid response shows that this TCP/HTTP path answered at that time. It does not prove UDP traffic reaches FXServer, that a client can finish joining, or that framework character loading works. Conversely, an HTTP response can be intentionally restricted or proxied in some deployments; interpret it alongside the actual client test. A generic TCP port checker cannot certify UDP.

Separate joining from gameplay failures

If the client reaches resource downloads and then fails on one file, inspect that resource or download path. If it reaches character selection and hangs, look at framework and database errors. If direct connection works but the listing is missing, check Cfx authentication and listing configuration separately; repeatedly changing the game port can create a second problem.

For support, provide the service ID, public address and port, test time, whether both tested networks failed, and the redacted console error. Keep licence keys and authentication tokens private. Leave txAdmin and RCON restricted: exposing management interfaces is not required to let players join the game.

Further reading

Looking for another game? Browse game server setup and troubleshooting guides.