Jump to content
  • 0

[QUESTION] Server Console Header Shows "200 fps (1)" Why?


Its_Solar

Question

Posted (edited)

Hello MTA Community,

I'm facing a critical issue during attacks on my server. The symptoms are very specific, and I'm hoping to get some guidance on how to mitigate them.

The Problem:

  • During an attack, all players experience severe lag simultaneously.

  • They receive repeating "Network Trouble" messages, making the server unplayable.

  • In the server console header, the FPS counter sometimes shows an abnormal value like 200 fps (1) during the attack. The 200 varies, but the (1) in parentheses remains constant.

  • The server itself doesn't crash, but it becomes completely unresponsive to players.

My Questions:

  1. Based on these symptoms, is this likely a UDP Flood on the game port (22003) or the query port (22126)?

  2. What are the most effective server-side rate limiting rules (using iptables or nftables) to protect these ports without blocking legitimate players?

  3. Are there any specific MTA settings in mtaserver.conf (like httpdownloadurl or query port settings) that can reduce the attack surface?

Important Context:
I am hosting from Iran, where internet access is highly unstable and can become completely isolated. This makes using services like Cloudflare impossible (Cloudflare does not protect UDP game traffic anyway). I need solutions that can be implemented on the server itself or through Iranian hosting providers with built-in DDoS protection.

Any help or guidance would be greatly appreciated. Thank you.

Edited by Its_Solar

3 answers to this question

Recommended Posts

  • 0
Posted (edited)
3 saat önce Its_Solar şunları söyledi:

This is clearly a UDP/Query Flood attack. This is the reason for the FPS drops in the console and why players are experiencing "Network Trouble" warnings. Since Cloudflare does not function in Iran, you will need to resolve this directly on your machine. Connect via SSH and execute the following commands: 1. Protect the Query Port (22126): iptables -A INPUT -p udp --dport 22126 -m state --state NEW -m hashlimit --hashlimit-above 5/sec --hashlimit-burst 10/sec --hashlimit-name mta_query -j DROP 2. Protect the Game Port (22003): iptables -A INPUT -p udp --dport 22003 -m limit --limit 50/sec --limit-burst 100 -j ACCEPT iptables -A INPUT -p udp --dport 22003 -j DROP 3. Additional Configuration: Open the `mtaserver.conf` file and set `<bandwidth_reduction>` to `optimized`. Finally, contact your hosting provider and request that they implement strict protection or rate limiting for your UDP ports; the server will recover immediately.

Edited by Berat Erdem
  • 0
Posted
45 minutes ago, Its_Solar said:

Yardımın için teşekkürler kardeşim! ❤️ Ama benim Windows VPS'im var.

😃 You'r Welcome my bro

 

Definitive Solution for Windows VPS UDP Lag:

 * Install Simplewall (Per-Second Packet Limiting):

   * Windows' built-in firewall cannot limit UDP packets.

   * Download free Simplewall, and set a Rate Limit (per-second packet limit) on UDP ports 22003 and 22126.

 * PowerShell Commands (Run as Administrator):

   netsh int tcp set global netdma=enabled

netsh int ipv4 set dynamicport udp start=49152 num=16384

 

 * mtaserver.conf Setting:

   * Set <bandwidth_reduction> to optimized.

 * Open a Ticket with Your Hosting Provider:

   * Tell them: "Apply hardware-level Rate Limiting via the router on my UDP ports 22003 and 22126." The Windows kernel alone cannot handle massive UDP floods; the main solution is at the datacenter level.

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...