1 votes

Toutes les adresses attribuées statiquement, mais dhcpcd fonctionne toujours?

J'ai une machine virtuelle (sur ESXi 5.1.0) exécutant Debian Wheezy (7.0).

eth0 a une adresse assignée de manière statique. eth1 était attribuée en DHCP, et maintenant je veux la rendre statique.

Voici mon ancien /etc/network/interfaces:

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, consultez interfaces(5).

# L'interface réseau de bouclage
auto lo eth0 eth1
iface lo inet loopback

# L'interface réseau principale
allow-hotplug eth0 eth1
iface eth0 inet static
 address 10.2.1.77
 broadcast 10.2.1.255
 netmask 255.255.255.0
 pointopoint 10.2.1.1

iface eth1 inet dhcp

Et voici mon nouveau /etc/network/interfaces:

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# et comment les activer. Pour plus d'informations, consultez interfaces(5).

# L'interface réseau de bouclage
auto lo eth0 eth1
iface lo inet loopback

# L'interface réseau principale
allow-hotplug eth0 eth1
iface eth0 inet static
 address 10.2.1.77
 broadcast 10.2.1.255
 netmask 255.255.255.0
 pointopoint 10.2.1.1

iface eth1 inet static
        address 10.1.0.254
        netmask 255.255.255.0
        gateway 10.1.0.1
        dns-nameservers 8.8.8.8

Quand je redémarre, je vois dhcpcd essayer de renouveler mon bail pour mon ancienne adresse attribuée en DHCP, et réussir. Et puis il écrase /etc/resolv.conf, qui devrait contenir 8.8.8.8 mais ne le fait pas. Cependant, eth1 a bien l'adresse correcte (statique).

Qu'est-ce que je fais de travers ici? Je ne veux pas désactiver dhcpcd complètement. Dans un avenir proche, je pourrais remettre eth1 en DHCP, ou ajouter une troisième interface attribuée en DHCP.

2voto

Kruug Points 5162

Exécutez (en tant que root) :

update-rc.d -f dhcpd remove

Si vous souhaitez le réactiver à l'avenir,

update-rc.d dhcpd defaults

REMARQUE : Le retirer de rc.d le désactivera sur toutes les interfaces. Le restaurer l'activera sur toutes les interfaces.

0 votes

Alors, ce sont toutes les interfaces ou pas d'interfaces? Existe-t-il un moyen d'utiliser un client DHCP alternatif?

0 votes

Autant que je sache, oui. Je ne connais pas beaucoup Linux, malheureusement.

0 votes

Donc j'utilisais le paquet dhcpcd5. Il semble qu'il y ait beaucoup d'alternatives : dhcpcd, udhcpc, isc-dhcp-client et pump en font partie.

2voto

Ariffer Points 41

Si vous utilisez dhcpcd (le démon client, la plupart des gens ici le confondent avec DHCP et DHCPd qui est différent), ajoutez ensuite le texte suivant en bas de /etc/dhcpcd.conf

static
interface eth0
static ip_address=172.16.0.5/24
static routers=172.16.0.1
static domain_name_servers=8.8.8.8

N'oubliez pas de remplacer les informations IP avec les détails de votre réseau.

0 votes

Cela m'a aidé à me rappeler que je devais faire la même chose sur le wlan0 sur mon Raspberry Pi lorsque je voulais passer à une adresse IP manuelle/statique sur Raspbian Jessie, qui exécute DHCPd par défaut. Pas besoin de le désinstaller complètement tant que vous configurez correctement /etc/dhcpcd.conf.

2voto

Willyum2n Points 21

La page de manuel de dhcpcd nous dit :

denyinterfaces modèle

         Lors de la découverte des interfaces, le nom de l'interface ne doit pas correspondre au
         motif qui est une liste de motifs séparés par des espaces ou des virgules
         passés à fnmatch(3).

Pour empêcher dhcpcd d'opérer sur une ou plusieurs interfaces, vous pouvez lui demander de laisser l'interface tranquille en ajoutant une ligne à /etc/dhcpcd.conf.

dans le cas des OPs, cela serait :

denyinterfaces eth0

Cela devrait empêcher dhcpcd de vous embêter sur cette interface spécifique tout en laissant dhcpcd activé. Cela vous permet également de conserver votre configuration d'interface dans /etc/network/interfaces. L'autre option est d'utiliser ce qu'Ariffer a suggéré (utiliser /etc/dhcpcd.conf pour votre configuration au lieu de /etc/network/interfaces.)

0voto

Colton Points 1093

Vous pourriez désactiver le service. https://serverfault.com/questions/32438/disable-a-service-from-starting-at-all-runlevels

La méthode préférée serait de mettre à jour le fichier /etc/sysconfig/network-scripts/ifcfg-* pour le périphérique en supprimant la ligne dhcp (ou en la modifiant en false)

Malheureusement, je ne suis pas devant ma machine Linux en ce moment, donc je ne peux pas vous fournir la configuration exacte.

1 votes

Malheureusement, /etc/sysconfig n'existe pas sur Debian. Ou du moins, pas sur mon installation.

0 votes

Je devrais également mentionner que faire les deux ne causera aucun dommage, sauf si vous prévoyez d'ajouter une carte réseau qui utilisera le protocole DHCP.

0 votes

Mes excuses. Je n'ai jamais rencontré ce problème que lors de l'utilisation de Network Manager en ligne de commande. Après une rapide recherche sur Google, il semble que ces fichiers fassent partie de la configuration de NetworkManager contrairement à ce que vous utilisez.

0voto

craig65535 Points 309

Ceci est causé par une limitation dans dhcpcd5 - il active DHCP sur toutes les interfaces (tout ou rien). J'ai corrigé cela en passant à isc-dhcp-client qui est plus flexible.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X