Voir aussi :
ip neigh
/etc/rc.local
#!/bin/sh -e arp -f /etc/ethers exit 0
/etc/ethers
20:aa:4b:22:8B:4f 192.168.2.1 00:20:ed:5d:73:0b 192.168.2.100
Afficher la table ARP
arp -an ip n
(ndp -a pour IPv6 ?)
cat /proc/net/arp
Autre moyen d'éviter une attaque MITM à son encontre par corruption du cache ARP.
arp -s "$gatewayIp" "$gatewayMac"
Vider le cache ARP
#ip neighbor flush dev bond0 ip -s -s neigh flush all
Effacer une entrée avec la commande arp
arp -d 192.168.1.1
Générer une adresse mac
printf 'DE:AD:BE:EF:%02X:%02X\n' $((RANDOM%256)) $((RANDOM%256))
52:54:00
# arping -I p1p2 -c 1 215.219.132.12 ARPING 215.219.132.12 from 215.219.132.91 p1p2 Unicast reply from 215.219.132.12 [4C:D9:8F:9A:06:74] 0.766ms Sent 1 probes (1 broadcast(s)) Received 1 response(s)
# ping -I p1p2 215.219.132.12 PING 215.219.132.12 (215.219.132.12) from 215.219.132.91 p1p2: 56(84) bytes of data.
# ip neigh | egrep 215.219.132.12 215.219.132.12 dev p1p2 FAILED
Clearing cache with ip
# ip -s -s n flush all 215.219.132.12 dev p1p2 used 13/75/12 probes 6 FAILED 172.19.1.254 dev nm-bond lladdr d0:d0:fd:8d:a4:43 ref 1 used 45/0/45 probes 4 REACHABLE *** Round 1, deleting 2 entries *** *** Flush is complete after 1 round ***
# ping -I p1p2 215.219.132.12 PING 215.219.132.12 (215.219.132.12) from 215.219.132.91 p1p2: 56(84) bytes of data. ^C --- 215.219.132.12 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time 0ms # ip n 215.219.132.12 dev p1p2 INCOMPLETE 172.19.1.254 dev nm-bond lladdr d0:d0:fd:8d:a4:43 REACHABLE # ip n 215.219.132.12 dev p1p2 FAILED 172.19.1.254 dev nm-bond lladdr d0:d0:fd:8d:a4:43 REACHABLE
Erreur, un autre hôte utilise déjà l'adresse 192.168.1.20
Mais rien n'y fait :
iptables -I INPUT -i eth0 iptables -I FORWARD -i eth0 #iptables -I FORWARD -o eth0 iptables -I OUTPUT -o eth0 ip route del blackhole 192.168.1.20
Il s'agit d'une erreur réel. Sur une VM de test je dois tester une procédure mais sur toutes les interfaces réseaux possible de l'hyperviseur mon adresse est déjà prise.
Il est rare que l'on veux forcer ou ignorer un doublon d'adresse IP. Mais dans mon cas je suis sur un environement de laboratoire, et il est compliqué pour moi de changer d'adresse IP.
Solution :
ip link set arp off dev eth0
Voir aussi
echo 1 > /proc/sys/net/ipv4/conf/all/hidden
Autre solution :
ip et faire un bgrige ou autre sur lo