Google propose-t-il des DN dynamiques
Comment configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server
Je vous recommande de rediriger toutes les connexions vers une connexion sécurisée.
Résumé
Apprenez à configurer un DNS dynamique à l’aide de Google Domains et à sécuriser votre site avec un certificat SSL de Let’s Encrypt en utilisant CERTBOT.
Points clés:
1. DNS dynamique vous permet de pointer votre nom de domaine à une adresse IP dynamique.
2. Google Domains propose gratuitement DNS dynamique avec tous les achats de domaine.
3. Ce tutoriel vous montrera comment configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server.
Des questions:
1. Pourquoi devriez-vous utiliser DNS dynamique?
Répondre: DNS dynamique permet à un utilisateur de modifier son adresse IP sans avoir à mettre à jour constamment l’adresse IP sur ses appareils. Ceci est utile pour les personnes qui travaillent à distance et ont besoin d’une connexion fiable qui est toujours disponible.
2. Qu’est-ce que les domaines Google?
Répondre: Google Domains est un registraire de domaine qui offre aux utilisateurs la possibilité d’enregistrer leur propre nom de domaine.
3. Quels sont les avantages de l’utilisation des domaines Google?
Répondre: Les avantages des domaines Google comprennent une interface simple, des outils faciles à utiliser, des prix bas, un contrôle de votre domaine et une intégration avec Google Apps.
4. Quel est l’environnement du serveur recommandé pour configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server?
Répondre: L’environnement du serveur recommandé est Ubuntu 18.04 LTS avec Apache 2, Ddclient 3.8.3, et certbot 0.27.0.
5. Comment configurer DNS dynamique dans les domaines Google?
Répondre: Pour configurer DNS dynamique dans Google Domains, vous devez vous connecter à votre compte Google Domains, sélectionnez votre domaine, accédez aux paramètres DNS, cliquez sur “Afficher les paramètres avancés”, cliquez sur “Gérer DNS dynamique” et créez un nouvel enregistrement avec le nom du sous-domaine ou du domaine racine.
6. Qu’est-ce que DdClient?
Répondre: DDClient est un client DNS dynamique qui met automatiquement à jour vos enregistrements DNS avec votre adresse IP dynamique.
7. Comment configurer ddclient?
Répondre: Pour configurer DDClient, vous devez installer DDClient sur votre serveur Ubuntu, configurer le fichier de configuration DDClient et démarrer le service DDClient.
8. Comment configurez-vous votre serveur Web pour DNS dynamique?
Répondre: Pour configurer votre serveur Web pour DNS dynamique, vous devez configurer les hôtes virtuels Apache pour pointer vers votre domaine et configurer SSL à l’aide de certificat.
9. Qu’est-ce qu’un certificat SSL?
Répondre: Un certificat SSL est un certificat numérique qui authentifie l’identité d’un site Web et chiffre les données envoyées entre le site Web et le navigateur de l’utilisateur.
dix. Comment sécurisez-vous votre site avec un certificat SSL de Let’s Encrypt en utilisant CERTBOT?
Répondre: Pour sécuriser votre site avec un certificat SSL de Let’s Encrypt en utilisant CERTBOT, vous devez installer CERTBOT sur votre serveur, exécuter CERTBOT pour obtenir et installer le certificat SSL, et configurer votre serveur Web pour utiliser le certificat SSL.
11. Combien de temps faut-il pour configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server?
Répondre: Vous pouvez configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server en moins d’une heure.
12. Pouvez-vous utiliser DNS dynamique avec d’autres registraires de domaine?
Répondre: Oui, vous pouvez utiliser DNS dynamique avec d’autres registraires de domaine, mais ce tutoriel se concentre sur la configuration du DNS dynamique à l’aide de domaines Google.
13. Quel est le but de rediriger toutes les connexions vers une connexion sécurisée?
Répondre: La redirection de toutes les connexions vers une connexion sécurisée garantit que toute communication entre l’utilisateur et le site Web est cryptée et sécurisée, offrant une confidentialité et une protection contre l’écoute.
14. Quelles sont les exigences du système pour exécuter le serveur Ubuntu?
Répondre: Le serveur Ubuntu a des exigences système minimales, y compris un processeur 1 GHz, 512 Mo de RAM et 2 Go d’espace de disque dur.
15. Y a-t-il des limites ou des restrictions lors de l’utilisation du DNS dynamique avec les domaines Google?
Répondre: Les domaines Google peuvent avoir des limitations ou des restrictions sur le nombre d’enregistrements DNS dynamiques que vous pouvez créer ou la fréquence des mises à jour autorisées.
Comment configurer DNS dynamique à l’aide de Google Domains et Ubuntu SERVERTechnology
Je vous recommande de rediriger toutes les connexions vers une connexion sécurisée.
Google propose-t-il des DN dynamiques
О этой срранице
Ыы зарегистрtures. С помощюю ээой страницы ыы сжжем оределить, что заES’t. П’t?
Эта странdent к Te. Странdent. До ээого момента для исоллash.
Источником заves просов может слжжж Вve ыыы заES’t. Еслèe Вы ис démar. Обратитесь к своему ситемному адмииииии. Подробнее.
Проверка по слову может также появляться, ели Вы Вводите сложные заы, оычно рссзevretic емами, или же Вводите заES’t.
Comment configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server Technology

