Serveur

Comment installer le serveur DHCP sur Ubuntu

Comment installer le serveur DHCP sur Ubuntu

DHCP est l'abréviation de Dynamic Host Configuration Protocol. On peut le définir comme un protocole réseau dont l'utilité est évidente lorsqu'un ordinateur hôte a besoin d'un ordinateur serveur pour lui accorder certains privilèges de configuration réseau comme l'attribution automatique d'une adresse IP. Dans un environnement serveur, nous avons de nombreuses instances de serveur. Vous pourriez avoir affaire à un serveur Web, un serveur de messagerie, un serveur de nom de domaine (DNS) et, dans cet article, un serveur DHCP.

Les adresses IP sont importantes pour identifier les ordinateurs clients configurés au sein d'un réseau. Il est aussi unique que le numéro de sécurité sociale d'un individu ou le numéro de carte d'identité nationale. Un serveur DHCP garantit que chaque ordinateur d'un réseau configuré conserve son unicité en ne partageant pas d'adresse IP.

La solution de contournement de DHCP

Lorsqu'un serveur DHCP attribue une adresse IP à un client DHCP, ce client se voit accorder cette identité d'adresse IP sur la base d'un bail. Ce bail a une date d'expiration, et la durée du bail dépend de la durée pendant laquelle l'ordinateur client cherche à conserver son état de connexion sous la configuration DHCP. En bref, lorsqu'un ordinateur client se retire d'un réseau configuré DHCP, il perd tous ses privilèges d'adresse IP précédemment détenus, qui sont attribués à un autre client DHCP qui trouvera la configuration d'adresse IP vacante.

Si un ordinateur client se déconnecte et se connecte à une connexion réseau gérée par un serveur DHCP, il est peu probable que ce client conserve l'adresse IP précédemment louée si d'autres ordinateurs clients le précèdent dans cette file d'attente. Le serveur DHCP lui attribuera très probablement une autre adresse IP, qui deviendra également vacante si un ordinateur client se déconnecte de l'environnement réseau de configuration.

Un serveur DHCP évite à un administrateur réseau d'attribuer manuellement une adresse IP à chaque ordinateur client connecté. Étant donné que le serveur DHCP effectue ou définit ces configurations réseau, les clients DHCP n'ont ni voix ni contrôle. L'ordinateur client ne peut avoir qu'un accès visible aux configurations réseau du serveur DHCP reçues, mais avoir accès ou autorité pour modifier ces paramètres réseau attribués.

Étant donné que nous comprenons maintenant le rôle dynamique d'un serveur DHCP lors de l'exécution de configurations réseau, il existe trois paramètres standard que les clients DHCP reçoivent de leurs configurations réseau attribuées. Nous pouvons les lister comme :

Dans ce même environnement de serveur DHCP, une configuration réussie des paramètres du client DHCP révèle également des propriétés de configuration supplémentaires visibles pour l'utilisateur de l'ordinateur client. Ils incluent:

Il y a plusieurs avantages à utiliser un serveur DHCP. Le premier est évident et implique des changements de réseau aléatoires. Un changement de réseau comme le changement d'adresse du serveur DNS n'est applicable que via le serveur DHCP. Cela n'affecte pas négativement les hôtes du réseau qui en dépendent. Ces hôtes réseau et leurs clients DHCP liés n'ont besoin d'adhérer à la demande de reconfiguration d'un serveur DHCP qu'une fois que de tels changements se produisent pour que les opérations réseau normales reprennent.

Un deuxième avantage inestimable lié à l'utilisation de DHCP dans le cadre de votre configuration réseau est la facilité d'intégration de nouveaux ordinateurs clients au sein de ce réseau. Comme indiqué précédemment, vous n'avez pas besoin d'attribuer manuellement à vos ordinateurs clients réseau leurs adresses IP obligatoires. DHCP est suffisamment intelligent pour gérer cette tâche et vous évite les allocations/affectations d'adresses IP qui pourraient entraîner des conflits de réseau.

Approches de configuration de réseau DHCP

Il existe trois méthodes principales qu'un serveur DHCP utilise pour fournir des paramètres de configuration aux clients DHCP sur une configuration réseau.

