ICMP: хост недоступен

Сравните ARP и ICMP при недоступном хосте.

Сеть

Прокрутите схему по горизонталиОткрыть схему целиком
PC1 подключён к eth1 R1 в 192.168.1.0/24; eth0 R1 подключён к PC2 в 172.16.12.0/24.
PC2 с .1 доступен. Хоста с адресом .22 нет.

Как открыть консоль

1. Проверьте работающий путь

PC1

ping -n -c 3 -W 1 192.168.1.100
ping -n -c 3 -W 1 172.16.12.1

Оба пинга должны пройти.

2. Запишите ARP и ICMP

R1

timeout 120 tcpdump -U --immediate-mode -i eth0 -w /tmp/lab-icmp-host.pcap "arp or icmp or tcp port 5555" &
capture_pid=$!
sleep 1

PC1

timeout 120 tcpdump -U --immediate-mode -i eth0 -w /tmp/lab-icmp-host.pcap "icmp or tcp port 5555" &
capture_pid=$!
sleep 1

PC1

printf 'host-unreachable\n' | nc -N -w 5 172.16.12.22 5555

3. Разберите ошибку

R1

sleep 2
kill -INT "$capture_pid"
wait "$capture_pid" || true
tcpdump -nn -e -r /tmp/lab-icmp-host.pcap

PC1

sleep 2
kill -INT "$capture_pid"
wait "$capture_pid" || true
tcpdump -nn -e -r /tmp/lab-icmp-host.pcap "icmp[0] == 3 and icmp[1] == 1"

На R1 найдите ARP-запросы к .22 без ответа. На PC1 — ICMP 3/1 от R1: маршрут есть, но хост недоступен.

Проверка

Нажмите «Проверить». Когда все шаги пройдены, нажмите «Завершить».