Apprenez à configurer un DNS dynamique à l’aide de Google Domains et à sécuriser votre site avec un certificat SSL de LET’S crypt utilisant Certbot.
Dynamic DNS est un service qui vous permet de pointer votre nom de domaine à une adresse IP dynamique. Cela signifie que l’adresse IP de votre site Web change périodiquement.
Google Domains propose gratuitement DNS dynamique avec tous les achats de domaine. Vous pouvez configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server en moins d’une heure.
Ce tutoriel vous montrera comment configurer DNS dynamique à l’aide de Google Domains et Ubuntu Server.
Table des matières
- Pourquoi utiliser DNS dynamique?
- Qu’est-ce que les domaines Google?
- Étape 1: Configuration du DNS dynamique dans les domaines Google
- Étape 2: Configuration de DDClient
- Étape 3: Configurez votre serveur Web
Pourquoi utiliser DNS dynamique?
Dynamic DNS est un service qui permet à un utilisateur de modifier son adresse IP sans avoir à mettre à jour constamment l’adresse IP sur ses appareils. Cela rend beaucoup plus facile qu’avant de rendre une adresse IP accessible de n’importe où, ce qui est utile pour les personnes qui travaillent à distance et ont besoin d’une connexion fiable qui est toujours disponible.
Il est également important de noter que DNS dynamique ne nécessite aucune configuration côté client. Le service DNS dynamique fait tout le travail pour vous.
Qu’est-ce que les domaines Google?
Google Domains est un registraire de domaine qui offre aux utilisateurs la possibilité d’enregistrer leur propre nom de domaine.
Google Domains vous offre la possibilité d’obtenir votre propre nom de domaine sans avoir à passer par un tiers. Il vous offre également la possibilité d’utiliser votre propre adresse e-mail personnelle, qui est liée directement à votre site Web ou blog.
Avantages des domaines Google
Les avantages des domaines Google sont qu’il offre une interface simple, des outils faciles à utiliser et des prix bas. Vous recevez beaucoup de contrôle de votre domaine par rapport à la tarification d’autres services comme Dyndns (24 $.95 par an au moment de la rédaction) avec des fonctionnalités limitées. Il y a services gratuits Comme NOIP.com, mais vous n’avez pas peu de contrôle du nom de domaine utilisé et peut avoir à vérifier l’utilisation tous les 30 jours.
Google Domains vous fournit un tableau de bord personnel avec tous vos domaines, e-mails et contacts. Vous obtenez également l’intégration de Google Apps, vous pouvez donc accéder à tous vos e-mails, calendrier et chat à partir d’un seul endroit.
Environnement
- Ubuntu 18.04 LTS Je suis sûr que cela fonctionnera sur des versions ultérieures, mais mes serveurs de production sur DigitalOcean exécutent tous cette version.
- Apache 2
- ddclient 3.8.3 – Installation
- Certbot 0.27.0 – Installation
Étape 1: Configuration du DNS dynamique dans les domaines Google
- Connectez-vous aux domaines Google.
- Sélectionnez le nom de votre domaine.
- Sélectionnez «DNS» sur le côté gauche de l’écran. Serveurs de noms par défaut doit être actif ou cela ne fonctionnera pas.
- Cliquez sur Afficher les paramètres avancés.
- Cliquez sur Gérer DNS dynamique et Créer un nouvel enregistrement.
- Attribuez une IP dynamique en entrant le nom du sous-domaine ou du domaine racine.
- Cliquez sur Sauvegarder.
Lorsque vous arrivez à l’étape 4 de “ Configuration d’un enregistrement synthétique dynamique ” Si vous souhaitez ajouter plusieurs sous-domaines, c’est le premier changement à faire. Étant donné que parfois je peux partager l’accès à un produit fini de quelque chose qui ajoute ‘@’ (“domaine racine” ou “domaine nu”) est la voie à suivre. Sinon, ajoutez le sous-domaine de votre choix.

