Erreurs

❌ Erreur Réseau "Duplicate IP address detected" — Causes et Solutions

🌐 Réseau / Cisco

Conflit d'adresses IP — deux machines avec la même IP sur le réseau

🌐 Réseau 📋 6 causes 🔧 4 solutions
Un conflit d'adresses IP survient quand deux machines sur le même réseau possèdent la même adresse IP. Les deux machines se perturbent mutuellement via ARP, provoquant des interruptions de connectivité intermittentes.

⚠️ Causes possibles

⚠️
IP statique dans la plage DHCP
Une IP assignée manuellement est aussi distribuée par le serveur DHCP
⚠️
Mauvaise configuration statique
Deux administrateurs ont assigné la même IP manuellement
⚠️
VM clonée sans reconfiguration
Une VM clonée a conservé l'IP de l'original
⚠️
Plage d'exclusion DHCP manquante
Le DHCP n'exclut pas les IPs statiques de sa plage
⚠️
ARP spoofing / attaque
Un attaquant revendique délibérément une IP existante
⚠️
Interface réactivée avec ancienne IP
Une machine hors ligne reprend son IP déjà ré-assignée

🔧 Solutions étape par étape

1

Identifier les deux machines en conflit

terminal
# Voir les conflits dans les logs
dmesg | grep "duplicate address"
journalctl -k | grep "duplicate"

# Identifier les deux adresses MAC pour l'IP en conflit
arping -D -I eth0 192.168.1.100
# -D = mode détection de doublon
# Si une réponse est reçue → conflit détecté !

# Voir la table ARP
arp -n | grep 192.168.1.100
ip neigh show | grep 192.168.1.100

# Wireshark — filter ARP
# arp.duplicate-address-detected
2

Trouver la machine avec arping

terminal
# Envoyer des requêtes ARP et noter les MAC qui répondent
arping -c 5 -I eth0 192.168.1.100

# Si deux MACs différentes répondent → conflit confirmé
# Exemple de sortie avec conflit :
# 60 bytes from aa:bb:cc:dd:ee:01 (192.168.1.100)
# 60 bytes from ff:ee:dd:cc:bb:02 (192.168.1.100)
#                  ↑ deux MACs différentes = conflit !

# Identifier la machine avec une MAC
# Chercher dans la table ARP du switch
# ou utiliser un outil comme arp-scan
apt install arp-scan
arp-scan --interface=eth0 192.168.1.0/24 | grep 192.168.1.100
3

Résoudre le conflit

terminal
# Solution 1 : Changer l'IP de la machine incriminée
# Linux — temporaire
ip addr del 192.168.1.100/24 dev eth0
ip addr add 192.168.1.150/24 dev eth0

# Linux — permanent (Netplan)
# Modifier /etc/netplan/01-config.yaml
# Changer addresses: [192.168.1.100/24]
# En :    addresses: [192.168.1.150/24]
netplan apply

# Solution 2 : Configurer le DHCP pour exclure les IPs statiques
# Sur le serveur DHCP — ajouter une exclusion
# Plage DHCP : 192.168.1.100 - 192.168.1.200
# IPs statiques : 192.168.1.1 - 192.168.1.50 → à exclure
4

Prévention DHCP

terminal
# Sur dnsmasq — exclure les IPs statiques
# /etc/dnsmasq.conf
dhcp-range=192.168.1.100,192.168.1.200,24h

# Réserver des IPs par MAC (IP fixe via DHCP)
dhcp-host=aa:bb:cc:dd:ee:ff,192.168.1.10

# Sur isc-dhcp-server — exclusion
# /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  # Les IPs 1-99 sont réservées pour les statiques
}

🛡️ Comment éviter cette erreur

  • ✅ Diviser le sous-réseau : réserver 192.168.1.1-50 pour les IPs statiques, 192.168.1.100-200 pour le DHCP
  • ✅ Utiliser des réservations DHCP par adresse MAC plutôt que des IPs statiques configurées manuellement
  • ✅ Toujours faire un arping -D -I eth0 IP avant d'assigner une IP statique
  • ✅ Maintenir un tableau de bord des IPs assignées (ex: dans GLPI ou phpIPAM)
Ajouter Les Fibrés à mes sources préférées
Retrouvez plus souvent nos guides dans vos résultats Google