Skip to content

Debian пинг IP внешней сети уходит на lo интерфейс

Не пингуется один ip в подсети 10.0.25.0/24 c хоста V11 (192.168.112.61) Debian (Zabbix). Другие ip из той же подсети 10.0.25.0/24 - c хоста V11 (192.168.112.61) пингуются успешно. C других хостов сети 192.168.112.0/24 через тот же маршрутизатор (192.168.112.1) пингуются все хосты сети 10.0.25.0/24.

Решение после 1-го инцидента:

Перезагрузка проблемного хоcта.

Примерно через сутки проблема вернулась. Анализируем ситуацию в момент наличия проблемы:

# Система
root@v11:~# uname -a
Linux v11 3.2.0-4-amd64 #1 SMP Debian 3.2.60-1+deb7u3 x86_64 GNU/Linux
#
root@v11:~# cat /etc/debian_version
7.6
# Маршруты
root@v11:~# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.112.1   0.0.0.0         UG        0 0          0 eth0
192.168.112.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0

Нет проблемы на адреса: 10.0.25.2/8/9 и прочие.

root@v11:~# traceroute 10.0.25.2
traceroute to 10.0.25.2 (10.0.25.2), 30 hops max, 60 byte packets
 1  gateway.firma.local (192.168.112.1)  0.284 ms  0.221 ms  0.265 ms
 2  192.168.112.90 (192.168.112.90)  1.447 ms  1.452 ms  1.489 ms
 3  10.0.25.2 (10.0.25.2)  2.144 ms  1.605 ms  1.931 ms
root@v11:~# traceroute 10.0.25.3
traceroute to 10.0.25.3 (10.0.25.3), 30 hops max, 60 byte packets
 1  v11.firma.local (192.168.112.61)  2999.628 ms !H  2999.625 ms !H  2999.618 ms !H
PING 10.0.25.3 (10.0.25.3) from 192.168.112.61 eth0: 56(84) bytes of data.
From 192.168.112.61 icmp_seq=1 Destination Host Unreachable
From 192.168.112.61 icmp_seq=2 Destination Host Unreachable
From 192.168.112.61 icmp_seq=3 Destination Host Unreachable

Смотрим TCPDUMP-ом на интерфейс lo во время попыток пинга проблемного адреса 10.0.25.3:

#
root@v11:~# ping 10.0.25.3
PING 10.0.25.3 (10.0.25.3) 56(84) bytes of data.
From 192.168.112.61 icmp_seq=1 Destination Host Unreachable
From 192.168.112.61 icmp_seq=2 Destination Host Unreachable
From 192.168.112.61 icmp_seq=3 Destination Host Unreachable
From 192.168.112.61 icmp_seq=4 Destination Host Unreachable
From 192.168.112.61 icmp_seq=5 Destination Host Unreachable
From 192.168.112.61 icmp_seq=6 Destination Host Unreachable
From 192.168.112.61 icmp_seq=7 Destination Host Unreachable
From 192.168.112.61 icmp_seq=8 Destination Host Unreachable
From 192.168.112.61 icmp_seq=9 Destination Host Unreachable
^C
--- 10.0.25.3 ping statistics ---
11 packets transmitted, 0 received, +9 errors, 100% packet loss, time 9999ms
#
# TCPDUMP в это время
root@v11:~# tcpdump -i lo 'icmp and src 192.168.112.61'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on lo, link-type EN10MB (Ethernet), capture size 65535 bytes
15:11:39.495921 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:39.495940 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:39.495945 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:42.495892 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:42.495898 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:42.495902 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:45.495919 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:45.495936 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:45.495941 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:48.495915 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
15:11:48.495920 IP v11.firma.local > v11.firma.local: ICMP host 10.0.25.3 unreachable, length 92
^C
11 packets captured
22 packets received by filter
0 packets dropped by kernel

Решение после 2-го инцидента.

Помогает:

ifdown lo
ifup lo

После 3-го повтора инцидента обновили систему

root@v11:~# uname -a
Linux v11 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1 x86_64 GNU/Linux

Наблюдаем... Cпустя несколько часов проблема повторилась.

Работающее решение

Суть проблемы

На маршутизаторе (192.168.112.1) настроен статический маршрут на целевую подсеть 10.0.25.0/24 через ip клиента L2TP тунеля 192.168.112.90. Так же на маршутизаторе включена опция (ip) "Send Redirects" (=1). В момент когда туннель на целевую подсеть отключался, и проблемный хост пытался обратится к адресу 10.0.25.3 маршрутизатор посылал ему redirect на адрес 192.168.112.90. Проблемный клиент, получив такое указание успешно его выполнял, так как в на нем включена опция net.ipv4.conf.default.accept_redirects=1. Она включена по умолчанию.

Варианты

  • Отключить Send Redirects на маршрутизаторе.
  • Отключить Accept Redirect на хосте.