Если хотите играть по локальной сети с двух компьютеров в одной квартире, задача обычно сводится к двум вещам: чтобы компьютеры видели друг друга в сети и чтобы сервер игры был доступен извне для второго участника (а не “только для себя”).

Ниже - рабочий порядок действий, который подходит под большинство игр на LAN (Minecraft/Minetest и аналоги), а также под типовые домашние сценарии с роутером или без.

Схема подключения: напрямую или через роутер

Сначала определите, как соединены компьютеры:

  • Прямое соединение: кабель “компьютер-компьютер” (обычно нужен кабель для прямого Ethernet, иногда - кроссовер не нужен, почти везде автосогласование).
  • Через роутер: оба компьютера подключены кабелем или по Wi-Fi к одному роутеру.

От этого зависит, как настраивать IP-адреса и как проверять доступность.

Проверка сети: оба компьютера в одной подсети

В идеале оба компьютера должны быть в одной подсети типа 192.168.X.Y (часто это 192.168.0.* или 192.168.1.*), и маска должна совпадать.

Что проверить в Linux (быстро)

На каждом компьютере выполните:
- ip address
- ip route
- netstat -nr (если netstat установлен; иначе ip route достаточно)

В списке сетевых карт найдите интерфейс (часто enp*/eth*) и строку с inet .../ZZ.

Условие для успеха:
- часть ZZ (маска) должна быть одинаковой на обоих (обычно 24).
- для 192.168.X.Y/24 значение X должно совпадать, а Y должно быть разным.

Если включён DHCP на роутере

Если компьютеры подключены к роутеру, обычно достаточно:
- на обоих включить получение IP “автоматически” (DHCP-клиент)
- убедиться, что они реально получили адреса из одной подсети роутера

Если DHCP выключен или соединение прямое

Тогда IP задают вручную. Типовой вариант для домашней “локалки”:

  • Компьютер 1: 192.168.0.102, маска 255.255.255.0
  • Компьютер 2: 192.168.0.103, маска 255.255.255.0
  • Шлюз в таком сценарии часто можно оставить пустым (или указать адрес “шлюза”, если он реально есть)

Главное: адреса должны быть из одной сети (одинаковый префикс 192.168.0.*), а Y - различаться.

Проверка, что доступность есть (до игры)

Перед тем как лезть в настройки сервера, проверьте базовую связь.

На компьютере 2 попробуйте достучаться до IP компьютера 1:
- ping <IP_компьютера_1>

Если ping не проходит:
- значит, проблема в сети (IP/маска/DHCP/firewall/кабель/роутер).
Пока это не решено, сервер игры не “увидится”.

Настройка сервера игры: не слушать только localhost

Даже если сеть работает, игра часто не стартует для второго участника, если сервер слушает только localhost (127.0.0.1). Тогда запросы с другого компьютера не принимаются.

На машине, где запускаете сервер, найдите настройку вроде:
- “bind address”
- “listen address”
- “interface”
- “server-ip”
- “указать IP для подключения”

И выставьте:
- либо 0.0.0.0 (слушать все интерфейсы)
- либо IP сетевой карты этого компьютера в локальный сети (например, 192.168.0.102)

Также проверьте, что клиент в игре подключается именно по IP сервера, а не по localhost.

Брандмауэр (firewall): открыть входящие порты

Самая частая причина “один играет, второй не может подключиться” - firewall на сервере игры.

Что сделать:
- на компьютере с сервером временно отключить firewall (для теста) или точечно разрешить входящие правила
- открыть порты, которые использует конкретная игра

Если игра требует TCP и UDP - открыть оба по рекомендациям самой игры/серверного приложения.

Если после открытия порта подключение появилось - причина найдена, дальше можно возвращать firewall и оставлять только нужные правила.

Роутер и “почему не работает локально”

Если компьютеры в одной квартире подключены к одному роутеру, обычно NAT/портфорвардинг не нужен, потому что трафик идет внутри локальный сети.

Портфорвардинг в таком сценарии почти всегда лишний. Он нужен, когда вы выходите за пределы домашней сети (например, играете через интернет с другого города).

Пошаговый чек-лист

Шаг Что сделать Что должно получиться
1 Определить: прямое соединение или через роутер Понятно, нужен DHCP или IP задаём вручную
2 На обоих посмотреть IP/маску Одинаковая маска (например, /24), адреса из одной подсети
3 Проверить доступность ping Ответы приходят между компьютерами
4 На серверном компьютере настроить bind/listen Сервер слушает 0.0.0.0 или IP сетевой карты, а не только 127.0.0.1
5 Открыть порты на firewall Подключение с второго компьютера проходит
6 В клиенте указать IP сервера Подключение идет на IP сетевой карты, а не “локально”

Частые ошибки

  • Один IP выдали вручную, второй получил автоматически - в итоге подсети разные или маска отличается.
  • Сервер слушает только localhost - второй компьютер “никогда” не подключится, даже при идеальной сети.
  • Порты закрыты firewall - ping может проходить, а игра нет.
  • Подключение в клиенте идет по неверному адресу (вместо IP сервера указан localhost/не тот интерфейс).

Если нужно “просто чтобы заработало”: минимально безопасный тестовый режим

Чтобы не копаться месяцами, сделайте так:
1) На обоих компьютерах проверьте IP в одной подсети.
2) На сервере включите прослушивание 0.0.0.0 (или IP сетевой карты).
3) Для теста временно ослабьте firewall только на время проверки подключения.
4) Как только второй компьютер подключился - верните firewall и оставьте только нужные правила по портам.

Если следовать этому порядку, проблема почти всегда находится быстро: либо сеть (IP/подсеть/DHCP), либо bind сервера, либо firewall.