Il semble que ce soit possible, mais cela va nécessiter un peu de bricolage...
Comme vous l'avez suggéré dans les commentaires, dhclient ne valide pas les réponses du serveur DHCP pour les adresses de routeur. J'ai donc consulté les documents et découvert quel type de situation pouvait amener dhclient à envoyer un DHCPDECLINE.
Dhclient Les documents montrent que dhclient-script est appelé lorsqu'un bail est émis :
...configuration du réseau script invoqué par dhclient quand il obtient un bail. Si non spécifié, le CLIENTBINDIR/dhclient-script par défaut est utilisé. utilisé. Voir dhclient-script(8)pour une description de ce fichier.
http://manpages.ubuntu.com/manpages/wily/en/man8/dhclient.8.html
Dhclient-script Les docs montrent qu'avant de configurer l'adresse offerte par le serveur DHCP, dhclient-script ARPs pour elle et soulève un DHCPDECLINE si l'adresse existe déjà.
Avant de configurer réellement l'adresse, dhclient-script devrait d'une certaine manière ARP pour elle et sortir avec un statut non nul s'il reçoit une réponse. Dans ce cas, le client envoie un message DHCPDECLINE au serveur et acquiert une autre adresse. serveur et acquiert une autre adresse.
http://manpages.ubuntu.com/manpages/wily/en/man8/dhclient-script.8.html
Je n'ai pas de copie d'Ubuntu à regarder pour le moment (vérifiez votre /etc/dhclient-script), mais le code source de l'application Linux dhclient-script peuvent être trouvés ici http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/wily/isc-dhcp/wily/view/head:/client/scripts/linux
Je pense (mais je ne peux malheureusement pas le tester) que vous pourriez sauvegarder votre dhclient-script existant et modifier cette section
Must be used on exit. Invokes the local dhcp client exit hooks, if any.
exit_with_hooks() {
exit_status=$1
if [ -f /etc/dhclient-exit-hooks ]; then
. /etc/dhclient-exit-hooks
fi
# probably should do something with exit status of the local script
exit $exit_status
}
Je pense que changer exit $exit_status
à exit 1
entraînerait le refus de tout bail DHCP...
Essayez-le. S'il fonctionne comme je pense qu'il le devrait, il cassera complètement le client DHCP mais devrait générer un DHCPDECLINE à chaque fois que vous exécutez le programme. dhclient .
0 votes
La plupart des serveurs DHCP enregistrent déjà les réponses de refus.
0 votes
J'ai une application sniffer séparée, qui recherche les requêtes dhcp.