Un script Python léger qui surveille automatiquement les changements d'adresse IP d'un domaine et envoie une notification macOS lorsqu'une modification DNS est détectée.
Lorsque vous modifiez les enregistrements DNS d'un domaine, il peut prendre du temps avant que les changements se propagent. Ce script évite de devoir vérifier manuellement toutes les cinq minutes en surveillant automatiquement l'adresse IP du domaine et en vous notifiant dès qu'elle change.
Cas d'usage idéal : Vous venez de modifier les DNS de votre domaine et souhaitez savoir immédiatement quand la propagation sera effective.
- Surveillance automatique - Vérifie l'adresse IP toutes les 5 secondes
- Notifications natives macOS - Alerte visuelle dès qu'un changement est détecté
- Léger et simple - Un seul script Python sans dépendances externes
- Configuration facile - Modifiez simplement l'adresse du domaine dans le code
- macOS - Le script utilise AppleScript pour les notifications
- Python 3.x - Généralement pré-installé sur macOS
-
Clonez ce dépôt :
git clone https://github.com/Nicolas-DW/python_DNS-MAJ_Check.git cd python_DNS-MAJ_Check -
Modifiez le fichier
py-notif.pyet remplacez[ADDRESS]par votre nom de domaine :ip = socket.gethostbyname('votre-domaine.com') ip2 = socket.gethostbyname('votre-domaine.com') # ... ip2 = socket.gethostbyname('votre-domaine.com')
Lancez le script immédiatement après avoir modifié les enregistrements DNS de votre domaine :
python3 py-notif.pyLe script :
- Récupère l'adresse IP actuelle du domaine
- Vérifie toutes les 5 secondes si l'IP a changé
- Affiche "wait" dans le terminal pendant la surveillance
- Envoie une notification macOS avec la nouvelle IP dès qu'elle change
Important : Le script doit être lancé avant que le changement DNS ne soit propagé. S'il est lancé après, il ne détectera aucun changement.
Lorsqu'un changement est détecté, vous recevrez une notification macOS :
Titre : changement d'IP
Message : 192.168.1.100
Le script utilise :
socket.gethostbyname()- Pour résoudre le nom de domaine en adresse IPosascript- Pour envoyer des notifications natives macOS via AppleScript- Boucle de vérification - Compare l'IP initiale avec l'IP actuelle toutes les 5 secondes
- macOS uniquement - Les notifications utilisent AppleScript
- Doit être lancé avant la propagation - Ne fonctionne que si le changement DNS n'a pas encore été effectué au moment du lancement
- Domaine unique - Surveille un seul domaine à la fois
Par défaut, le script vérifie toutes les 5 secondes. Pour modifier cet intervalle :
time.sleep(5) # Remplacez 5 par le nombre de secondes souhaitéPour adapter ce script à d'autres systèmes d'exploitation, remplacez la fonction notify() par une bibliothèque multiplateforme comme plyer ou notify-py.
Distribué sous licence MIT. Voir le fichier LICENSE pour plus d'informations.
Les contributions sont les bienvenues ! N'hésitez pas à :
- Signaler des bugs
- Proposer des améliorations
- Adapter le script pour d'autres systèmes d'exploitation
- Ajouter des fonctionnalités (surveillance de plusieurs domaines, log des changements, etc.)
Pratique pour éviter de surveiller manuellement la propagation DNS !