Я использую игровой сервер на движке Quake 3 (Wolfenstein: Enemy Territory) на Ubuntu 16.04, и я столкнулся с довольно загадочной проблемой. Неделю назад у игроков начались проблемы с подключением к серверу. Обычно сервер пытается отправить моментальный снимок состояния игры при подключении клиента, но это терпит неудачу сотни раз, прежде чем удается замедлить среднее время инициализации подключения с ~ нескольких секунд до минут.
Кажется, что эти проблемы связаны только с одним портом. Перемещение сервера на другой порт (по умолчанию 27960 -> 27961) устраняет проблему. Кажется, что некоторые игроки могут подключаться без проблем, но для большинства игроков (из разных стран, например, Финляндии, Испании, Великобритании и т. Д., Не ограничиваясь одним интернет-провайдером или страной) это занимает минуты.
Я уже несколько месяцев не касался каких-либо конфигураций, связанных с межсетевым экраном / сетевым интерфейсом. Я использую fail2ban, но он использует конфигурацию по умолчанию (на основе этого https://plusbryan.com/my-first-5-minutes-on-a-server-or-essential-security-for-linux-servers). Я попытался отключить fail2ban, но это не помогло.
Мне было интересно, есть ли какие-либо возможные причины, которые могут как-то вызвать потерю пакетов на одном порту?
Очевидно, это была проблема, связанная с движком Quake 3. Выполнение приведенных ниже команд (на клиентах) устранит проблему:
net_port 1
net_restart