Attribution manuelle

Cette approche utilise l'adresse MAC de l'ordinateur client. Selon cette méthode, lorsqu'un ordinateur client se connecte à un réseau dont la configuration est gérée par DHCP, il fait d'abord connaissance avec la carte réseau de l'ordinateur connecté. Cette carte réseau contient une adresse matérielle unique pour identifier les ordinateurs clients sur le réseau. Cette connexion conduit à la fourniture continue de configurations réseau à l'ordinateur client sur l'adresse MAC du client DHCP.

Ces configurations de configuration réseau continuent de se produire chaque fois qu'il y a une instance de connexion au réseau de configuration via des périphériques réseau disponibles. DHCP utilise le pont de connexion de la carte réseau d'un ordinateur client pour référencer l'adresse MAC de l'ordinateur client tout en lui attribuant automatiquement une adresse réseau unique.

Allocation dynamique

Cette approche est mise en œuvre via un pool d'adresses. Ici, le serveur DHCP fonctionne avec une plage ou une étendue d'adresses IP définies dans un pool d'adresses ou un cluster. L'attribution de ces adresses IP aux clients DHCP se fait sur la base d'un bail. Cette configuration DHCP est permanente et ne s'interrompt que lorsque l'ordinateur du client se déconnecte du réseau. Cette déconnexion informe le serveur DHCP que l'ordinateur client n'a plus besoin de l'adresse IP attribuée. L'adresse IP vacante est renvoyée au pool d'adresses pour être louée à d'autres clients DHCP qui en ont besoin pour leur identité réseau.

L'attribution de ces adresses IP est dynamique via les propriétés de configuration du serveur DHCP implémentées sur chaque client DHCP sur la base du premier arrivé, premier servi. Une déconnexion complète du réseau n'est pas la seule façon pour un ordinateur client de perdre l'adresse IP attribuée. Un ordinateur client inactif qui n'utilise pas les ressources réseau ou l'environnement pendant une période prolongée ou spéculative perdrait également son bail d'adresse IP. Le pool d'adresses reprend le contrôle de cette adresse IP vacante et la met à disposition d'autres clients DHCP. Sous allocation dynamique, une période de bail d'adresse IP peut être fixée. Lorsque la période de bail expire, il appartient à l'ordinateur client de négocier une extension de bail pour maintenir l'utilisation de l'adresse IP initialement acquise.

Attribution automatique

Cette approche pour attribuer des paramètres de configuration à un client DHCP est la plus simple et la plus directe. L'attribution d'adresse IP à un poste client est automatique et permanente si une IP statique est configurée. L'adresse IP attribuée doit être libre. Pour plus de précision, le serveur DHCP s'assure que l'adresse est vide en sélectionnant chaque adresse IP qu'il utilise à partir d'un pool d'adresses IP contenant des adresses IP libres ou non attribuées. Dans le cadre de cette approche d'allocation d'adresse IP, le serveur DHCP est très flexible car le client du réseau peut choisir d'opter pour un bail d'adresse IP temporaire ou d'étendre son utilisation en demandant un bail d'adresse IP infini.

Nous pouvons classer les deux dernières méthodologies d'attribution d'adresses IP comme automatiques car elles impliquent que le serveur DHCP prenne en charge le rôle d'attribution d'adresses IP sans avoir besoin d'une intervention tierce. Le facteur de différenciation des deux méthodologies réside dans la flexibilité de la période de location de l'adresse IP.

Le serveur DHCP disponible pour la distribution Ubuntu est le démon de protocole de configuration d'hôte dynamique ou abrégé en DHCP.

DHCP au travail

Nous pouvons rapidement nous mettre dans une situation DHCP et comprendre sa solution de contournement pratique et son exécution dans une configuration réseau active. Considérez les quatre étapes descriptives suivantes.

À ce stade de l'article, nous sommes théoriquement alignés sur tous les concepts concernant les clients et serveurs DHCP. Il est maintenant temps d'adopter une approche plus pratique et de comprendre comment installer et configurer le serveur DHCP sur une distribution Ubuntu et l'installation et la configuration de tout autre composant réseau tiers qui peut aider à augmenter ses performances réseau.

