Dans cet article, je vais vous montrer comment utiliser DNSMASQ pour configurer un serveur DNS local, une mise en cache DNS Server et DHCP Server. Alors, commençons.
Topologie du réseau:
Ceci est la topologie du réseau de cet article. Ici, je vais configurer routeur En tant que serveur DNS et DHCP avec DNSMASQ. routeur A 2 interfaces réseau, une (ENS33) se connecte au l'Internet et l'autre (ENS38) se connecte à un réseau swtich. Tous les autres hôtes (hôte1, host2, host3) sur le réseau utilise le serveur DHCP configuré sur le routeur pour l'attribution automatique des adresses IP et le serveur DNS pour la résolution du nom.
Configuration de la propriété intellectuelle statique:
Dans ma topologie de réseau, vous avez vu, mon routeur A deux interfaces ENS33 et ENS38. ENS33 connecte le routeur à Internet et ENS38 est connecté à un commutateur de réseau, à quel autre ordinateur du réseau se connecte. Je devrai utiliser DHCP pour obtenir une adresse IP pour le ENS33 Interface de mon FAI pour la connexion Internet. Mais le ENS38 l'interface doit être configurée manuellement.
Utilisons le réseau 192.168.dix.0/24 pour l'interface ENS38 et d'autres ordinateurs sur le réseau. Si j'utilise le réseau 192.168.dix.0/24, puis l'adresse IP du ENS38 L'interface du routeur devrait être 192.168.dix.1/24. Ceci est l'adresse IP du serveur DNSMASQ DNS et du serveur DHCP.
NOTE: Le nom de votre interface réseau peut être différent. Vous pouvez découvrir ce que c'est pour vous avec le ip a commande.
Sur le serveur Ubuntu 18.04 LTS, vous pouvez utiliser netplan Pour configurer les interfaces réseau. Le fichier de configuration NetPlan par défaut est / etc / netplan / 50-cloud-init.yaml.
Tout d'abord, ouvrez le fichier de configuration / etc / netplan / 50-cloud-init.yaml avec la commande suivante:
$ sudo nano / etc / netplan / 50-cloud-init.yaml
Maintenant, saisissez les lignes suivantes et enregistrez le fichier en appuyant sur + X suivie par y et .
Maintenant, redémarrez votre routeur avec la commande suivante:
$ sudo redémarrer
Une fois la routeur Bottes, les adresses IP doivent être attribuées comme prévu.
Installation de DNSMASQ:
DNSMASQ est disponible dans le référentiel officiel de package d'Ubuntu. Ainsi, vous pouvez facilement l'installer en utilisant le gestionnaire de packages APT.
Ubuntu utilise résolu Par défaut pour gérer les serveurs DNS et la mise en cache DNS. Avant d'installer DNSMASQ, vous devez vous arrêter et désactiver résolu prestations de service. Sinon, vous ne pourrez pas du tout exécuter dnsmasq.
Pour arrêter le résolu Service, exécutez la commande suivante:
$ sudo systemctl stop systemd-résolu
Pour désactiver le résolu Service, exécutez la commande suivante:
$ sudo systemctl Désactiver Systemd-résolu
Par défaut, le / etc / résolv.confli Le fichier est lié à un autre fichier de configuration systemd comme vous pouvez le voir dans la capture d'écran ci-dessous. Mais, nous n'en voulons plus.
Alors, supprimez le / etc / résolv.confli lien avec la commande suivante:
$ sudo rm -v / etc / résolv.confli
Maintenant, créez un nouveau / etc / résolv.confli Fichier et définir le serveur Google DNS comme serveur DNS par défaut avec la commande suivante:
$ echo "Nameserver 8.8.8.8 "| Sudo Tee / etc / Resolv.confli
Maintenant, mettez à jour le cache du référentiel de package APT avec la commande suivante:
$ sudo apt mise à jour
Maintenant, installez dnsmasq avec la commande suivante:
$ sudo apt install dnsmasq
DNSMASQ doit être installé.
Configuration du serveur DNSQ DNS:
Le fichier de configuration de DNSMASQ est / etc / dnsmasq.confli. Afin de configurer DNSMASQ en tant que serveur DNS, vous devez modifier ce fichier.
Le défaut / etc / dnsmasq.confli Le fichier contient beaucoup de documents et des options commentées. Donc, je pense qu'il vaut mieux renommer le / etc / dnsmasq.confli déposer à / etc / dnsmasq.confli.BK et en créer un nouveau.
Vous pouvez renommer le fichier de configuration avec la commande suivante:
$ sudo mv -v / etc / dnsmasq.conf / etc / dnsmasq.confli.BK
Maintenant, créez le fichier de configuration / etc / dnsmasq.confli comme suit:
$ sudo nano / etc / dnsmasq.confli
Maintenant, saisissez les lignes suivantes et enregistrez le fichier en appuyant sur + X suivie par y et .
# Configuration DNS
port = 53
nécessaire du domaine
faux-priv
ordre strict
extension des hôtes
domaine = exemple.com
NOTE: Changement exemple.com à votre propre nom de domaine.
Maintenant, redémarrez le service DNSMASQ avec la commande suivante:
$ sudo systemctl redémarrer dnsmasq
Non, erreurs. Super!
Maintenant, vous devez définir 192.168.dix.1 Comme l'adresse du serveur DNS par défaut dans le / etc / résolv.confli.
Pour faire ça, ouvrir / etc / résolv.confli fichier avec la commande suivante:
$ sudo nano / etc / résolv.confli
Maintenant, tapez Nameserver 192.168.dix.1 Avant la ligne Namesserver 8.8.8.8 Comme indiqué dans la capture d'écran ci-dessous. Puis enregistrez le fichier.
C'est ça.
Ajout d'enregistrements DNS:
Maintenant, vous pouvez ajouter vos entrées DNS au / etc / hôtes déposer.
Tout d'abord, ouvrez le / etc / hôtes fichier avec la commande suivante:
$ sudo nano / etc / hôtes
Maintenant, saisissez vos entrées DNS dans le format suivant:
Ip_addr domain_name
J'ai ajouté 4 entrées routeur.exemple.com (192.168.dix.1), hôte1.exemple.com (192.168.dix.51), host2.exemple.com (192.168.dix.52) , et host3.exemple.com (192.168.dix.53) comme marqué dans la capture d'écran ci-dessous. Vous pouvez ajouter autant d'entrées DNS que vous le souhaitez.
Une fois que vous avez terminé, enregistrez le fichier en appuyant sur + X suivie par y et .
Maintenant, redémarrez le service DNSMASQ avec la commande suivante:
$ sudo systemctl redémarrer dnsmasq
Test du serveur DNS:
Comme vous pouvez le voir, la résolution DNS locale fonctionne.
$ DIG ROUTER.exemple.com
La résolution du nom Internet fonctionne également.
$ DIG Google.com
Configuration du serveur DHCP:
Pour configurer le serveur DHCP, ouvrez le fichier de configuration DNSMASQ / etc / dnsmasq.confli Encore une fois comme suit:
$ sudo nano / etc / dnsmasq.confli
Maintenant, ajoutez les lignes marquées à la fin du fichier. Puis enregistrez le fichier.
# Configuration DHCP
DHCP-Range = 192.168.dix.50,192.168.dix.240 255.255.255.0,24H
dhcp-option = option: routeur, 192.168.dix.1
dhcp-option = option: dns-server, 192.168.dix.1
dhcp-option = option: masque de réseau, 255.255.255.0
dhcp-host = 00: 0c: 29: a5: bd: 4a, 192.168.dix.51
DHCP-HOST = 00: 0C: 29: A5: BD: 5B, 192.168.dix.52
dhcp-host = 00: 0c: 29: a5: bd: 6c, 192.168.dix.53
Ici, DHCP est utilisé pour définir la plage d'adresses IP que le serveur DHCP attribuera aux hôtes.
option du DHCP est utilisé pour définir la passerelle (Option: routeur), L'adresse du serveur DNS (Option: DNS-Server), et le masque de réseau (Option: Masque de réseau)
hôte de dhcp est utilisé pour définir des adresses IP spécifiques aux hôtes en fonction des adresses MAC spécifiées.
Maintenant, redémarrez le service DNSMASQ avec la commande suivante:
$ sudo systemctl redémarrer dnsmasq
Test du serveur DHCP:
Comme vous pouvez le voir, l'ordinateur hôte1 J'ai l'adresse IP 192.168.dix.51/24 à partir du serveur DHCP.
La résolution DNS fonctionne également à partir de hôte1.
De la même façon, host2 et host3 Obtient également l'adresse IP correcte du serveur DHCP et la résolution DNS fonctionne sur chacun d'eux.
Où aller ensuite:
Si vous souhaitez en savoir plus sur DNSMASQ, alors consultez le fichier de configuration par défaut / etc / dnsmasq.confli (maintenant renommé à / etc / dnsmasq.confli.BK). Il a une description détaillée de toutes les options de configuration de DNSMASQ.
$ moins / etc / dnsmasq.confli.BK
Fichier de configuration DNSMASQ par défaut du serveur Ubuntu 18.04 LTS.
C'est donc ainsi que vous configurez dnsmasq sur le serveur Ubuntu 18.04 LTS. Merci d'avoir lu cet article.