Comment puis-je exécuter un bash script lorsque l'IP externe est modifié. Je me demande s'il existe un hook dans MacOS pour exécuter un tel script.
Réponse
Trop de publicités?Votre ordinateur n'a aucun moyen de détecter par lui-même que l'IP externe a changé, car cette opération est gérée par le routeur qui traduit votre IP privée en IP publique.
Vous devez donc interroger soit le routeur lui-même, soit un site externe.
Le routeur peut être interrogé par SNMP le s'il supporte ce protocole. Si ce n'est pas le cas mais qu'il dispose d'un accès en ligne de commande (CLI), vous pouvez l'utiliser avec un langage comme expect. Si le routeur n'est accessible que par une interface web, c'est faisable mais plus complexe.
Vous pouvez en fait éviter le polling si le routeur supporte l'envoi de traps SNMP ou possède un gestionnaire d'événements, c'est alors le routeur qui peut notifier le changement à votre ordinateur, et ensuite vous exécutez votre script à la réception de cette notification.