Cette section présente des étapes facultatives pour les utilisateurs qui ont besoin de contourner le service DNS natif de Google Cloud Platform et d'utiliser leurs propres résolveurs DNS externes ou auto-hébergés à la place.
Cette configuration est souvent nécessaire pour des logiciels tels que le Netskope Publisher, qui doit se connecter aux serveurs DNS privés d'une organisation pour résoudre les domaines d'application internes.
About the gce-resolved.conf File
Les versions récentes du package Google Compute Engine incluent un fichier à /etc/systemd/resolved.conf.d/gce-resolved.conf. GCP a ajouté ce fichier pour garantir que les recherches pour les domaines DNS internes .local Cloud soient correctement acheminées vers le serveur de métadonnées GCP (169.254.169.254).
Un effet secondaire de ce fichier est qu'il peut acheminer le trafic DNS de all vers le serveur de métadonnées, ce qui peut entrer en conflit avec la nécessité d'utiliser un service DNS externe. Si votre environnement ne repose pas sur la résolution de domaine .local de GCP, vous pouvez supprimer ce fichier en toute sécurité pour résoudre le conflit.
Les étapes suivantes vous expliquent comment procéder.
Étapes de configuration
Vous aurez besoin des privilèges sudo ou root pour exécuter ces commandes.
Supprimez le fichier de configuration DNS du GCP
Pour désactiver la dérogation, vous devez supprimer le fichier de configuration généré automatiquement.
sudo rm /etc/systemd/resolved.conf.d/gce-resolved.conf
Définissez vos serveurs DNS personnalisés
Ajoutez la configuration netplan pour spécifier vos serveurs DNS.
- Open the file with a text editor like nano:
sudo vi /etc/netplan/80-custom-dns.yaml
- Voici un exemple d'utilisation
8.8.8.8et1.1.1.1comme serveur DNS, et en utilisantdomain.comcomme domaine de recherche:network: version: 2 renderer: networkd ethernets: ens4: dhcp4: true dhcp4-overrides: use-dns: false dhcp6: true dhcp6-overrides: use-dns: false nameservers: addresses: - 8.8.8.8 - 1.1.1.1 search: - domain.com - Enregistrez le fichier et quittez l'éditeur.
- Définissez les autorisations appropriées pour les fichiers.
sudo chmod 600 /etc/netplan/80-custom-dns.yaml
- Testez les changements :
sudo netplan try
- Appliquez les modifications.
sudo netplan apply
Redémarrez le service Resolver
sudo systemctl restart systemd-resolved
Validation
Exécutez à nouveau resolvectl status. Confirmez que la ligne Serveurs DNS affiche maintenant les IP de vos serveurs personnalisés et que $169.254.169.254$ n'est plus listé.
Vous devriez pouvoir voir vos serveurs DNS personnalisés et votre domaine de recherche dans /etc/resolv.conf .
(Facultatif) Corrigez les problèmes de résolution de noms d'hôtes
Si vous voyez une erreur comme Unable to resolve host ubuntu-22: Name or service not known, ajoutez votre entrée de nom d'hôte à /etc/hosts.
127.0.0.1 ubuntu-22

