Вручную я обнаружил конфликт IP-адресов, который был вызван моей ошибкой. Я могу решить это. Но перед решением я хочу автоматически обнаружить конфликт IP-адресов. Поэтому в следующий раз мне не придется искать вручную.
При обнаружении IP-конфликтов в сети я обнаружил, что можно использовать arpwatch.
Я нашел документацию на http://www.linuxcommand.org/man_pages/arpwatch8.html, но без примера. Это не помогает мне.
Подробнее:
У меня есть клиент Virtualbox с именем Vbox1 (один), который является Ubuntu 16.04. Файл интерфейса (путь /etc /network /interfaces):
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto enp0s3
iface enp0s3 inet static
dns-nameservers 192.168.1.70 192.168.1.1
address 192.168.1.66
# remove gateway see why : https://superuser.com/questions/1080675/set-virtualbox-network-for-ubuntu-16-04-client/1081588#1081588
#gateway 192.168.1.1
Пинг до шлюза:
bernard@vBox1b-client:/var/lib$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.804 ms
Проверьте MAC-адрес:
bernard@vBox1b-client:/$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:29:98:7c brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:19:c2:cc brd ff:ff:ff:ff:ff:ff
bernard@vBox1b-client:/$
Таким образом, адрес MAC для enp0s3: 08: 00: 27: 29: 98: 7c, а для enp0s8 - 08: 00: 27: 19: c2: cc.
Проверьте IPv4-адрес, отличный от 127.0.0.1 и 192.168.1.66:
bernard@vBox1b-client:/$ ip -4 addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.1.66/24 brd 192.168.1.255 scope global enp0s3
valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 10.0.3.15/24 brd 10.0.3.255 scope global dynamic enp0s8
valid_lft 62134sec preferred_lft 62134sec
bernard@vBox1b-client:/$
Другие IP-адреса: 10.0.3.15
Проверьте, что arp 192.168.1.66 не должен возвращать запись: bernard @ vBox1b-client:/$ arp 192.168.1.66 192.168.1.66 (192.168.1.66) - нет записи bernard @ vBox1b-client:/$ Это хорошо.
Проверьте содержимое /var/log/kern.log на наличие сообщений enp0s8:
... 24 июля 12:53:20 vBox1b-клиент NetworkManager [8046]: [1469357600.7642] имя домена 'lan' 24 июля 12:53:20 vBox1b-клиент NetworkManager [8046]: [1469357600.7847] dhcp4 (enp0s8): состояние изменено - > связаны ...
Проверьте содержимое /var/log/syslog.log на наличие сообщения enp0s8: Нет файла syslog.log для VB-one
SSH на сервер:
bernard@vBox1b-client:/$ ssh 192.168.1.65
ssh: connect to host 192.168.1.65 port 22: Connection timed out
bernard@vBox1b-client:/$
Результат без ответа.
На другом Virtualbox с именем Vbox11 (одиннадцать), который также является Ubuntu 16.04
С файлом интерфейса
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet static
dns-nameservers 192.168.1.70 192.168.1.1
address 192.168.1.66
# remove gateway see why : https://superuser.com/questions/1080675/set-virtualbox-network-for-ubuntu-16-04-client/1081588#1081588
#gateway 192.168.1.1
Сначала я использовал шлюз - это интерфейсный файл, а теперь - нет. Это не имело никакого значения. В обоих случаях шлюз не был доступен.
Пинг до шлюза невозможен:
bernard@vbox11:~$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
From 192.168.1.66 icmp_seq=1 Destination Host Unreachable
bernard@vbox11:~$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:93:71:92 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:e7:1d:b9 brd ff:ff:ff:ff:ff:ff
bernard@vbox11:~$
Таким образом, MAC-адрес это: 08: 00: 27: 93: 71: 92, а для eth1: 08: 00: 27: e7: 1d: b9
Проверьте IPv4-адрес, отличный от 127.0.0.1 и 192.168.1.66:
bernard@vbox11:~$ ip -4 addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 10.0.2.15/24 brd 10.0.2.255 scope global eth0
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.1.66/24 brd 192.168.1.255 scope global eth1
valid_lft forever preferred_lft forever
bernard@vbox11:~$
Другой IP-адрес: 10.0.2.15
Проверьте, что arp 192.168.1.66 не должен возвращать никаких записей: bernard @ vbox11: ~ $ arp 192.168.1.66 192.168.1.66 (192.168.1.66) - нет записей bernard @ vbox11: ~ $ Это хорошо.
Проверьте содержимое /var/log/kern.log на наличие сообщений enth0:
... 26 июля 04:39:03 ядро vbox11: [312073.522007] IPv6: ADDRCONF(NETDEV_UP): eth0: ссылка не готова 26 июля 04:39:03 ядро vbox11: [312073.522021] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: ссылка становится готовы ...
Проверьте содержимое /var/log/syslog.log на eth0:
... 25 июля, 12:00:39 клиент vbox11: DHCPREQUEST из 10.0.2.15 на eth0 - 10.0.2.2 порт 67 (xid = 0x11a0ba6e) 25 июля, 12:00:39 клиент vbox11: DHCPACK из 10.0.2.15 из 10.0.2.2 25 июля : 00: 39 vbox11 dhclient: привязан к 10.0.2.15 - обновление через 37427 секунд. 25 июля, 12:00:39 vbox11 NetworkManager [889]: (eth0): состояние DHCPv4 изменено, обновлено -> возобновлено ...
ssh к серверу: bernard @ vbox11: ~ $ ssh 192.168.1.65 ssh: подключение к хосту 192.168.1.65 порт 22: истекло время ожидания соединения bernard @ vbox11: ~ $
результат: нет ответа.
На сервере Virtualbox (p5)
arp 192.168.1.66 должен возвращать результат на сервере: bernard @ p5: ~ $ arp 192.168.1.66 Address HWtype HWaddress Flags Mask Iface 192.168.1.66 ether 08: 00: 27: e7: 1d: b9 C eth0 Бернард @ p5: ~ $
Это хорошо.
Летняя диагностика:
- VB-один может пинговать на хосте 192.168.1.1 VB-одиннадцать не может. VB-одиннадцать не должен быть настроен правильно, но как он должен быть настроен?
- Mac-адреса VB-one: 08: 00: 27: 29: 98: 7c и 08: 00: 27: 19: c2: cc, а для VB-одиннадцать: 08: 00: 27: 93: 71: 92 и 08: 00: 27: e7: 1d: b9 Так что они разные, это хорошо.
- Другие адреса IPv4, кроме 127.0.0.1 и 192.168.1.66: да, есть. Для VB-one: 10.0.3.15 и для VB-одиннадцать 10.0.2.15
- ARP 162.168.1.66 не возвращает результат на обеих виртуальных машинах, но на сервере. Так что это хорошо
- Результаты /var/log/kern.log различны для обеих виртуальных машин. У VB-one есть контент для syslog.log, а у VB-одиннадцати нет
- нет ответа по SSH на сервер
Таким образом, когда оба клиента Virtualbox работают, ясно, что VB-one и VB-eleven имеют одинаковый IP-адрес: 192.168.1.66.
Какие операторы я должен использовать, чтобы найти эти дубликаты IP-адресов?
альтернатива
Я также пытался использовать arp-scan для обнаружения IP-конфликтов в сети, но у меня это тоже не получалось.