Différences entre versions de « Ifcfg-ethX »

De The Linux Craftsman
Aller à la navigation Aller à la recherche
m (typo)
m (typos)
Ligne 22 : Ligne 22 :
 
* TYPE → précise le type de périphérique, peut prendre les valeurs [Ethernet|Bridge|Vlan]
 
* 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
 
* ONBOOT → indique si l'interface doit démarrer au démarrage de la machine
* NM_CONTROLLED → précise si le Network Manager doit controller cette interface (en général oui)
+
* 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]
 
* 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:
 
** Si la valeur ''static'' est utilisée, il faudra également les paramètres suivants:
Ligne 29 : Ligne 29 :
 
*** GATEWAY → pour spécifier, le cas échéant, une passerelle
 
*** GATEWAY → pour spécifier, le cas échéant, une passerelle
  
= Que faire si ma carte n'as pas le bon numéro ?? =
+
= 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...
 
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...

Version du 30 décembre 2013 à 16:54

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
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
  • 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

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.