FiveM Failed to get info from server (tried 3 times): what it means and how to fix it
Updated
Verified against FXServer build 35245 (recommended), 37150 (latest) and txAdmin v8.1.1, checked on 7 October 2026. Sources
The server’s UDP reply never came back, which points first at UDP 30120, forwarding, firewalls and your proxy rather than at an attack.
FiveShield helps only if the path to your server is under attack. If you already run a proxy, its UDP hop is the first thing to check.
The player’s client finished the HTTP part of joining, then sent a UDP getinfo request four times, about five seconds apart, and got no answer. Check first: UDP 30120 closed or not forwarded, endpoint_add_udp missing, a proxy that carries TCP but not UDP, or (our reading) a host game firewall that drops UDP on your game port.
First check: from a network that is not yours, press F8 in FiveM and run connect IP:Port with your public IP and game port. The same message means the UDP path is broken; a successful join means the path can work, so examine the failing player.
Suspect a DDoS only on evidence from outside the machine (your host’s notice, an inbound traffic graph, a capture); this error alone proves nothing.
Messages you may see
Failed to get info from server (tried 3 times).In the player’s connection dialog, after four UDP getinfo requests went unanswered
If you are the server owner, are you sure you are allowing UDP packets to and from the server?In the same dialog, under the error
Failed to connect to server after 3 attempts.In the player’s client, one stage later (the ENet connect)
Handshaking with server...In the player’s client; a player who stays here never got past the HTTP handshake
Failed to fetch /info.json to obtain policy metadata.In the player’s client, at an earlier stage (the HTTP GET of /info.json)
What it actually means
Joining is a sequence, listed in FiveM’s proxy documentation: /info.json, initConnect and getEndpoints on the connect endpoint; getConfiguration and the /files/* downloads on the server endpoint or a file server; then a UDP info request to the server endpoint and the ENet connect. Every stage before the UDP request is HTTP over TCP.
The message comes from the client’s NetLibrary.cpp. After the downloads it shows Fetching info from server... and sends the packet getinfo xyz over UDP, again whenever more than five seconds have passed, adding (attempt 2), (attempt 3). The client gives up as soon as the fourth request is sent, about 15 seconds after the first.
It accepts the reply, an infoResponse packet, only from the address it sent getinfo to. So the message says one thing: the request or its reply did not get through, for a reason it does not name.
Check this first (two minutes)
Steps 4 and 5 need a terminal on the server machine.
Which message do the players see?
Failed to get info from server (tried 3 times).: Continue with step 2.Failed to fetch /info.json to obtain policy metadata., orHandshaking with server...that never ends: Open the server list guide (Direct Connect,/info.json)Failed to connect to server after 3 attempts.: Read cause 1: the same UDP path, one stage later
One player or everyone, and what changed first?
Only players who share a provider, a VPN or a router fail: Read cause 5: the player’s side
Everyone fails after you changed a proxy, a forward or a host firewall rule: Read causes 3 and 4: a proxy without UDP, a host game firewall
Everyone fails and nothing changed: Continue with step 3.
Join with Direct Connect from outside your network
Press F8, then enter your public IP and game port from a phone hotspot or a friend’s connection: from inside your network the traffic often skips your router’s forwarding and your provider’s firewall, so a join there proves little.
connect IP:PortIt joins: Read cause 5: the path worked this time, so check the players who fail
The same message: Continue with step 4.
Is FXServer bound to UDP 30120?
Run the first line on Linux or the second in Windows PowerShell. FXServer should own a UDP socket on your game port (on Windows,
OwningProcessis the process ID).ss -lunp Get-NetUDPEndpoint -LocalPort 30120No UDP socket on the port, or another program owns it: Read cause 2: the
endpoint_add_udplineNo FXServer process: Start the server and read its console: it is down, which is not a network problem.
FXServer owns the UDP socket: Continue with step 5.
Do the packets arrive, and does a reply leave?
On the machine that receives the players’ traffic (the origin, or the proxy host), capture while someone tries to join and stop with Ctrl+C. It needs root; on Windows, OVHcloud’s dashboard guide points to Wireshark.
tcpdump -n -i <iface> -c 20 'udp port 30120'Nothing arrives and a proxy sits in front: Read cause 3: a proxy that does not carry UDP
Nothing arrives and there is no proxy: Read cause 4, then cause 1: a firewall between you and the players
Packets arrive but nothing leaves: Read cause 1: the message asks about UDP
to and from the server, so check outbound rules tooPackets arrive and a reply leaves: Read causes 3 and 4: the reply is lost on the way back
Causes, ranked
Each cause names the check that settles it.
Ranked by what owners report most and how cheap each check is. That is an editorial order, not a statistic: nobody publishes a dataset of FiveM outage causes. Documented means official docs or the FXServer and txAdmin source. Owners report means forum threads and issue trackers. Our inference is our reasoning from documented facts, shown so you can check it.
UDP 30120 is blocked or not forwarded
Documentedgetinfotravels over UDP; every earlier stage used TCP. A firewall or router that passes TCP 30120 but drops UDP 30120 gives exactly this: the HTTP stages succeed, then four UDP requests go unanswered.How to confirm
- Run step 3 from outside, then check each layer: the system firewall, your router or provider, and any firewall your host runs in front of the machine. A website port check does not settle it (the docs do not say it tests UDP, and a forum poster reports the error while one showed the port open), nor does txAdmin showing the server online: its health check is a request to
/dynamic.jsonfrom the server’s own machine. What to do
- Allow UDP and TCP in both directions on the game port at every layer. The default
server.cfgbinds both:endpoint_add_tcp "0.0.0.0:30120"andendpoint_add_udp "0.0.0.0:30120". At home, forward both protocols.
endpoint_add_udpis missing, or uses another port than TCPDocumentedThe docs describe
endpoint_add_udpas the command that creates the UDP host instance, and its address and port must be valid and not already in use. Without it, TCP still serves the HTTP stages and the UDP request finds no listener (our reading). txAdmin flags a config with no address and port shared by both lines, endingPlayers would not be able to connect.How to confirm
- Step 4 shows whether FXServer owns a UDP socket on the port; then read
server.cfgand every file it loads withexec. What to do
- Put both lines on the same address and port:
endpoint_add_udp "0.0.0.0:30120"andendpoint_add_tcp "0.0.0.0:30120". If a local TLS proxy moves only the TCP port, write the UDP line first, as the docs say. Free the port if another process holds it.
A proxy or forward that does not carry UDP, or publishes the wrong UDP address
DocumentedFiveM’s proxy documentation separates two proxies: the connect endpoint can be an ordinary HTTPS reverse proxy, while the server endpoint “needs a raw TCP/UDP proxy on matching ports”. A relay that forwards TCP but not UDP lets
getConfigurationand the downloads through, then leaves the UDP request nowhere to go. The UDP address comes fromsv_endpoints(empty means your auto-detected public IP, not the relay’s); with several addresses listed, the client picks one at random, so one dead relay fails only some joins. The client also ignores aninfoResponsethat does not come from the address it sentgetinfoto (our reading ofNetLibrary.cpp).How to confirm
- Join through the proxy and, from an allowed address, through the origin: if only the origin works, the relay is at fault. Capture at both ends (step 5) to see where the packets stop.
What to do
- Give the server endpoint its own raw TCP and UDP relay on matching ports (the docs show an nginx
streamblock withlisten 30120;andlisten 30120 udp reuseport;), setsv_endpointsto its address, and let the origin’s firewall accept UDP from it.
A host game firewall that drops UDP on your game port
Our inferenceOVHcloud’s guide to its Game firewall (Game dedicated servers only) has you add rules per IP naming a game protocol and port range, and strongly recommends “Default Deny”, which “blocks all traffic that does not match the rules you set up for the Game Firewall”. It applies after the Edge Network Firewall, which the guide says cannot be too strict. The guide does not say how a FiveM rule treats TCP and UDP, so this is our reading: a port with no rule at all would drop the HTTP stages too (an earlier error), so this message points at a rule that lets them through but not the UDP side of your port.
How to confirm
- On OVHcloud, Network > Public IP Addresses, then Configure Game firewall on the IP players use, shows the rules and the Default Deny option; the IP’s Game firewall status must read
Configuredfor rules to apply. Network > Network Security Dashboard (Advanced mode) shows the Firewall and GAME firewall state per IP. Look for a rule that covers your game port, 30120 by default. What to do
- Add or correct the rule for your game port on that IP and on every additional IP that serves players. Rules apply a few minutes after saving.
The player’s side: VPN or home network
Owners reportThe client prints this message for whichever server it was joining, so a player whose UDP cannot leave their network sees it everywhere (our reasoning from the client code). In the one forum thread we read, a poster reports a VPN that needed its UDP option switched on, and another that the error appeared behind a router and not when connected straight to the modem.
How to confirm
- Try other servers, a phone hotspot, the VPN off (or on: another poster says a VPN fixed it), then the PC plugged straight into the modem.
What to do
- Change one thing at a time. If a whole region fails, go back to causes 1 to 4.
A DDoS, or a host mitigation dropping UDP
Our inferenceThe DDoS caseA flood aimed at the game port can leave the UDP request unanswered, and a host’s mitigation can drop legitimate UDP while it filters (OVHcloud’s guide asks owners who see false positives to contact support). We rank it last because the HTTP stages passed first, and a flood heavy enough to disrupt UDP replies would, in our reasoning, usually disturb them too; a UDP-only flood or filter would not, which is why it stays on the list.
How to confirm
- Look for the outside evidence in the next section.
What to do
- Note the times, collect that evidence, then contact your host with the destination IP, protocol and port, and whether legitimate traffic is dropped.
What a DDoS looks like here
This message alone never proves an attack: you need a record made outside the game, by your host or at the network interface.
What a DDoS looks like here
- Your host reports an attack on the IP players connect to, at the times of the failures, by e-mail or in its dashboard.
- The HTTP stages fail too (
Failed to fetch /info.json to obtain policy metadata., orhttp://IP:port/info.jsonstops loading from outside), although a UDP-only attack can leave them working. - Inbound packets per second far above a quiet-day baseline, or captured UDP to the game port from many scattered sources, far more than your player count.
Evidence you can collect
The host’s record
Ask for the times, destination IP and attack vectors (on OVHcloud, the scrubbing centre log columns Detection time, End time, Destination IP and Attack vectors) and save them promptly: one year of retention for that log, two months for the traffic chart. Source addresses are not shown, as they are usually spoofed: there is nothing to ban.
Packet rate at the interface
Compare
rxpck/s, the inbound packets per second, against a baseline taken on a quiet day (first line Linux, second Windows PowerShell).sar -n DEV 1 10 Get-Counter -Counter '\Network Interface(*)\Packets Received/sec' -ContinuousWho is sending
With root, capture 2,000 packets to the game port and read the source column: a handful of addresses matching your players is normal, many scattered sources is not. The capture shows only what survives your host’s filtering, so a quiet one proves nothing while the host is scrubbing.
tcpdump -n -i <iface> -c 2000 'udp dst port 30120'
What it does not look like
(attempt 2)and(attempt 3)afterFetching info from server...: the normal retry sequence, not a flood.- Failures limited to players on one provider, VPN or router: that points to cause 5, not to your server’s path.
When protection is, and is not, the answer
Protection is the answer when
- Your host’s dashboard or notice shows an attack on the IP players connect to, at the times of the failures.
- A capture shows UDP to the game port from many scattered sources, far more than your player count.
Protection is not the answer when
endpoint_add_udpis missing or on another port than TCP.- UDP 30120 is closed on your router, system or host firewall: a proxy only moves the hop, and the new hop needs the same rule.
If the path to your server is under attack
When your host’s record or a capture shows an attack, the error is a symptom and the fix lies upstream: the traffic must be filtered before it reaches the address that answers players. Do not restart repeatedly or publish a new IP.
Put a proxy that carries TCP and UDP in front of the server, restrict the origin so only the proxy can reach it, then rotate the origin IP. Test the UDP hop with steps 3 and 5 first: an unconfigured UDP leg produces this very error.
Your first server gets $10 CAD of free trial credit (eligible accounts, no card required): about four days of protection for up to 50 players.
Still stuck? What to post
Replace your public IP with a placeholder if the thread is public, and never post passwords or your license key.
- The exact message players see, your FXServer build and your txAdmin version.
- Your
endpoint_add_tcp,endpoint_add_udpandsv_endpointslines, and the output ofss -lunporGet-NetUDPEndpoint -LocalPort 30120. - The Direct Connect result from outside, twenty lines of the step 5 capture with players’ addresses masked, and the times of the failures with your time zone.
- With a proxy: its type and UDP configuration. With a host firewall: whether Default Deny is on, and the rules for the IP players use. Any host notice.
Frequently asked questions
Does Failed to get info from server mean I am being DDoSed?
Not by itself. Four UDP getinfo requests got no accepted answer after the HTTP stages worked: look first at the UDP port, endpoint_add_udp, a proxy or a host firewall. An attack needs evidence from outside your machine.
After I put a proxy in front of my server, every player gets this error. Why?
Every stage before the UDP request runs over TCP: a relay that forwards TCP but not UDP lets them all through. Check cause 3: a raw UDP relay on matching ports, an sv_endpoints that names the address players should use, and an origin firewall that accepts UDP from the relay.
How is this different from Failed to connect to server after 3 attempts?
A different stage: that message comes from the ENet connect, one stage later, so the getinfo was answered. Start with the same path checks; the documentation does not list its causes separately.
Verified against, and sources
Verified against FXServer build 35245 (recommended), 37150 (latest) and txAdmin v8.1.1, checked on 7 October 2026.
- FXServer source: NetLibrary.cpp (opens in a new tab)
- FXServer source: GetConfigurationMethod.cpp (opens in a new tab)
- FiveM docs: proxy setup (opens in a new tab)
- FiveM docs: server issues (opens in a new tab)
- FiveM docs: vanilla server setup (opens in a new tab)
- FiveM docs: server commands (opens in a new tab)
- txAdmin source: fxsConfigHelper.ts (opens in a new tab)
- txAdmin source: FxMonitor utils.ts (opens in a new tab)
- OVHcloud docs: Game firewall (docs.ovhcloud.com)
- OVHcloud docs: Network Security Dashboard (opens in a new tab)
- Cfx.re forum: owner and player thread on this error (anecdotal) (opens in a new tab)
- Linux manual: ss(8) (opens in a new tab)
- Linux manual: sar(1) (opens in a new tab)
- tcpdump manual page (opens in a new tab)
- Microsoft Learn: Get-NetUDPEndpoint (opens in a new tab)
- Microsoft Learn: Get-Counter (opens in a new tab)
Sources from companies that compete with FiveShield are named, with their domain, but not linked.
Server behaviour changes between builds. If your build prints something different, the build numbers above tell you what this page was checked against.