Différences entre versions de « Ifcfg-ethX »

De The Linux Craftsman
Aller à la navigation Aller à la recherche
 
(9 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 3 : Ligne 3 :
 
Tout ce passe dans le dossier ''/etc/sysconfig/network-scripts''
 
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 commence tous par ''ifcfg-X''
+
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 !
 
Remplacez ''X'' par le nom de l'interface réseau et, si le fichier n'existe pas, il suffit de le créer !
Ligne 13 : Ligne 13 :
 
<pre>
 
<pre>
 
DEVICE=eth0
 
DEVICE=eth0
 +
HWADDR=DE:B4:49:A5:3A:07
 
TYPE=Ethernet
 
TYPE=Ethernet
 
ONBOOT=yes
 
ONBOOT=yes
 
NM_CONTROLLED=yes
 
NM_CONTROLLED=yes
 
BOOTPROTO=dhcp
 
BOOTPROTO=dhcp
 +
PEERDNS=no
 +
DOMAIN="tala-informatique.fr labo.tala-informatique.fr"
 
</pre>
 
</pre>
  
Ligne 22 : Ligne 25 :
 
* TYPE &rarr; précise le type de périphérique, peut prendre les valeurs [Ethernet|Bridge|Vlan]
 
* TYPE &rarr; précise le type de périphérique, peut prendre les valeurs [Ethernet|Bridge|Vlan]
 
* ONBOOT &rarr; indique si l'interface doit démarrer au démarrage de la machine
 
* ONBOOT &rarr; indique si l'interface doit démarrer au démarrage de la machine
* NM_CONTROLLED &rarr; précise si le Network Manager doit controller cette interface (en général oui)
+
* NM_CONTROLLED &rarr; précise si le Network Manager doit contrôler cette interface (en général oui)
 
* BOOTPROTO &rarr; indique le type de démarrage de l'interface, peut prendre les valeurs [dhcp|static|none]
 
* BOOTPROTO &rarr; 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 28 : Ligne 31 :
 
*** NETMASK &rarr; pour le masque de sous-réseau
 
*** NETMASK &rarr; pour le masque de sous-réseau
 
*** GATEWAY &rarr; pour spécifier, le cas échéant, une passerelle
 
*** GATEWAY &rarr; pour spécifier, le cas échéant, une passerelle
 +
* DNS1 &rarr; permet de spécifier un serveur DNS primaire
 +
* DNS2 &rarr; permet de spécifier un serveur DNS secondaire
 +
*PEERDNS &rarr; précise si les ''DNS'' fournis en DHCP sur cette interface doivent être ajoutés au fichier ''/etc/resolv.conf''
 +
*MACADDR &rarr; permet de spécifier une adresse ''MAC'' à utiliser, particulièrement pratique pour les déplacement de VMs, ou pour les baux ''DHCP'' statiques.
 +
*DOMAIN &rarr; permet de spécifier autant de domaine de recherche qui seront ajouté au fichier ''/etc/resolv.conf''
 +
*MTU &rarr; permet de modifier la taille du payload (Maximum Transmission Unit) avant fragmentation. Permet d'activer les ''Jumbo Frame'' pour baisser l'utilisation du CPU dans les réseaux ''Gigabit''.
  
= 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...
Ligne 50 : Ligne 59 :
 
</pre>
 
</pre>
  
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'':
+
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'':
 
<pre>
 
<pre>
 
# This file was automatically generated by the /lib/udev/write_net_rules
 
# This file was automatically generated by the /lib/udev/write_net_rules

Version actuelle datée du 4 février 2017 à 10:42

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
  • 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
  • MTU → permet de modifier la taille du payload (Maximum Transmission Unit) avant fragmentation. Permet d'activer les Jumbo Frame pour baisser l'utilisation du CPU dans les réseaux Gigabit.

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.