Comment puis-je afficher les anciens noms eth0 et également renommer les interfaces réseau dans Debian 9 Stretch?


12

Je voudrais faire 2 choses:

1) Rétablissez les interfaces avec l'ancien nom classique: eth0 au lieu de ens33.

2) Renommez les interfaces comme je le souhaite pour que par exemple je puisse appeler l'interface eth0 comme wan0 ou affecter eth1, eth2 et ainsi de suite l'adresse mac que je veux.

Réponses:


21

En supposant que vous venez d'installer votre extension Debian 9.

1) Pour rétablir les anciens noms des interfaces, procédez comme suit:

nano /etc/default/grub

modifier la ligne GRUB_CMDLINE_LINUX=""enGRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

puis lancez un grub-mkconfig pour appliquer les modifications à l'intérieur du chargeur de démarrage

grub-mkconfig -o /boot/grub/grub.cfg

Vous avez besoin d'un redémarrage après cela.


2) Pour renommer les interfaces, utilisez:

  • Pour une modification temporaire, jetez un œil à la réponse @xhienne.

  • Pour une modification permanente:

Commencez par créer / modifier le fichier /etc/udev/rules.d/70-persistent-net.rules .

nano /etc/udev/rules.d/70-persistent-net.rules

Et insérez des lignes intérieures comme:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# interface with MAC address "00:0c:30:50:48:ab" will be assigned "eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:ab", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

Si vous voulez assigner par exemple un nom comme wan0 à eth0 vous pouvez utiliser étant donné mon exemple:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="wan0"

Après le prochain redémarrage ou en utilisant le redémarrage du réseau de service, vous devriez voir les modifications appliquées.


EXTRA: N'oubliez pas qu'après toutes ces modifications, vous devez modifier votre fichier / etc / network / interfaces en remplaçant les anciens noms d'interfaces par les nouveaux!


EXTRA: Si vous voulez savoir quelle adresse MAC vos interfaces ont, faites simplement un

ip addr show

et regardez sous le lien / section.


Où trouver ces informations dans la documentation officielle de Linux?
vfclists

5

Pour la question 1), voir la réponse de user3450548 . Pour la question 2), vous pouvez donner n'importe quel nom à une interface avec iproute2:

ip link set ens33 down           # Else you will get "Device or resource busy"
ip link set ens33 name eth0

1
Oh bien, mais ce n'est pas seulement un changement temporaire jusqu'au prochain redémarrage?
user3450548

Oui. Bien sûr, vous pouvez l'ajouter dans un script de démarrage, mais votre réponse est meilleure si vous voulez quelque chose de permanent. Je n'ai pas remarqué que vous répondiez à votre propre question (vous pouvez alors l'accepter) et j'ai ajouté ceci si vous (ou quelqu'un d'autre) souhaitez un changement de nom temporaire à des fins de test.
xhienne

Merci, c'est un bon complément, je pointerai également la solution temporaire à votre réponse :)
user3450548

0

Créer le fichier ci-dessous s'il n'y en a pas

nano /etc/udev/rules.d/70-persistent-net.rules

ajouter sous la ligne

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
# KERNEL=="enp3s0" is debians current interface name
# NAME="eth0" is a new ethernet interface name
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="enp3s0", NAME="eth0"

0

J'ai trouvé un moyen très simple en changeant uniquement /etc/network/interfaces:

rename enp3s0=wan0

Puis

service networking restart

pour redémarrer le service réseau.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.