“Error, some other host already uses address” при выполнении команды «service network restart» или «ifup ethX» в системе CentOS / RHEL.
Как проверить наличие дублирующего IP-адреса в сети?
Использование команды arping
Запустите команду arping с ключом -D, чтобы включить обнаружение повторяющихся адресов.
В следующем примере замените адрес, который, по вашему мнению, был продублирован, и интерфейс, на котором этот адрес включен.
# arping -D -w 5 -I ethX IP.ADDRESS.TO.TEST # echo $?
Команда «echo $?» Проверяет возвращаемое значение команды.
Если это сообщает 0, то IP-адрес не дублируется.
Если это сообщает 1, то IP-адрес дублируется.
Приведенный ниже пример проверяет наличие дубликатов 192.168.5.2 в сети, подключенной к интерфейсу eth0.
В этом примере адрес обнаружен в другой системе:
# arping -D -w 5 -I eth0 192.168.5.2 ARPING 192.168.5.2 from 0.0.0.0 eth0 Unicast reply from 192.168.5.2 [52:54:00:00:05:02] for 192.168.5.2 [52:54:00:00:05:02] 3.741ms Sent 1 probes (1 broadcast(s)) Received 1 response(s)
# echo $? 1
Как перезапуск сети ifup или службы обнаруживает дублирующийся IP-адрес
При выполнении ‘service network restart‘ или ‘ifup ethX команда ifup-eth в /etc/sysconfig/network-scripts/ выполняет то же самое обнаружение дублирующихся адресов, что и при использовании arping:
# cat /etc/sysconfig/network-scripts/ifup-eth if ! LC\_ALL=C ip addr ls ${REALDEVICE} | LC\_ALL=C grep -q "${ipaddr[$idx]}/${prefix[$idx]}" ; then [ "${REALDEVICE}" != "lo" ] if ! /sbin/arping -q -c 2 -w 3 -D -I ${REALDEVICE} ${ipaddr[$idx]} ; then echo $"Error, some other host already uses address ${ipaddr[$idx]}." exit 1 fi
Если обнаружен повторяющийся адрес, печатается сообщение ‘Error, some other host already uses address [IP.ADDRESS]’
Использование сервиса arpwatch
Служба arpwatch отслеживает таблицы ARP в локальной системе и может регистрировать сообщение при обнаружении адреса “flip flop”
# yum install arpwatch # service arpwatch start # chkconfig arpwatch on
Проверьте, есть ли сообщения о «flip flop» в файле /var/log/messages:
Nov 1 15:42:42 hostname arpwatch: new station 10.00.100.108 01:13:gh:ef:cd:ab Nov 1 15:43:32 hostname arpwatch: changed ethernet address 10.00.100.108 01:13:gh:ef:cd:ab (01:13:gh:ef:cd:ab) Nov 1 15:43:59 hostname arpwatch: flip flop 10.00.100.108 01:13:gh:ef:cd:ab (01:13:gh:ef:cd:ac) From the above messages, this machine first records the ARP mapping information: 10.00.100.108 to MAC 01:13:gh:ef:cd:ab
Затем демон arpwatch находит, что MAC-адрес, который связывается с 10.00.100.108, изменился на 01: 13: gh: ef: cd: ac.
Использование службы ipwatchd
Сторонний сервис ipwatchd использует libpcap для перехвата всего трафика ARP и обнаружения дублированных IP-адресов.
Дополнительную информацию об этом инструменте можно найти по адресу https://ipwatchd.sourceforge.io/.
Если вы не можете найти сервер с дублирующимся IP-адресом с использованием arping и по-прежнему подозреваете наличие дублированного IP-адреса в сети, проверьте, не включены ли прокси-ARP на сетевых устройствах, таких как маршрутизаторы, брандмауэры и коммутаторы.