DiscoPoloNew | 2020-11-02 22:02:06 UTC | #1
Witam. Posiadam na VPS serwer w Counter-Strike 1.6.
Dzisiaj normalnie sobie grając crash serwera.
Próbowałem włączyć na nowo lecz cały czas spami w konsoli:
[REUNION]: Blocking query flood from a lot of spoofed addresses: 504 pps
[REUNION]: Blocking query flood from a lot of spoofed addresses: 645 pps
[REUNION]: Blocking query flood from a lot of spoofed addresses: 558 pps
W reunion.cfg znalazłem dwa cvary:
EnableQueryLimiter = 1
QueryRateLimit = 256
Serwer odpalił dopiero wtedy gdy QueryRateLimit zmieniłem na 2048 (max) lub EnableQueryLimiter na 0.
Z tego co gracze zdążyli mi zgłosić spora część osób nie ma dostępu do serwera.
Dostają kicka np z powodem:
No challenge for your address
Mam jeszcze kilka innych VPS na których stoją serwery i owego problemu nie ma.
Czytając kilkanaście tematów znalezionych w internecie podobno to jakiś query flood.
Jak mogę sobie z tym poradzić?
Axerr | 2020-11-07 22:09:39 UTC | #2
Zwyczajnie ogranicz maksymalną ilość pakietów na sekundę za pomocą iptables dla portu query.
Takie rozwiązanie powinno naprawić problem.
DiscoPoloNew | 2020-11-03 17:31:08 UTC | #3
W jaki sposób?
Jaka wartość będzie optymalna?
DiscoPoloNew | 2020-11-04 21:36:44 UTC | #4
Ref
Axerr | 2020-11-07 22:09:39 UTC | #5
[quote=”DiscoPoloNew, post:3, topic:16591”]
W jaki sposób?
[/quote]
https://making.pusher.com/per-ip-rate-limiting-with-iptables/
https://unix.stackexchange.com/questions/163657/set-packet-rate-limit-via-iptables
[quote=”DiscoPoloNew, post:3, topic:16591”]
Jaka wartość będzie optymalna?
[/quote]
To zależy od Twoich preferencji.
Jeżeli 500 pakietów na sekundę wywala serwer to na Twoim miejscu ustaliłbym 5 pakietów na sekundę, resztę do odrzucenia
Nieznajomy11 | 2020-11-05 04:47:37 UTC | #6
[quote=”Axerr, post:5, topic:16591”]
Jeżeli 500 pakietów na sekundę wywala serwer to na Twoim miejscu ustaliłbym 5 pakietów na sekundę, resztę do odrzucenia
[/quote]
[potrzebne źródło]
To brzmi jak bardzo zły pomysł. Najpierw trzeba wiedzieć, ile pakietów wysyła normalny klient, nie strzelać na oślep. 5/s wydaje się absurdalnie niską wartością w każdej grze, szczególnie FPS. A to z pominięciem faktu, że normalnego gracza może “przylagować” i wyśle on więcej pakietów na raz.
Axerr | 2020-11-05 10:37:21 UTC | #7
[quote=”Nieznajomy11, post:6, topic:16591”]
To brzmi jak bardzo zły pomysł.
[/quote]
Dlaczego?
[quote=”Nieznajomy11, post:6, topic:16591”]
Najpierw trzeba wiedzieć, ile pakietów wysyła normalny klient, nie strzelać na oślep.
[/quote]
Z tego co wiem to query używane jest do pobrania statusu serwera, więc klient raczej często requesta wysyłał nie będzie (albo w ogóle).
[quote=”Nieznajomy11, post:6, topic:16591”]
5/s wydaje się absurdalnie niską wartością w każdej grze, szczególnie FPS
[/quote]
Nadal mowa tutaj o query, czyli statusie serwera, nie blokujemy pakietów gry. Klik.
Może źle zrozumiałeś. Na przykładzie serwera Minecraft: nie limitujemy portu 25565 na porcie TCP (gameplay) tylko UDP (query, aktualny status serwera).
[quote=”Nieznajomy11, post:6, topic:16591”]
A to z pominięciem faktu, że normalnego gracza może “przylagować” i wyśle on więcej pakietów na raz.
[/quote]
No fajnie, przylaguje gracza, bo może ma słabszy internet, bo może mu brat odpina i podpina etherneta, bo może […]
Ale co ma do tego limt query?
Adminio | 2020-11-07 21:55:27 UTC | #8
Wina leży po stronie że pluginy nagryzają się co powoduje próbę wybrania danego czyli masz jeden plugin a drugi jest taki sam ale działa w 2 strone i któryś z nich chcę być 1 i próbuje ci się odpalić … miałem to samo jeżeli używasz gotowców polecam ci dopisać wszędzie debug bo przy 10 graczach będzie ci to się powtarzało :)
DiscoPoloNew | 2020-11-07 22:08:52 UTC | #9
Nie używam gotowców.
Rzeczywiście leciał flood na port udp.
Kilka regułek w iptables i sprawa załatwiona ;)
system | 2020-12-09 22:08:59 UTC | #10
Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.