Самая очевидная и критическая ошибка — у обоих хостов назначены одинаковые IP‑адреса. Из‑за этого возвращаемые пакеты не доходят до ожидаемого хоста (или вообще «теряются» в ARP/маршрутизации). Кратно — почему это ломает схему и как исправить.
Почему одинаковые IP мешают
- IP‑конфликт: в сети не может быть двух устройств с одним и тем же IP. Когда сервер отвечает на пинг, он отправляет пакет на IP источника; на канальном уровне для доставки использует MAC из ARP‑таблицы. ARP‑запись держит один MAC на этот IP (обычно последний, кто ответил), поэтому ответ может уйти на другой узел или совсем на «никуда».
- Ассиметричная/непредсказуемая маршрутизация: пакеты приходят от одного хоста, а ответы идут на «конфликтный» MAC, поэтому инициатор не получает ответ.
- Также из‑за конфликта ARP может «флапать» — связь нестабильна.
Что нужно сделать (пошагово)
1. Дать хостам уникальные IP: пример
- Host1: 10.0.1.2/24, gw 10.0.1.1
- Host2: 10.0.2.2/24, gw 10.0.2.1
- Сервер: 10.0.3.2/24, gw 10.0.3.1
(или если оба хоста в одной сети — просто разные адреса в той же подсети.)
2. На каждом хосте установить корректный default gateway — адрес интерфейса соседнего маршрутизатора.
3. На маршрутизаторах включить IP‑пересылку (sysctl net.ipv4.ip_forward=1) и прописать нужные маршруты между подсетями (или использовать статические маршруты/OSPF и т.п.).
4. На сервере указать маршрут (default gateway) обратно в сеть маршрутизаторов, чтобы ответы знали, куда идти.
5. Проверить отсутствие iptables/файерволов, блокирующих ICMP.
Команды для диагностики (в Miminet / Linux)
- Проверить IP и gw:
- ip addr; ip route
- Проверить ARP:
- ip neigh show (или arp -n)
- Посмотреть, идут ли запросы/ответы:
- tcpdump -i any icmp
- Проверить, включён ли форвардинг на роутере:
- sysctl net.ipv4.ip_forward
- Если нужно — traceroute от хоста/сервера для поиска точки, где пакеты теряются.
Если хотите, пришлите скрин/текст конфигурации IP/масок/шлюзов для всех узлов или экспорт конфигурации сети из Miminet — быстро укажу точные строки, что менять.