Quelque chose que je considérais comme je peux toujours transmettre un sous-domaine unique, comme les pages GitHub, si nécessaire pour plus tard. Sur mon serveur Web, mes fichiers de configuration contrôlent la direction de la demande. Donc, le trafic passe à l’emplacement du domaine racine est le plus logique pour moi.

Complétez le reste des étapes des instructions.
Étape 2: Configuration de DDClient
Dynamic Domain Name System est un service qui met automatiquement à jour l’adresse IP associée à un nom de domaine, qui peut être utile pour accéder à un site Web qui utilise une adresse IP dynamique (E.g., pour les services d’hébergement Web) sur Internet. Ce service peut être fourni par DDClient, qui est un logiciel qui met à jour les enregistrements informatiques des noms de domaine pour refléter les modifications de leurs adresses IP.
Je n’ai pas pu faire fonctionner DDClient correctement en utilisant la prise en charge de Google Domains intégrée, j’ai donc opté pour les instructions sans prise en charge de Google Domains.
# Configuration déposer pour ddclient généré par débortre # # / /etc/ /ddclient.confli démon=300 protocole=dyndns2 utiliser=la toile serveur=domaines.Google.com SSL=Oui connexion=généré_username mot de passe='généré_password' # voir le Note dessous @.ton domaine.TLD Testez votre configuration:
Remarque: si vous rencontrez des problèmes ici, vous devrez peut-être supprimer les citations uniques
sudo ddclient -Daemon = 0 -debug -Verbose -Noquiet
Vous avez terminé correctement la configuration si la sortie se termine par “succès” – la sortie doit être similaire à:
SUCCÈS: @.ton domaine.com: sauté: l’adresse IP était déjà définie sur 12.80.274.74.
Je me suis alors assuré que les URL se sont propagées. Une fois que l’URL principale a réussi (vérifiez également avec www.ton domaine.com) J’ai ensuite vérifié avec des sous-domaines aléatoires avec et sans www pré-tendu. Après que je me sentais bien dans les résultats, je suis passé à l’étape suivante.
Étape 3: Configurez votre serveur Web
Le domaine que j’ai sélectionné se termine par la page, j’ai donc dû avoir une connexion sécurisée pour que mes URL fonctionnent correctement. Je ne vous dirai pas combien de temps il m’a fallu pour comprendre cela, mais c’est pourquoi ces étapes sont suivantes ;-). Avec l’utilisation de la valeur par défaut .Fichier de Conf J’étais prêt à commencer.
Répétez ce processus avec chaque site / domaine que vous configurez pour utiliser avec votre DNS dynamique.
Copiez un fichier de confr.:
Sudo CP 000-défaut.confocain_name.confli
Ajustez le fichier pour servir le domaine qu’il servira:
*: 80> Serveradmin your_email @ yourDomain.com serveur de sous-domaine.ton domaine.com servealias www.sous-domaine.ton domaine.com documentRoot / var / www / subsUl_domain errorlog $Apache_log_dir>/erreur.Journal Customlog $Apache_log_dir>/accès.journal combiné Si vous avez besoin d’une redirection
J’ai mentionné mon serveur de bandes dessinées et bien sûr, je devais y accéder avec ma nouvelle structure de domaine. Voici donc un exemple de la façon dont j’ai ajouté un hôte virtuel sur mon serveur pour en faire une réalité.
*: 80> Serveradmin your_email @ yourDomain.com serveur de sous-domaine.ton domaine.com servealias www.sous-domaine.ton domaine.com documentRoot / var / www / subsUl_domain errorlog $Apache_log_dir>/erreur.Journal Customlog $Apache_log_dir>/accès.journal combiné /> Proxypass http: // 192.168.1.76: 2202 / proxypassreverse http: // 192.168.1.76: 2022 / / admin> Proxypass http: // 192.168.1.76: 2203 / admin proxypassreverse http: // 192.168.1.76: 2203 / admin Activez le site à utiliser:
sudo a2ensite domain_conf.confli
Générer un certificat SSL à l’aide de CERTBOT – Facultatif, non facultatif
Je vous recommande de rediriger toutes les connexions vers une connexion sécurisée.
Sudo Certbot –Apache -d NextCloud.ton domaine.com -d www.NextCloud.ton domaine.com
Ton .Le fichier Conf ressemblera à ce qui suit et il créera une connexion sécurisée .Fichier Conf automatiquement.
*: 80> Serveradmin your_email @ gmail.com serveur de sous-domaine.ton domaine.com servealias www.sous-domaine.ton domaine.com documentRoot / var / www / subsUl_domain errorlog $Apache_log_dir>/erreur.Journal Customlog $Apache_log_dir>/accès.Journal réécriture combinée sur RewriteCond% = sous-domaine.ton domaine.com [ou] rewriteCond% = www.sous-domaine.ton domaine.com réécriture ^ https: // %% [fin, ne, r = permanent] C’est tout, ouvrez votre navigateur et allez à l’URL souhaitée et vous verrez le site que vous recherchez. Faites-nous savoir si vous avez essayé cela et si cela fonctionne pour vous.
CANSIN ACARER
Comment utiliser DDClient pour mettre à jour les paramètres DNS dynamiques sur les domaines Google
Si vous exécutez un serveur Web, un VPN ou tout autre appareil à la maison auquel vous souhaitez accéder sur Internet à l’aide d’un domaine ou d’un nom de sous-domaine, vous avez besoin d’une adresse IP statique (que de nombreux FAI ne fournissent pas ou ne facturent pas de plus) ou vous aurez besoin d’une configuration DNS dynamique qui modifie vos enregistrements DNS à chaque fois que votre adresse IP modifie les modifications IP change. Google Domains propose ce service gratuitement et sans aucune chaîne attachée comme NOIP’S Besoin de confirmation tous les 30 jours.
1. Identifiez votre interface réseau
Nous aurons besoin de connaître le nom de l’interface réseau que DDClient utilisera, alors exécutez la commande suivante:
sudo lshw Recherchez les lignes suivantes qui commencent par * -network dans la sortie et notez le nom logique de l’interface réseau que vous utilisez. Ce serait Eth0 pour le cas ci-dessous car cet appareil était connecté via Ethernet.
[. ] * -network: 0 Désactivé Description: ID d'interface sans fil ID physique: 1 nom logique: Wlan0 [. ] * -network: 1 Description: Interface Ethernet ID physique: 2 Nom logique: Eth0 [. ]] 2. Obtenir des informations d’identification DNS à partir des domaines Google
Connectez-vous aux domaines Google, sélectionnez le domaine que vous souhaitez pointer vers ce serveur et ouvrez les enregistrements DNS en cliquant sur DNS. Cliquez sur Afficher les paramètres avancés Au bas de la page, alors Gérer DNS dynamique et créer un nouvel enregistrement comme vous le feriez avec d’autres enregistrements. Enfin cliquer Afficher les références DNS dynamiques alors Voir et notez les informations d’identification.
3. Installer et cofigure ddclient
Installez-le (vous pouvez ignorer les questions lors de l’installation en appuyant sur Entrée):
APT INSTALLATION DDCLIENT Modifiez la configuration avec:
sudo nano / etc / ddclient.confli Il devrait ressembler à cela, mais avec vos informations d’identification DNS, nous avons obtenu plus tôt et le domaine dépendrait de ce que vous avez configuré sur la section DNS dynamique.
protocole = dyndns2 use = web server = domaines.Google.com ssl = oui login = googlednsUserName mot de passe = googlednspassword yourDomain.com Si vous souhaitez mettre à jour plusieurs enregistrements DNS, répétez simplement ces étapes et ajoutez la configuration dans le DDClient.fichier de confr.
4. Essai
Le suivant exécute la séquence de mise à jour:
sudo ddclient -Daemon = 0 -debug -Verbose -Noquiet Si vous voyez une ligne vers la fin de la sortie montrant que Google a répondu avec bien Et votre adresse IP, cela fonctionne.
Recevoir: bon youripaddress Testez à double vérification, vous pouvez pointer votre DNS vers une fausse adresse IP en allant à l’URL suivante avec vos coordonnées:
https: // nom d'utilisateur: mot de passe @ domaines.Google.com / nic / mise à jour?nom d'hôte = sous-domaine.ton domaine.com & myip = 1.2.3.4 Si vous exécutez à nouveau le démon DDClient, il comparera son adresse IP avec l’adresse qu’il a mise en cache (pas avec celle que nous avons changé en utilisant la demande GET ci-dessus); Je pense donc que son IP n’a pas’t changé. Vous devez donc supprimer son cache, puis exécuter la séquence de mise à jour comme ci-dessous.
sudo rm -f / var / cache / ddclient / ddclient.cache Référence supplémentaire
Voir Google DNS Aidez l’article pour d’autres réponses.
Google propose-t-il des DN dynamiques
Reddit et ses partenaires utilisent des cookies et des technologies similaires pour vous offrir une meilleure expérience.
En acceptant tous les cookies, vous acceptez notre utilisation des cookies pour fournir et maintenir nos services et notre site, améliorer la qualité de Reddit, personnaliser le contenu et la publicité Reddit, et mesurer l’efficacité de la publicité.
En rejetant des cookies non essentiels, Reddit peut toujours utiliser certains cookies pour assurer la bonne fonctionnalité de notre plateforme.
Pour plus d’informations, veuillez consulter notre avis de cookie et notre politique de confidentialité .
Obtenez l’application Reddit
Scannez ce code QR pour télécharger l’application maintenant
Ou vérifiez-le dans les magasins d’applications
Bienvenue dans votre amical / r / homelab, où les techniciens et les systèmes de partout sont les bienvenus pour partager leurs laboratoires, projets, constructions, etc.
Membres en ligne
par SparkFist
Une solution DNS dynamique moins chère: google dynamic DNS
Plutôt que de payer 25 $ à 35 $ pour un service DNS dynamique amélioré via un endroit comme Dyndns ou NOIP, utilisez plutôt Google Domains. Je paie déjà 12 $ / an pour mon domaine et ils permettent un DNS dynamique gratuit avec des choix de noms de domaine bien meilleurs et des sous-domaines illimités.
https: // support.Google.com / domaines / réponse / 6147083?hl = en
Vous pouvez également utiliser DDClient pour automatiser facilement la mise à jour de l’IP qui est décrite dans le lien de Google.
En tant que bonus latéral configurant le transfert sans e-mail avec un joker * @ yourDomain.com ou votre nom @ yourDomain.com vers l’avant vers un compte Gmail existant est assez cool aussi. Je l’utilise de la même manière que le youmail + @ gmail.com mais à la place faire un site Web @ mydomain.com parce que certains places bloquent à plat gmail ou bloquent le + dans l’e-mail. Aide à contrôler d’où vient le spam.
::modifier:: Je laisse le transfert de l’e-mail avec Google parce que bien Gmail, mais j’ai changé mon DNS à CloudFares Free Tier que je ne savais pas existant. Pas de regrets jusqu’à présent et la migration s’est produite en quelques minutes au maximum au maximum. Merci à u / okrumm pour la suggestion. Ont encore des plis pour s’entraîner car le cloudfare ne fonctionnera pas avec mod_proxy car il ne respecte pas la redirection. À moins que je réarchitecte, je ne verrai pas la valeur ajoutée de Cloudfare. C’est dommage car je pouvais voir une certaine valeur dans leur atténuation et l’exploitation de la menace pour en faire valoir la peine.
Mise à jour du DNS dynamique des domaines Google avec PowerShell
Dernièrement moi’J’ai travaillé sur la construction de mon laboratoire domestique pour jouer avec des choses que je’d ne jamais penser à la mise en place et à l’essai dans notre environnement de développement au travail. Il’a été une explosion; je’VE configurer des contrôleurs de domaine locaux pour tester pour tester les scripts, construire des serveurs Linux pour tester la réplication vers et depuis les serveurs SQL et d’autres produits de base de données relationnels, et même la configuration de routage et d’accès à distance afin que je puisse distribuer un VPN à distance dans mon réseau domestique pour stocker et récupérer le code I I’J’ai travaillé sur ou même l’utiliser pour montrer des projets de preuve de concept à d’autres personnes. Il’s incroyablement cool et je’J’ai beaucoup appris dans le processus.
Lorsque vous commencez à parler de faire des choses comme des serveurs VPN à domicile (ou n’importe quel serveur domestique d’ailleurs), tôt ou tard vous vous composez contre un problème épineux: comment puis-je m’assurer que je peux toujours me connecter à mon réseau domestique à distance? Bonne nouvelle: vous avez déjà une adresse IP!
Avoir (ou savoir) quelle est votre adresse IP à domicile vous donne beaucoup de flexibilité car si vous le savez, vous pouvez enregistrer les noms de domaine et les faire pointer. Par exemple, laissez’s dis que je voulais exposer un serveur (nommé “nain”) sur mon réseau domestique sur Internet. Mis à part les changements de réseautage et de pare-feu sur mon réseau’S fin (ouvrant les bons ports pour le transfert, permettant un accès à distance, etc.), j’aurais également besoin d’un nom de domaine et d’une entrée d’hôte afin de savoir comment résoudre. Ensuite, je pourrais enregistrer un nom de domaine, comme Boatmurder.net, et avoir nain.murse.Résolution nette à mon adresse IP à domicile. Ce’est beaucoup plus facile (et plus cool) à retenir qu’une adresse IP. Mais pour ce faire, vous devez connaître votre IP à la maison pour définir le “UN” Enregistrer pour le serveur de noms de domaine.
Cela semble bien soigné? Le frottement est que ce n’est pas’T PROBABLE VOUS’Je vais mémoriser votre adresse IP, et même si vous avez fait la plupart des fournisseurs de services Internet (FAI) qui offrent à la maison le haut débit Don’t vous fournir une adresse IP statique. Cela signifie que si vous avez besoin de redémarrer votre modem, vous êtes’t garanti pour obtenir la même adresse. Ce’SE PAS dire que tu peux’t ont une IP statique mais ils font généralement partie d’une offre d’entreprise plus chère qui n’est probablement pas’t vaut le coût à avoir dans votre maison.
DNS dynamique
Là’S une solution, cependant: DNS dynamique. Le DNS dynamique est défini comme un service qui vous permet de mettre à jour automatiquement un serveur de noms sans avoir besoin de le modifier manuellement, généralement après une adresse IP (même sans que vous sachiez qu’elle a changé). Le processus fonctionne généralement comme ceci:
- Vous vous inscrivez avec un service qui propose un service DNS dynamique, comme Dyn ou CloudFlare.
- Vous installez une application de service quelque part sur votre réseau qui surveille votre IP publique pour les modifications, et se connecte aux fournisseurs et met à jour vos enregistrements pour pointer automatiquement une adresse IP mise à jour.
Cela peut sembler facile, mais là’s quelques gotchas: un, certains services, comme dyn, are’t gratuit. Cloudflare a une solution gratuite, mais vous devez utiliser leurs serveurs de noms pour vos domaines (qui peuvent ou non être un rupture pour vous). Deuxièmement, presque tous les outils disponibles librement sur votre réseau sont basés sur Linux. Cela en soi n’est pas’t aussi mauvais que cela puisse paraître, même si vous êtes’T familier avec Linux, vous pouvez les faire fonctionner assez rapidement. Le plus gros problème est que si votre réseau domestique est principalement basé sur Windows et que vous ne faites pas’T a un matériel de rechange qui met pour construire votre propre serveur Linux (ou vous ne faites pas’Je veux tourner les machines virtuelles sur votre machine domestique), alors vous pouvez’t Utilisez-les non plus (Mise à jour: il semble que vous puissiez aussi travailler avec Perl sur vos machines locales, mais je parviens’t essayé encore).
Il y a aussi une troisième option: certains routeurs domestiques plus récents de fournisseurs comme ASUS Provider Dynamic DNS Services regroupés avec le logiciel du routeur OS. Donc, si vous avez votre propre routeur, cela peut être une option.
Domaines Google
Vous vous demandez peut-être ce que tout cela a à voir avec PowerShell, à droite? Récemment, j’ai enregistré quelques nouveaux noms de domaine avec Google Domains, principalement parce qu’ils vous donnent une très belle interface Web à utiliser et comme j’utilise Google pour presque tout le reste de ma vie, cela avait un sens (et je ne l’ai pas fait’T a besoin ou veut encore un autre compte en ligne). Quand j’étais là-bas pour mettre en place des enregistrements pour les rediriger vers mon blog, j’ai remarqué quelque chose:

Sous “enregistrements synthétiques” J’ai remarqué une option DNS dynamique. En cliquant un peu plus profondément, j’ai atteint la page d’aide pour les enregistrements synthétiques, puis DNS dynamique, que vous pouvez lire ici. Ici’s le TL; DR: Google offre ce service gratuitement pour les domaines enregistrés sur leur service et ils prennent en charge le même protocole Dyndns2 que les autres fournisseurs DNS dynamiques, donc les mêmes applications (Linux) que vous auriez installées pour les autres services s’appliquent ici également ici.
Mais avant de fermer la fenêtre en pensant que je’D Soyez en train de construire une nouvelle machine virtuelle Linux dans mon laboratoire domestique, j’ai vu ceci:

Et puis je suis devenu vraiment excité, car cela signifiait que je pouvais rouler ma propre solution pour mettre à jour leur service DNS dynamique avec PowerShell! De sorte que’s ce que j’ai fait.
Utilisation de PowerShell pour mettre à jour votre enregistrement DNS dynamique
Google’L’API DNS dynamique est vraiment un peu moins qu’un post HTTPS sur une URL spécifique avec certains paramètres emballés dans le post. Ce qui le fait fonctionner, cependant, c’est pour chaque nom d’hôte DNS dynamique que vous fournissez, vous obtenez un nom d’utilisateur et un mot de passe générés automatiquement qui doivent faire partie de la publication. PowerShell est vraiment naturellement adapté à ce type d’automatisation, grâce à invoke-webrequest (lien msdn). Il’S construit pour cela, et prend même en charge les HTTP. Heck, il prend même en charge la mise en œuvre du nom d’utilisateur: mot de passe dans la demande via un objet PSCredential.
Tout ce que je devais vraiment faire était d’envelopper le code dans une fonction et d’ajouter des paramètres qui peuvent être transmis, invoquer la demande Web et analyser les résultats. Ici’s un extrait de la fonction plus grande que j’ai mentionnée ci-dessus:
[Cmdletbinding (supportSShouldProcess = $ true)] param ([paramètre (obligatoire = $ true)]] [psCredential] $ indentiel, [paramètre (obligatoire = $ true)] [String] $ domainName, [paramètre (obligatoire = $ true)] [String] $ subdomainName, [paramètre (Mandatory = $ false) [String] $ ip (Obligatoire = $ false)] [Switch] $ en ligne) commencer < $webRequestURI = "https://domains.google.com/nic/update" $params = @<>> traiter < $splitDomain = $domainName.split(".") if ($splitDomain.Length -ne 2) < Throw "Please enter a valid top-level domain name (yourdomain.tld)" >$ subanddomain = $ subdomainName + "."+ $ domainName $ SplitDomain = $ subanddomain.diviser(".") If ($ Splitdomain.Longueur -ne 3) < Throw "Please enter a valid host and domain name (subdomain.yourdomain.tld)" >$ params.Ajouter ("nom d'hôte", $ subanddomain) if ($ ip-et !$ hors ligne) < $ipValid = $true $splitIp = $ip.split(".") if ($splitIp.length -ne 4) < $ipValid = $false >Foreach ($ i dans $ Sprip) < if ([int] $i -lt 0 -or [int] $i -gt 255) < $ipValid = $false >> if (!$ ipvalid) < Throw "Please enter a valid IP address" >$ params.Ajouter ("Myip", $ ip)> elseif ($ hors ligne -et !$ en ligne) < $params.Add("offline","yes") >elseif ($ en ligne -et et !$ hors ligne) < $params.Add("offline","no") >if ($ pscmdlet.Devrait procéder ("$ subanddomain", "ajout d'ip")) < $response = Invoke-WebRequest -uri $webRequestURI -Method Post -Body $params -Credential $credential $Result = $Response.Content $StatusCode = $Response.StatusCode if ($Result -like "good*") < $splitResult = $Result.split(" ") $newIp = $splitResult[1] Write-Verbose "IP successfully updated for $subAndDomain to $newIp." >if ($ Result - comme "nochg *") < $splitResult = $Result.split(" ") $newIp = $splitResult[1] Write-Verbose "No change to IP for $subAndDomain (already set to $newIp)." >if ($ result -eq "badauth") < Throw "The username/password you providede was not valid for the specified host." >if ($ result -eq "nohost") < Throw "The hostname you provided does not exist, or dynamic DNS is not enabled." >if ($ result -eq "notfqdn") < Throw "The supplied hostname is not a valid fully-qualified domain name." >if ($ result -eq "badagent") < Throw "You are making bad agent requests, or are making a request with IPV6 address (not supported)." >if ($ résultat -eq "abus") < Throw "Dynamic DNS access for the hostname has been blocked due to failure to interperet previous responses correctly." >if ($ result -eq "911") < Throw "An error happened on Google's end; wait 5 minutes and try again." >> $ réponse> je’VE a mis en évidence les lignes qui vous montrent comment le corps du post HTTP obtient des paramètres et où la demande est faite. Le reste du code est une vérification des erreurs pour s’assurer que les gens mettent des valeurs valides pour les choses que Google s’attendra (et ils ont également des erreurs de vérification de leur côté, mais si vous continuez à leur lancer de mauvaises demandes, ils’ll signalez vos demandes et rejetez-les tous. Juste un bon avertissement, alors Don’t les spammes avec de mauvaises demandes).
Utilisez-le vous-même!
Avec ce code, vous pouvez définir maintenant utiliser Native PowerShell pour maintenir à jour vos DNS dynamiques Google Domains et sans avoir besoin de machines ou de machines virtuelles distinctes pour exécuter des services publics! J’ai pris le code ci-dessus et créé un module, appelé Googledamicdnstools. Ce module peut être trouvé sur mon github, et je’m aussi fier d’annoncer que Je l’ai rendu disponible sur la galerie PowerShell! Cela signifie que vous pouvez installer le module de deux manières:
- Sur les machines exécutant Windows 10 (ou avec le framework de gestion 5 installé), vous pouvez exécuter le module d’installation -nom googledamicdnstools (vous’Il faut également gérer PowerShell en tant qu’administrateur). Plus de détails sur l’utilisation de cette méthode peuvent être trouvés sur la page de la galerie Lire-moi.
- Si tu ne fais pas’Je souhaite installer le module via la galerie, vous pouvez télécharger le code à partir de mon github et l’installer vous-même.
Exemple d’automatisation
Une fois que vous avez le module, vous pouvez créer une tâche planifiée pour exécuter toutes les heures et mettre à jour votre entrée DNS dynamique. Pour ma configuration, j’ai écrit un .Le fichier de script PSD1 et déclaré certaines variables, créé un objet d’identification à partir de texte brut, puis appelez le module’S Fonction pour envoyer la demande à Google. Ici’s un échantillon:
Le module d'importation googledamicdnstools $ logdate = get-date $ logfilename = "googlednsupdatelog_" + $ logdate.Mois + $ logdate.Jour + $ logdate.Année + "_" + $ logdate.Heure + $ logdate.Minute + $ logdate.Deuxième + ".txt "$ apiUserid =" myUniqueUserId "$ APIPASSWORD =" MyUniquepassword "$ SecurePassword = Convertto-SecureString -String $ APIPASSWORD -AsplainText -Force $ CIDENDENCE = New-Object System.Gestion.Automatisation.PSCREDENTIEL $ APIUSERID, $ SecurePassword Start-Transcript -Path ("C: \ dnslogs \" + $ logfilename) Update-googledynamicdns -Credential $ Cidential -domainName "BoatMurder.net "-SubDomainName" nain "-verbose #clean up anciens fichiers journaux get-childem -path" c: \ dnslogs "| where-object | retire-item -verbose stop transcript Dans le script ci-dessus, je’Je fais quelques autres choses en dehors de la fonction principale. Premièrement je’m Création manuelle d’un objet PSCredential avec un nom d’utilisateur et un mot de passe clairs. Ce’S ce n’est probablement pas la meilleure façon de le faire, mais c’est un exemple rapide. À des fins forestières, j’utilise Start-Transcript pour capturer toutes les sorties du terminal et enregistrer une nouvelle transcription. Enfin, pour s’assurer que nous’T Remplissez mon disque dur avec des fichiers journaux, la dernière partie du script semble dans le répertoire où je’M Stockage des fichiers de transcription et purge tout ce qui est de plus de 30 jours.
Ensuite, j’ai créé une tâche planifiée Windows pour appeler PowerShell.EXE avec un paramètre égal au nom du script, et définissez-le pour exécuter toutes les heures. De cette façon, si mon IP change parce que mon modem ou mon routeur de câble se déconnecte au plus je’Ayez une heure jusqu’à l’exécution du script et met à jour mon entrée DNS.

Certes, si mon pouvoir s’éteint et que mon ordinateur est éteint, tous les paris sont désactivés (mais que’s à quoi servent les systèmes UPS, à droite?)
À l’avenir
J’espère que le code et les exemples ici pourront vous aider. Une partie de la raison pour laquelle j’en ai fait un module était dans un effort pour ajouter plus de fonctionnalités de l’API Google DNS, mais je sentais que c’était un très bon début. N’hésitez pas à revoir mon code et à apporter des modifications. je’D j’adore avoir une demande de traction! Et faites-moi savoir ce que vous pensez du module si vous le saisissez également à la galerie PowerShell.