Installation du serveur DHCP sur Ubuntu

Cette installation est possible via l'utilitaire de ligne de commande d'Ubuntu ou l'invite de terminal. Lancez-le et installez-le dhcpd par la commande suivante.

$ sudo apt install isc-dhcp-server

La durée d'installation doit être inférieure à une minute. Une fois installé, vous devez prendre note de Syslog ou du fichier System Logging Protocol sur votre système Ubuntu. Il stockera des messages de diagnostic riches et utiles concernant les problèmes de performances fonctionnelles de votre DHCP installé. Vous pouvez y accéder avec la chaîne de commande suivante :

$ sudo nano /var/log/syslog

L'utilisation du préfixe de commande Sudo n'est pas obligatoire. Néanmoins, il est nécessaire pour l'authentification si le système Ubuntu que vous utilisez permet uniquement aux utilisateurs de Sudoer d'effectuer des actions spécifiques ou d'accéder à des fichiers système individuels.

Configuration du serveur DHCP sur la distribution Linux Ubuntu

L'installation réussie de DHCP sur votre distribution Ubuntu crée une configuration système DHCP par défaut sous le chemin du fichier système /etc/dhcp/dhcpd.conf. Avant de regarder ce fichier, il y a un autre chemin de fichier système que nous devons considérer sous /etc/défaut/isc-dhcp-serveur. Il contient les configurations clés dans la configuration des interfaces DHCP nécessaires pour répondre aux demandes DHCP personnalisées.

$ sudo nano /etc/default/isc-dhcp-server

Personnalisation des requêtes DHCP INTERFACES

Comme vous pouvez le voir sur la capture d'écran, nous avons deux INTERFACES options avec lesquelles travailler : une pour IPv4 et l'autre pour IPv6. Si nous voulons utiliser les INTERFACES IPv4 et faire en sorte que le démon DHCP écoute les requêtes de paquets via eth0, nous personnaliserons le fichier comme suit :

INTERFACES de requêtes DHCP personnalisées

Nous pouvons également utiliser plusieurs options INTERFACES simultanément, mais nous devrons séparer chaque entrée de fichier par une virgule. Par example:

INTERFACESv4="eth0, eth1"

Nous pouvons maintenant revenir sur notre discussion précédente sur le /etc/dhcp/dhcpd.conf fichier système. Vous devrez modifier la configuration de ce fichier si vous souhaitez utiliser une configuration personnalisée.

$ sudo nano /etc/dhcp/dhcpd.conf

Comme il s'agit du fichier de configuration principal qui prend en charge tous les paramètres DHCP, toutes les informations de réseau client configurées doivent résider dans ce fichier. Ce fichier de configuration DHCP contient deux vraies déclarations.

Le premier est les paramètres de configuration DHCP. Il donne les détails sur la façon d'exécuter une tâche réseau, s'il faut effectuer une tâche réseau. En outre, il relaie les options de configuration réseau du serveur DHCP qui peuvent satisfaire les demandes de paquets d'un client DHCP. Le second est les déclarations de configuration DHCP. Il reconnaît la topologie du réseau utilisée, répertorie les clients réseau actifs, attribue des adresses réseau à ces clients et peut définir des paramètres groupés pour des déclarations groupées.

Fichier de configuration principal DHCP

De mon côté, j'ai mis en place les paramètres globaux visibles sur la capture d'écran ci-dessus. Avec ces paramètres globaux en place, nous pouvons définir le sous-réseau que nous utiliserons.

Fichier de configuration principal DHCP avec sous-réseau défini

La capture d'écran ci-dessus est une définition simple d'un sous-réseau DHCP. La configuration de ce sous-réseau s'applique à un réseau LAN. Vous pouvez personnaliser et créer votre configuration à partir de ce scénario en fonction de l'objectif réseau que vous cherchez à atteindre.

Configuration d'une machine cliente DHCP pour avoir une adresse IP statique

Une adresse IP statique dans un environnement DHCP basé sur le réseau implique que l'adresse réseau attribuée à un ordinateur client spécifique reste fixe ou inchangée tout au long d'une session de mise en réseau.

