Introduction

Introduction

Nom du projet: IPWatchd - outil de détection des conflits IP
Auteur: Jaroslav Imrich
Page d'accueil du projet: Ipwatchd

Introduction

Lorsque vous utilisez un système d'exploitation GNU / Linux, de temps en temps, vous pouvez rencontrer une situation où la connectivité du réseau a été interrompue en raison du conflit IP. Un événement de conflit IP se produit lorsque deux hôtes ou plus sur le même réseau sont configurés avec des adresses IP identiques. À l'heure actuelle, il ne semble pas y avoir de code dans le noyau Linux pour prendre soin de cette situation au moyen d'une réponse ARP gratuite appropriée . Très souvent, un administrateur de réseau est laissé dans l'ignorance complète par le noyau Linux et doit dépanner le conflit IP à la dure. Heureusement, il y a un démon simple appelé ipwatchd quel objectif principal est d'attraper et d'évaluer les paquets sur le réseau et de cette façon est en mesure d'empêcher un conflit IP d'occurrence. Cela se fait à l'aide de la bibliothèque libpcap. Le démon ipwatchd est écrit en langue C et peut fonctionner en modes passifs ou actifs. La différence entre un mode passif et actif est que dans le mode passif, ipwatchd ne journalise que chaque événement de conflit IP en engageant le démon syslog, et en mode actif ipwatchd va plus loin et répond à la demande ARP gratuite qui est le bloc de construction principal quand il s'agit à la prévention des conflits IP. Cet article explorera ce démon simple en termes d'installation, de configuration et d'utilisation.

Conditions préalables

Avant de pouvoir installer IPWatchd sous le système d'exploitation GNU / Linux, il est recommandé de confirmer que toutes les conditions préalables nécessaires à IPWatchd sont installées sur le système. Voici une liste de packages que vous devez installer sur Ubuntu 8.dix.

 * Build-Essential - C compilateur et autres outils de développement
* libpcap-dev - bibliothèque de capture de paquets réseau
* Libnet1-Dev - Bibliothèque de construction de paquets réseau
* libnotify-dev - envoie des notifications de bureau à un démon de notification

Sur Ubuntu ou Debian Linux, vous pouvez installer ces packages avec une commande Linux suivante:

# apt-get install Build-Essential libpcap-dev libnet1-dev libnotify-dev 
 

Installation

Maintenant, que nous avons installé toutes les conditions préalables requises, il est temps de compiler et d'installer un démon ipwatchd. Il existe deux types d'installations IPWatchd.

  • Version de bureau avec notification de message GUI Back-in GUI
  • Version du serveur qui englobe uniquement le démon ipwatchd sans notification de message GUI

La différence entre le bureau et la version du serveur est que dans la version de bureau IPWatchd réagit à l'événement de conflit IP en affichant un message sur l'interface graphique ainsi qu'aux fichiers longs pertinents. Contrairement à la version de bureau, la version serveur enregistre uniquement un événement de conflit IP aux fichiers journaux pertinents.

Version de bureau ipwatchd

La routine d'installation d'IPWatchd pour les versions de bureau et de serveur est très similaire. Téléchargez le code source ipwatchd Tarball et entrez les commandes Linux suivantes:

$ bunzip2 ipwatchd-x.X.le goudron.bz2
$ TAR XVJF IPWATCHD-X.X.le goudron
$ cd ipwatchd-x.x / src
$ faire

Une fois un binaire compilé, connectez-vous en tant que superutilisateur (racine) et entrez:

# faire l'installation 

Version du serveur ipwatchd

Pour installer une version IPWatchd Server Compile un code source IPWatchd par:

$ bunzip2 ipwatchd-x.X.le goudron.bz2
$ TAR XVJF IPWATCHD-X.X.le goudron
$ cd ipwatchd-x.x / src
$ faire un démon

Une fois un binaire compilé, connectez-vous à un superutilisateur (racine) et entrez:

# faire l'installation 

À ce stade, tous les binaires exécutables IPWatchd sont copiés dans le / usr / local / sbin. Le fichier de configuration se trouve dans le répertoire / usr / local / etc.

