GNU/Linux >> Tutoriels Linux >  >> Linux

Méthode pour agir sur le changement d'adresse IP du FAI ?

Comme Wouter l'a commenté, votre configuration existante semble déjà assez correcte.

Si vous voulez quelque chose de moins dépendant de dhclient , vous pouvez jeter un œil aux nombreux clients DNS dynamiques fournis avec Debian.

Par exemple, ddclient peut réagir aux modifications DHCP ou simplement surveiller une interface Ethernet ; lorsque l'adresse IP change (et seulement alors), il peut mettre à jour une entrée DNS dynamique (sur n'importe quel nombre de fournisseurs), ainsi qu'exécuter un script séparé (qui couvrirait vos deux cas d'utilisation).


Je vous propose de simplifier/scinder davantage votre solution en suivant le principe de séparation des préoccupations :

  • un script /etc/dhcp/dhclient-exit-hooks.d/trigger_on_ip_change devrait seulement décider si une action doit être entreprise et reporter l'action à un script séparé /usr/local/bin/act_on_ip_change
  • le script /usr/local/bin/act_on_ip_change ne doit exécuter que les modifications nécessaires

Les raisons de séparer ces préoccupations sont :

  • vous pouvez tester séparément si dhclient se déclenche correctement (sans rien modifier sur votre système pendant le débogage)
  • vous pouvez tester le "change making" sans avoir besoin de renouveler (et donc de perdre potentiellement) votre IP
  • vous pouvez exécuter /usr/local/bin/act_on_ip_change manuellement en cas de besoin
  • les parties sont beaucoup plus faciles à comprendre

En bref, je suggérerais d'avoir ceci dans /etc/dhcp/dhclient-exit-hooks.d/trigger_on_ip_change_action :

# based on /etc/dhcp/dhclient-exit-hooks.d/debug

if [ "$reason" = "BOUND" -a "$old_ip_address" != "$new_ip_address" ]; then
  /usr/local/bin/act_on_ip_change
fi

Linux
  1. Quelle est la différence entre #!/usr/bin/env bash et #!/usr/bin/bash ?

  2. autorisation refusée pour composer dans /usr/local/bin/

  3. Différence entre /bin et /usr/bin

  4. Déplacement du contenu de /bin vers /usr/bin, possible d'annuler ?

  5. Comment changer le champ De :pour les e-mails de Cron ?

./configure :/bin/sh^M :mauvais interpréteur

Installer les binaires dans /bin, /sbin, /usr/bin et /usr/sbin, interactions avec --prefix et DESTDIR

Changer de répertoire et exécuter le fichier en une seule commande

cmake --version pointe vers /usr/bin/cmake tandis que cmake pointe vers /usr/local/bin

Quelle est la signification de /usr/sbin, /usr/local/sbin et /usr/local/bin ?

Les sites Web doivent-ils vivre dans /var/ ou /usr/ selon l'utilisation recommandée ?