Étant donné qu'Ubuntu est notre serveur DHCP, dans ce cas, nous voulons toujours qu'une instance de client DHCP comprenne mieux ce concept. Supposons que nous ayons une machine Arch Linux comme client DHCP.

Attribution d'une adresse IP de réseau statique à une machine cliente DHCP

La capture d'écran ci-dessus illustre un exemple de bloc de code pour la configuration et l'attribution d'une adresse IP statique sur une machine cliente DHCP Arch Linux active. Les paramètres spécifiés sont l'adresse MAC de la machine cliente et son adresse IP fixe souhaitée et personnalisable. Vous pouvez ajouter plus de blocs de code pour d'autres machines clientes auxquelles vous souhaitez attribuer des adresses IP statiques en suivant la même convention de règle de syntaxe.

Une fois nos configurations DHCP terminées, l'étape suivante consiste à démarrer le service système DHCP, puis à lui accorder la possibilité de s'exécuter ou de s'exécuter automatiquement à chaque démarrage du système.

$ sudo systemctl démarrer isc-dhcp-server.un service

Une fois lancé, vérifiez s'il est en cours d'exécution

$ sudo systemctl status isc-dhcp-server.un service

si vous rencontrez un problème, reportez-vous au Syslog fichier pour une solution de contournement concernant le problème.

$ sudo nano /var/log/syslog

Nous pouvons maintenant accorder au service système DHCP le pouvoir de s'exécuter automatiquement au démarrage du système.

$ sudo systemctl activer isc-dhcp-server.un service
$ sudo systemctl redémarrer isc-dhcp-server.un service

N'oubliez pas de configurer le pare-feu de votre serveur pour permettre au service DHCP le privilège d'exécution ou l'accès au pare-feu requis. Par exemple, si le port 67/UDP du démon DHCP est bloqué par le euh pare-feu, nous pouvons lui accorder le privilège d'accès nécessaire, comme illustré par les chaînes de commande suivantes.

$ sudo ufw autoriser 67/udp
$ sudo ufw recharger
$ sudo ufw show

Vous devriez voir que le port ne se voit plus refuser l'accès.

Configuration des machines clientes DHCP

Ceci est la dernière étape de notre article. Tout d'abord, vous devez vous connecter à cet ordinateur client et accéder au fichier de configuration de l'interface Ethernet.

$ sudo nano /etc/network/interfaces

Une fois que vous avez accès, vous devez modifier ce fichier en conséquence. Un exemple de configuration est comme celui ci-dessous :

auto eth0 iface eth0 inet dhcp

Veuillez enregistrer les modifications apportées au fichier et les fermer. La dernière étape consiste à redémarrer votre système ou à redémarrer ses services réseau.

$ sudo systemctl redémarrer le réseau

Si vous avez été attentif aux détails des étapes de configuration du début de cet article, le serveur DHCP devrait automatiquement attribuer une adresse IP à votre machine cliente spécifiée.

Remarque finale

La visite guidée de cet article ressemblait à un cours de réseautage approfondi, mais cela en valait la peine. Vous avez maintenant une longueur d'avance sur Linux ou plus intelligent et bien informé concernant l'installation du serveur DHCP et la configuration du client. Cette connaissance peut faire de vous la personne la plus intelligente dans une salle d'entrevue, ou elle peut également être la clé manquante pour mener à bien votre projet de réseautage. Jusqu'à ce que nous nous rencontrions dans le prochain excellent article, continuez à garder l'esprit FossLinux vivant.

Outils utiles pour les joueurs Linux
Si vous aimez jouer à des jeux sur Linux, il est probable que vous ayez utilisé des applications et des utilitaires comme Wine, Lutris et OBS Studio p...
Jeux HD remasterisés pour Linux qui n'ont jamais eu de version Linux plus tôt
De nombreux développeurs et éditeurs de jeux proposent une remasterisation HD d'anciens jeux pour prolonger la durée de vie de la franchise, veuillez ...
Comment utiliser AutoKey pour automatiser les jeux Linux
AutoKey est un utilitaire d'automatisation de bureau pour Linux et X11, programmé en Python 3, GTK et Qt. En utilisant ses fonctionnalités de script e...