« LINUX:Renommage du nom de l'interface réseau » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 42 : | Ligne 42 : | ||
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 | ||
---- | ---- | ||
Le but est de | Le nom des interfaces et leur adresse MAC sont mises en gras. | ||
Le but est de renommer le nom de l'interface réseau ("interface-name"): | |||
* enp0s25 deviendra eth1 | * enp0s25 deviendra eth1 | ||
* enp4s0 deviendra eth2 | * enp4s0 deviendra eth2 | ||
Nous utilisons maintenant NetworkManager. La configuration de ces cartes réseaux se trouvent dans le répertoire "'''/etc/NetworkManager/system-connections'''". Dans ce répertoire, nous y retrouvons deux fichiers, un par interface réseau dont voici leur contenu: | Nous utilisons maintenant NetworkManager. La configuration de ces cartes réseaux se trouvent dans le répertoire "'''/etc/NetworkManager/system-connections'''". Dans ce répertoire, nous y retrouvons deux fichiers, un par interface réseau dont voici leur contenu: | ||
Ligne 54 : | Ligne 57 : | ||
type=ethernet | type=ethernet | ||
autoconnect-priority=-999 | autoconnect-priority=-999 | ||
interface-name= | '''interface-name=enp0s25''' | ||
timestamp=1673904860 | timestamp=1673904860 | ||
| | ||
Ligne 72 : | Ligne 75 : | ||
[proxy] | [proxy] | ||
---- | ---- | ||
* "enp4s0.nmconnection" | * "enp4s0.nmconnection" | ||
---- | ---- | ||
Ligne 78 : | Ligne 82 : | ||
uuid=f9fe5eaf-e746-497b-bb75-cf6215560794 | uuid=f9fe5eaf-e746-497b-bb75-cf6215560794 | ||
type=ethernet | type=ethernet | ||
interface-name= | '''interface-name=enp4s0''' | ||
timestamp=1673954652 | timestamp=1673954652 | ||
| |
Version du 4 février 2023 à 19:24
→ retour aux Notions de réseau
But
Le nommage d'un interface réseau se base sur le type de matériel et sa situation relative matérielle. Dans certains cas, il est souhaitable de le renommer dans un soucis uniformisation.
J'ai rencontré cette nécessité dans les approches de FailOver et de LoadBalancing. Dans ces configurations, le matériel est au minimum dupliqué et certains paramètres de configurations doivent être identiques de part et d'autre. Ce soucis peut aussi porter sur une plus grande standardisation.
Situation initiale
Nous avons une machine comportant deux interfaces réseaux.
Nous pouvons avoir une vue avec la commande:
ifconfig
qui donne par exemple:
enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.71 netmask 255.255.255.0 broadcast 192.168.1.255 ether 00:1c:c0:92:a2:08 txqueuelen 1000 (Ethernet) RX packets 244890 bytes 44210599 (42.1 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 300043 bytes 73055221 (69.6 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 20 memory 0xd3300000-d3320000
enp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.2.71 netmask 255.255.255.0 broadcast 192.168.2.255 ether 00:1b:21:3b:b6:ea txqueuelen 1000 (Ethernet) RX packets 2578 bytes 215585 (210.5 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5064 bytes 379577 (370.6 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Boucle locale) RX packets 764 bytes 231198 (225.7 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 764 bytes 231198 (225.7 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Le nom des interfaces et leur adresse MAC sont mises en gras.
Le but est de renommer le nom de l'interface réseau ("interface-name"):
- enp0s25 deviendra eth1
- enp4s0 deviendra eth2
Nous utilisons maintenant NetworkManager. La configuration de ces cartes réseaux se trouvent dans le répertoire "/etc/NetworkManager/system-connections". Dans ce répertoire, nous y retrouvons deux fichiers, un par interface réseau dont voici leur contenu:
- "enp0s25.nmconnection"
[connection] id=enp0s25 uuid=fe6dcd15-bfbb-366e-8cfe-a8f51c4420bb type=ethernet autoconnect-priority=-999 interface-name=enp0s25 timestamp=1673904860 [ethernet] [ipv4] address1=192.168.1.71/24,192.168.1.1 dns=192.168.1.1; dns-search=home.dom; may-fail=false method=manual [ipv6] addr-gen-mode=eui64 method=disabled [proxy]
- "enp4s0.nmconnection"
[connection] id=enp4s0 uuid=f9fe5eaf-e746-497b-bb75-cf6215560794 type=ethernet interface-name=enp4s0 timestamp=1673954652 [ethernet] [ipv4] address1=192.168.2.71/24 method=manual [ipv6] addr-gen-mode=eui64 method=disabled [proxy]
Il ne suffit pas de modifier l'option "interface-name" pour atteindre notre but.
Il existe deux méthodes présentées ci-dessous.
Modification de la règle de nommage
Au niveau du système, il existe un ensemble de règles qui lors du démarrage de la machine, nomme toute pièce matérielle.
L'approche présentée ici consiste de surcharger ces règles par des règles personnelles qui ont la préséance. Cette manière est ancienne.
Les nouvelles règles sont à mettre dans le répertoire "/etc/udev/rules.d" et pour notre cas, elles doivent être placées dans le fichier "70-custom-ifnames.rules". Une carte réseau est identifiable par son adresse MAC qu'il faut lier à son nouveau nom d'interface mais la syntaxe est stricte.
Voici le contenu de ce fichier pour notre exemple:
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="00:1c:c0:92:a2:08",ATTR{type}=="1",NAME="eth1" SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="00:1b:21:3b:b6:ea",ATTR{type}=="1",NAME="eth2"
→ retour aux Notions de réseau