Как определить и устранить конфликты IP-адресов в Ubuntu?

18

У нас более 500 машин под управлением Ubuntu. Я заметил, что многие машины имеют конфликты IP-адресов. Можно ли идентифицировать конфликты IP-адресов в Ubuntu?

  • Смотрите вывод здесь .
  • Что это значит на самом деле? Я получаю один и тот же MAC-адрес для всех IP-адресов?
karthick87
источник
Как это произошло. Вы не используете dhcp?
user606723
хороший вопрос. Возможно, вам следует подать ошибку в списке желаний для элегантного решения этой проблемы?
Джо-Эрленд Шинстад
Ссылка Pastebin мертва.
Кевин Боуэн

Ответы:

29

Вы можете найти их с помощью arp-scan:

sudo apt-get install arp-scan

sudo arp-scan -I eth0 -lпокажет IP-адреса, MAC-адрес и производителя сетевой карты, и строка на выходе, которая является дубликатом, также идентифицирует себя с (DUP: 2)(где 2 - второй раз, для которого этот IP-адрес найден eth0.

Некоторые возможные варианты, чтобы сделать поиск более конкретным:

  • Укажите список IP-адресов в качестве аргументов: sudo arp-scan -I eth0 192.168.1.1 192.168.1.2 192.168.1.3
  • Укажите сеть / биты: sudo arp-scan -I eth0 192.168.1.0/24
  • Укажите сеть: маска сети: sudo arp-scan -I eth0 192.168.1.0:255.255.255.0
  • Укажите диапазон адресов: sudo arp-scan -I eth0 192.168.1.3-192.168.1.27
  • Прочитайте список IP-адресов из файла: sudo arp-scan -I eth0 --file=ip-address-list.txt
  • sudo arp-fingerprint -o "--interface=eth0 --numeric" 192.168.1.111 отображает IP-адрес, двоичную строку отпечатка пальца и список известных систем, которые соответствуют этому отпечатку: 192.168.1.111 01000100000 Linux 2.2, 2.4, 2.6

Вы можете добавить, |grep {part.of.ip.address}чтобы ограничить вывод (не используйте подстановочные знаки, а регулярные выражения, если вам нужны более экзотические комбинации).

Rinzwind
источник
Не забывайте, что вы можете использовать grep для фильтрации только дубликатов. =)
user606723
да, у меня было это в ответе, но Хартик сказал, что он получил 0 результатов после того, как он положил | grep за arp-scan (так что я удалил его снова;))
Rinzwind
Просьба посмотреть @ обновление.
karthick87
2

В дополнение к этому arp-scan, демон ipwatchdможет быть полезен в некоторых обстоятельствах и стоит упомянуть об этом вопросе для других, приходящих сюда через поиск.

IPwatchD - это простой демон, который анализирует все входящие пакеты ARP для обнаружения конфликтов IP.

Он также может быть настроен для запуска пользовательского сценария при обнаружении конфликтов.

arp-scanспособен обнаружить конфликт по всей сети. ipwatchdопределяет, когда IP-адрес хоста используется и в других местах.

Кроме того, ARP полезен для этой задачи, так как использует широковещательный трафик, который отправляется всем хостам, тогда как большая часть другого трафика направляется только предполагаемым получателям (на уровне MAC).

Дрю Ноакс
источник
0

Хорошо, это довольно далеко от темы Ubuntu, но, основываясь на вашей вставке, я бы сказал, что вам нужно взглянуть на конфигурацию вашей сети. Я знаю, что на платформе Cisco можно реализовать HSRP, чтобы иметь избыточные интерфейсы уровня 3. Если один из переключателей выйдет из строя для определенного vlan, другой станет standin. Видеть один и тот же Mac для более чем двух IP-адресов выглядит странно, но очень хорошо может быть признаком реализации и конфигурации вашей сети - независимо от того, является ли конфигурация правильной или нет. Просто красный флаг для меня, чтобы увидеть это много.

Часть поставщика Mac указывает прямо на Cisco Systems, поэтому эти IP-адреса, скорее всего, являются инфраструктурой, а не Ubuntu.

 00-00-0C   (hex)        CISCO SYSTEMS, INC.
 00000C     (base 16)    CISCO SYSTEMS, INC.
                         170 WEST TASMAN DRIVE
                         SAN JOSE CA 95134-1706
                         UNITED STATES

Рассматривали ли вы, что статические IP-адреса используются внутри области DHCP без резервирований или операторов разбитого диапазона в dhcpd? Надеюсь, это поможет.

Арик
источник