J'ai rencontré une erreur très étrange sur ubuntu-server (8.04), je n'ai aucune idée pourquoi dhclient n'est pas autorisé à définir les paramètres réseau! Je ne suis pas celui qui a installé le serveur en premier lieu, donc je ne connais pas grand-chose à la configuration. Le serveur n'est utilisé que comme pare-feu / passerelle (script iptables personnalisé), il a trois nic pour Internet, un pour LAN et un pour DMZ. Maintenant, le FAI a changé les paramètres de l'IP statique en IP "statique" assigné via DHCP, et je ne peux pas vraiment l'utiliser.
Malheureusement, je ne peux pas simplement définir l'IP de manière statique, car le FAI ferme ma connexion à la fin du bail DHCP: o
C'est l'erreur que j'obtiens: (et puis ça se bloque juste là ..)
root@fw:~# dhclient eth2
Internet Systems Consortium DHCP Client V3.0.6
Copyright 2004-2007 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFFLAGS: Permission denied
Listening on LPF/eth2/00:50:52:c1:a1:32
Sending on LPF/eth2/00:50:52:c1:a1:32
Sending on Socket/fallback
DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 8
DHCPOFFER of 2.10.56.19 from 93.87.36.42
DHCPREQUEST of 2.10.56.19 on eth2 to 255.255.255.255 port 67
DHCPACK of 2.10.56.19 from 93.87.36.42
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFNETMASK: Permission denied
SIOCSIFBRDADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCADDRT: Operation not permitted
pour l'instant, je l'ai corrigé en exécutant killall dhclient; dhclient eth2
toutes les heures, puis en définissant des paramètres IP statiques pour l'interface, cela suffit pour maintenir la connexion en direct! mais c'est un hack assez moche à mon avis ..
strace -o /tmp/dhc$$ dhclient -d eth2
devrait fournir des informations précieuses sur les appels qui échouent. Oui, je les connais tous, mais voir les arguments peut aider. Je soupçonne une certaine bizarrerie avec le pilote eth2, peut-être que le module n'est pas synchronisé avec le noyau.-1
option et attendez qu'elle se termine d'elle-même.-f
option activée: silenzio.dk/pi/dhc.straceRéponses:
Sur la base de la trace de pile à http://silenzio.dk/pi/dhc.strace la première
SIOCSIFADDR: Permission denied
erreur se produit à la ligne 735, pendant l' exécution du processus 26092:ifconfig eth2 inet 0 up
. Maintenant, seulement quelque choseroot
peutifconfig
remonter, alors traçons la chaîne defork()
/exec()
et recherchons les changements d'UID. Il se trouve que:Par conséquent, les erreurs se produisent car le processus enfant en cours d'exécution n'a pas les privilèges root nécessaires. Pourquoi cela arrive-t-il? Le
debian/changelog
fichier dans lesdhcp3-3.0.6.dfsg
sources dit:Je suppose que celui-ci
call-dhclient-script
a perdu son bit set-UID et ne s'exécute donc pas avec les privilèges root comme il se doit. (Selon ledebian/dhcp3-client.postinst
fichier dans les sources, il devrait appartenir àroot:dhcp
et en mode4754
)la source
chmod u+s /lib/dhcp3-client/call-dhclient-script
a fait l'affaire!Que montre votre sortie "dmesg" lorsque vous exécutez dhclient?
Si vous exécutez Hardy, AppArmor fait partie de l'installation par défaut. Il est possible que le profil dhclient soit devenu détraqué. Vérifiez "sudo aa-status" pour voir ce qui s'y passe.
De plus, comment lit votre fichier / etc / network / interfaces? Peut-être avez-vous des adresses, des itinéraires, etc. en conflit avec lesquels dhclient ne veut pas jouer?
la source
J'essaierais d'installer nscd si ce paquet est manquant, et si cela ne fonctionne pas, installez également libnss-db.
Je ne sais pas si cela résoudra votre problème, cependant, ce sont les choses que votre trace essaie de trouver et cela échoue.
la source
Veuillez exécuter
sudo dpkg --configure -a
juste pour vous assurer que ce n'est pas une répétition de la situation dans https://bugs.launchpad.net/ubuntu/+source/dhcp3/+bug/19740/comments/67la source
dpkg --configure -a
n'a rien fait du tout (aucun paquetage à configurer)Il s'agit en fait d'un bogue dans Ubuntu 8.04. Pour plusieurs cas d'utilisation, vous DEVEZ avoir installé nscd (par exemple lorsque vous utilisez openvpn) ou dhclient ne fonctionnera pas. Cela ne se produit pas dans les nouvelles versions d'Ubuntu.
la source