Ifcfg-ethX
Principe
Tout ce passe dans le dossier /etc/sysconfig/network-scripts
Dans ce répertoire il y a plusieurs fichiers et notamment les fichiers de configuration des interfaces réseaux qui commencent tous par ifcfg-X
Remplacez X par le nom de l'interface réseau et, si le fichier n'existe pas, il suffit de le créer !
Exemple
Prenons comme exemple eth0. Son fichier de configuration sera ifcfg-eth0
DEVICE=eth0 HWADDR=DE:B4:49:A5:3A:07 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp PEERDNS=no DOMAIN="tala-informatique.fr labo.tala-informatique.fr"
- DEVICE → indique le nom de l'interface
- TYPE → précise le type de périphérique, peut prendre les valeurs [Ethernet|Bridge|Vlan]
- ONBOOT → indique si l'interface doit démarrer au démarrage de la machine
- NM_CONTROLLED → précise si le Network Manager doit contrôler cette interface (en général oui)
- BOOTPROTO → indique le type de démarrage de l'interface, peut prendre les valeurs [dhcp|static|none]
- Si la valeur static est utilisée, il faudra également les paramètres suivants:
- IPADDR → pour l'adresse IP
- NETMASK → pour le masque de sous-réseau
- GATEWAY → pour spécifier, le cas échéant, une passerelle
- Si la valeur static est utilisée, il faudra également les paramètres suivants:
- DNS1 → permet de spécifier un serveur DNS primaire
- DNS2 → permet de spécifier un serveur DNS secondaire
- PEERDNS → précise si les DNS fournis en DHCP sur cette interface doivent être ajoutés au fichier /etc/resolv.conf
- MACADDR → permet de spécifier une adresse MAC à utiliser, particulièrement pratique pour les déplacement de VMs, ou pour les baux DHCP statiques.
- DOMAIN → permet de spécifier autant de domaine de recherche qui seront ajouté au fichier /etc/resolv.conf
Que faire si ma carte n'a pas le bon numéro ??
Lorsque l'on ajoute / enlève une carte réseau, le noyau incrémente le numéro de celle-ci. Par exemple, on avait eth0 et puis on se retrouve avec eth1...
C'est UDEV qui, à chaque fois que l'on insère une carte réseau avec une adresse MAC différente, change de numéro.
On peut modifier cela dans le fichier /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules # program, run by the persistent-net-generator.rules rules file. # # You can modify it, as long as you keep each rule on a single # line, and change only the value of the NAME= key. # PCI device 0x1022:0x2000 (pcnet32) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:f7:cf:de", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" # PCI device 0x1022:0x2000 (pcnet32) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:e6:c5:aa", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
Il suffit de supprimer la première ligne qui fait référence à l'ancienne carte et, de décrémenter le numéro de la deuxième ligne pour que eth1 devienne eth0:
# This file was automatically generated by the /lib/udev/write_net_rules # program, run by the persistent-net-generator.rules rules file. # # You can modify it, as long as you keep each rule on a single # line, and change only the value of the NAME= key. # PCI device 0x1022:0x2000 (pcnet32) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:e6:c5:aa", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Pour que les modifications soient effectives, il faut redémarrer le système.