Satisfactory Руководство

Ошибка «Подключение к хосту утеряно» в Satisfactory: таймауты, MTU и параметры сети

Причины и решение ошибки «Connection to the host has been lost» на выделенном сервере Satisfactory: настройка таймаутов в Engine.ini, исправление фрагментации пакетов MTU и параметров сокетов UDP.

Ошибка «Подключение к хосту утеряно» в Satisfactory: таймауты, MTU и параметры сети

Ошибка «Подключение к хосту утеряно» (Connection to the host has been lost) — одна из наиболее частых проблем при игре на выделенном сервере Satisfactory. Сбой обычно происходит либо в момент первоначального входа на сервер при загрузке огромной базы, либо во время периодических автосохранений, когда сервер кратковременно зависает на сбросе данных на диск. Клиент игры не получает сетевые пакеты в течение установленного таймаута и разрывает соединение.

В этом руководстве разобран механизм работы сетевого драйвера Unreal Engine в Satisfactory, настройка параметров таймаута в Engine.ini, устранение фрагментации пакетов MTU и оптимизация автосохранений для предотвращения сетевых лагов.

Почему сервер Satisfactory разрывает соединение с игроками#

Выделенный сервер Satisfactory работает по сетевому протоколу UDP на порту 7777 (Unreal Engine NetDriver). В отличие от небольших сессионных игр, фабрика в Satisfactory содержит сотни тысяч взаимосвязанных объектов: конвейерные ленты, манипуляторы, трубы, поезда и производственные машины.

Причины разрыва соединения делятся на три ключевые категории:

  1. Сетевой таймаут при автосейве: Сохранение фабрики размером 50–100 МБ на медленных дисках блокирует главный поток сервера на 10–30 секунд. Если значение ConnectionTimeout меньше времени блокировки, клиент считает сервер недоступным и выходит в главное меню.
  2. Фрагментация пакетов MTU: При входе на сервер передаётся массивное начальное состояние мира. Если размер пакета превышает MTU сетевого интерфейса (обычно 1500 байт), а промежуточный маршрутизатор сбрасывает фрагментированные UDP-дейтаграммы, соединение зависает на этапе «Joining».
  3. Ограничение пропускной способности в клиенте: В настройках игры Satisfactory по умолчанию включён профиль сети с низким битрейтом, ограничивающий скорость потока данных.

Настройка сетевых таймаутов в Engine.ini#

Для увеличения допустимого времени ожидания ответа сервера отредактируйте конфигурационный файл движка на Linux: /opt/satisfactory/FactoryGame/Saved/Config/LinuxServer/Engine.ini

Остановите службу сервера перед редактированием:

bash
sudo systemctl stop satisfactory

Добавьте или обновите секцию IpNetDriver в конце файла Engine.ini:

ini
[/Script/OnlineSubsystemUtils.IpNetDriver]
ConnectionTimeout=90.0
InitialConnectTimeout=180.0
NetServerMaxTickRate=30
LanServerMaxTickRate=30
MaxNetTickRate=30
  • ConnectionTimeout=90.0 — увеличивает лимит ожидания сетевых пакетов во время игры до 90 секунд (дефолтное значение — 30 секунд), что полностью перекрывает задержки во время записи автосохранений.
  • InitialConnectTimeout=180.0 — даёт клиенту до 3 минут на загрузку начального снапшота крупной фабрики при входе.
  • NetServerMaxTickRate=30 — стабилизирует сетевой тик сервера на отметке 30 Гц, снижая нагрузку на процессор без потери плавности синхронизации.

Устранение фрагментации пакетов и проверка MTU интерфейса#

Если игроки не могут подключиться даже с увеличенными таймаутами, проверьте максимальный размер полезной нагрузки (MTU) на сетевом адаптере сервера:

bash
ip link show | grep mtu

Выполните проверку пути с запретом фрагментации (DF-бит), чтобы выявить оптимальный размер MTU:

bash
ping -M do -s 1472 -c 4 1.1.1.1

Если пинг возвращает ошибку Frag needed and DF set, сетевой провайдер или туннель (например, WireGuard или VPN) использует уменьшенный MTU. В таком случае уменьшите MTU сетевого интерфейса до 1420 или 1400:

bash
sudo ip link set dev eth0 mtu 1420

Проверьте статус открытых портов UDP с помощью утилиты ss:

bash
sudo ss -ulnp | grep 7777

Увеличение интервала автосохранений для предотвращения зависаний#

Дефолтный интервал автосохранений в Satisfactory составляет 5 минут (300 секунд). На развитых фабриках частые сохранения создают постоянные лаги и угрозу разрыва соединений.

Увеличьте интервал автосохранений до 20–30 минут через конфигурационный файл /opt/satisfactory/FactoryGame/Saved/Config/LinuxServer/GameUserSettings.ini:

ini
[/Script/FactoryGame.FGSaveSession]
mAutosaveInterval=1200

Значение 1200 устанавливает интервал сохранения в 20 минут, что существенно повышает стабильность многопользовательской игры.

В современной панели управления серверами мониторинг сетевых сокетов, задержек и автоматическое выделение высокоскоростных NVMe-дисков исключают микрофризы при сбросе сохранений.

Настройки качества сети на стороне клиента#

Помимо серверных настроек, каждый подключающийся игрок должен скорректировать сетевые параметры в самом клиенте Satisfactory:

  1. Откройте настройки игры: Настройки (Options) → Геймплей (Gameplay).
  2. Найдите параметр Качество сети (Network Quality).
  3. Установите значение Ultra (Ультра).

Параметр Ultra снимает жёсткий лимит пропускной способности клиента с 30 КБ/с до неограниченного канала, позволяя клиенту мгновенно принимать крупные сетевые дельты от сервера без переполнения входного буфера.

Запустите службу сервера Satisfactory:

bash
sudo systemctl start satisfactory
sudo journalctl -u satisfactory -n 50 --no-pager | grep -i "netdriver"

После применения комплексных сетевых параметров ошибка «Подключение к хосту утеряно» перестанет беспокоить игроков даже при одновременной работе нескольких мегафабрик.

Источники#