NOTE: Pour désinstaller ipwatchd, simplement en tant qu'utilisateur racine publie une commande:

faire un stage 

Configuration

Comme il a déjà été mentionné ci-dessus, un démon ipwatchd peut fonctionner en deux modes. Pour demander à ce démon d'écouter sur l'ETH0 en mode actif, modifiez un fichier de configuration / usr / local / etc / ipwatchd.confie avec une ligne suivante:

Eth0 actif 

IpWatchd Daemon est également capable de travailler avec des interfaces virtuelles. Alors n'hésitez pas à ajouter la ligne «eth0: 1 passive» si vous voulez écouter IPWatchd sur ETH0: 1 interface réseau en mode passif.

Usage

Version Current de ipwatchd 1.1.1 ne commence pas par lui-même. Pour démarrer ipwatchd, exécutez une commande Linux suivante en tant qu'utilisateur racine:

# / usr / local / sbin / ipwatchd -c / usr / local / etc / ipwatchd.confli 

Confirmez qu'IpWatchd s'exécute sur votre commande Système par PS:

PS aux Aux | grep ipwatchd 

Vous devriez obtenir une sortie similaire à celle ci-dessous:

racine 10814 0.0 0.2 2032 572 ? SS 19:27 0:00
/ usr / local / sbin / ipwatchd -c / usr / local / etc / ipwatchd.confli
racine 10818 0.0 0.3 3240 796 PTS / 1 R + 19:27 0:00 grep ipwatchd

La logique ici est la suivante, les systèmes d'exploitation modernes tentent d'éviter un conflit IP en envoyant un type spécial de paquets de diffusion ARP au moment du démarrage ou pendant une reconfiguration d'interface réseau. Ce type de paquet de diffusion spécial est appelé [http: // wiki.Wireshark.org / grattuitous_arp arp gratteous]. Le but du paquet ARP gratuit est de découvrir, si une adresse IP qu'elle est sur le point d'acquérir n'est pas déjà prise par un autre hôte.

Une alternative au message de notification GUI est un fichier syslog. IPWatchd enregistre également tous les événements de conflit IP pertinents dans le fichier syslog. Voici un exemple de message généré par IpWatchd Daemon:

An 11 20:50:47 LinuxConfig-Desktop IPWatchd [13215]: Adresse MAC 8: 0: 27: B6: 5A: 6C Causes
IP Conflit avec l'adresse 10.1.1.6 Set on Interface Eth0 - Mode actif - Réponse envoyée
11 janvier 20:50:47 LinuxConfig-desktop avahi-daemon [3965]: Adresse de retrait
Enregistrement pour 10.1.1.6 sur Eth0.

NOTE: Pour arrêter le démon ipwatchd, vous pouvez utiliser la commande kill. De cette façon, IpWatchd Daemon reçoit un signal SIGTERM qui arrêtera gracieusement ce processus, publiera une mémoire utilisée et cessera d'écouter une interface réseau. Pour le long terme, pour le rendre automatique, vous pouvez également créer un simple démon init.D Script et liez-le à partir d'un répertoire de niveau coulant approprié sur votre système.

Conclusion

Ipwatchd est certainement un outil pratique qui peut parfois vous sauver une journée. Cependant, il y a aussi certaines limites. Version actuelle de ipwatchd 1.1.1 est limité à l'interface utilisateur graphique uniquement gnome. Néanmoins, il est toujours possible d'utiliser une version de serveur et de se référer au fichier syslog en cas de problèmes de connectivité inattendus.

Tutoriels Linux connexes:

  • Comment empêcher la vérification de la connectivité NetworkManager
  • Choses à installer sur Ubuntu 20.04
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Fichiers de configuration Linux: 30 premiers
  • Exemple de fichier hôte sur Linux
  • Comment gérer les événements ACPI sur Linux
  • Téléchargement Linux
  • Comment créer une application Tkinter à l'aide d'un objet orienté…
  • Comment travailler avec l'API WooCommerce REST avec Python
  • Choses à installer sur Ubuntu 22.04