Como usar o arpwatch para detectar um conflito de endereço IP

0

Manualmente, detectei um conflito de endereço IP, que foi causado por meu erro. Eu posso resolver isso. Mas antes de resolver eu quero detectar automaticamente um conflito de endereço IP. Então, da próxima vez, não preciso pesquisar manualmente.

Em Detectar Conflitos de IP na Rede descobri que arpwatch poderia estar usado.

Encontrei a documentação no link mas sem um exemplo. Isso não me ajuda.

Mais em detalhes:

Eu tenho um cliente Virtualbox chamado Vbox1 (um) que é o Ubuntu 16.04 O arquivo de interface (caminho / 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  

Ping para o gateway:

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

Verifique o endereço 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:/$ 

Portanto, o MAC addres para enp0s3 é: 08: 00: 27: 29: 98: 7c e para enp0s8 é 08: 00: 27: 19: c2: cc

Verifique o endereço IPv4 diferente de 127.0.0.1 e 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:/$ 

Outros endereços IP são: 10.0.3.15

Verifique se o arp 192.168.1.66 não deve retornar nenhuma entrada:     bernard @ vBox1b-client: / $ arp 192.168.1.66     192.168.1.66 (192.168.1.66) - sem entrada     bernard @ vBox1b-client: / $ Isso é bom.

Verifique o conteúdo /var/log/kern.log para ver as mensagens de enp0s8:

... Jul 24 12:53:20 vBox1b-client NetworkManager[8046]: [1469357600.7642] domain name 'lan' Jul 24 12:53:20 vBox1b-client NetworkManager[8046]: [1469357600.7847] dhcp4 (enp0s8): state changed bound -> bound ...

Verifique o conteúdo /var/log/syslog.log da mensagem de enp0s8: Nenhum arquivo syslog.log para VB-one

ssh para o servidor:

bernard@vBox1b-client:/$ ssh 192.168.1.65
ssh: connect to host 192.168.1.65 port 22: Connection timed out
bernard@vBox1b-client:/$ 

Resultado sem resposta.

Em outro Virtualbox chamado Vbox11 (onze), que também é o Ubuntu 16.04

Com o arquivo de interface

# 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 

Primeiro eu usei gateway é o arquivo de interface, agora eu não fiz. Isso não fez diferença alguma. Em ambos os casos, o gateway não estava acessível.

Ping para gateway não é possível:

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:~$ 

Portanto, o endereço MAC é: 08: 00: 27: 93: 71: 92 e para o eth1 é: 08: 00: 27: e7: 1d: b9

Verifique o endereço IPv4 diferente de 127.0.0.1 e 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:~$ 

Outro endereço IP é: 10.0.2.15

Verifique se o arp 192.168.1.66 não deve retornar nenhuma entrada:     bernard @ vbox11: ~ $ arp 192.168.1.66     192.168.1.66 (192.168.1.66) - sem entrada     bernard @ vbox11: ~ $ Isso é bom.

Verifique o conteúdo /var/log/kern.log para mensagens de enth0:

... Jul 26 04:39:03 vbox11 kernel: [312073.522007] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready Jul 26 04:39:03 vbox11 kernel: [312073.522021] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready ...

Verifique o conteúdo /var/log/syslog.log para eth0:

... Jul 25 12:00:39 vbox11 dhclient: DHCPREQUEST of 10.0.2.15 on eth0 to 10.0.2.2 port 67 (xid=0x11a0ba6e) Jul 25 12:00:39 vbox11 dhclient: DHCPACK of 10.0.2.15 from 10.0.2.2 Jul 25 12:00:39 vbox11 dhclient: bound to 10.0.2.15 -- renewal in 37427 seconds. Jul 25 12:00:39 vbox11 NetworkManager[889]: (eth0): DHCPv4 state changed renew -> renew ...

ssh para o servidor:     bernard @ vbox11: ~ $ ssh 192.168.1.65     ssh: conectar-se ao host 192.168.1.65 porta 22: a conexão expirou     bernard @ vbox11: ~ $

resultado: sem resposta.

No servidor do Virtualbox (p5)

arp 192.168.1.66 deve retornar o resultado no servidor:     bernard @ p5: ~ $ arp 192.168.1.66     Endereço HWtype HWaddress Flags Mask Iface     192.168.1.66 éter 08: 00: 27: e7: 1d: b9 C eth0     bernard @ p5: ~ $

Isso é bom.

Verão de diagnósticos:

  • VB-one pode pingar para hospedar 192.168.1.1 VB-onze não pode. VB-eleven não deve ser configurado corretamente, mas como deve ser configurado?
  • Os endereços Mac do VB-one são 08: 00: 27: 29: 98: 7c e 08: 00: 27: 19: c2: cc e para o VB-onze são: 08: 00: 27: 93: 71 : 92 e 08: 00: 27: e7: 1d: b9 Então eles são diferentes, isso é bom.
  • Outro endereço IPv4 além de 127.0.0.1 e 192.168.1.66: sim, existem. Para VB-one: 10.0.3.15 e para VB-onze 10.0.2.15
  • arp 162.168.1.66 não retorna o resultado na VM, mas no servidor. Então isso é bom
  • os resultados de /var/log/kern.log são diferentes em ambas as VMs. VB-one tem conteúdo para syslog.log e VB-eleven não tem
  • sem resposta para o ssh para o servidor

Assim, quando ambos os clientes do Virtualbox estão rodando, está claro que o VB-one e o VB-eleven têm o mesmo endereço IP: 192.168.1.66

Que declaração (s) eu tenho que usar para encontrar esses endereços IP duplicados?

Alternativa

Eu também tentei usar arp-scan Detectar Conflitos IP na Rede mas isso não funcionou para mim também.

    
por Bernard 25.07.2016 / 12:24

1 resposta

1

arpwatch deve detectar a alteração do endereço MAC se estiver ouvindo na interface de rede em que os servidores estão escutando. Em seguida, envia um email para o endereço configurado, a menos que esteja desativado.

No entanto, se um dos servidores foi clonado do outro, ambos podem ter o mesmo endereço MAC. Isso tornará impossível detectar usando o ARP.

Verifique o endereço MAC relatado por cada um desses servidores. Se for o mesmo, você precisará alterar o endereço MAC em uma das máquinas para detectar com segurança o problema.

No Ubuntu / Debian arpwatch é configurado usando /etc/default/arpwatch . Os bancos de dados estarão no diretório /var/lib/arpwatch .

Você pode ter problemas para se conectar aos servidores se eles estiverem ativos e usando o mesmo endereço MAC.

Algumas etapas de diagnóstico:

  • Efetue ping no contêiner de cada um dos hosts. Isso deve estar em 192.168.1.1 da sua configuração de gateway. Se um dos hosts não puder executar o ping, haverá um problema com sua configuração.
  • Verifique o endereço MAC informado por ifconfig -a ou ip link show em cada um dos dois sistemas. Cada sistema deve ter sua própria interface.
  • Verifique os endereços IP informados por ifconfig -a ou ip -4 addr show em cada um dos dois sistemas. Existe algum endereço IPv4 diferente de 127.0.0.1 e 192.168.1.66 .
  • Verifique a saída de arp 192.168.1.66 dos dois sistemas e do contêiner. Os dois sistemas virtuais não devem retornar nenhuma entrada. O contêiner deve ter um resultado.
  • Verifique as mensagens /var/log/kern.log e /var/log/syslog relacionadas à interface: eth0 ou enp0s3 .
  • ssh de um servidor virtual para o contêiner. Verifique o endereço IP na saída de who am i . Repita a partir do outro servidor virtual.
por 25.07.2016 / 13:55