
Relacionado con:
- Debian 12: de repente, a mi adaptador Lan USB3 se le asigna una dirección Mac aleatoria en cada reinicio
- Utilice el atributo principal "serial" en la configuración de UDEV para asignar otro nombre a la interfaz LAN en lugar de depender de la dirección MAC
El problema con la segunda solución proporcionada es que algunas NIC USB3 comparten lo mismo por algunas razones extrañas.ATTR{serie}Entonces mi último recurso para cambiar el nombre de estas interfaces es la ruta USB.
Debido a que estas NIC conectadas siempre están en la misma posición y colocadas en un concentrador USB3, creo que podría ser útil usar la ruta USB para identificar y cambiar el nombre de las interfaces.
lsusb
dice:
...
Bus 002 Device 006: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 005: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 010: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 009: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 008: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 007: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
...
Lamentablemente, como siempre, las cosas que deberían ser intuitivas no funcionan como se esperaba.
Descubrí que todas mis interfaces están en el bus 2 y tienen variosdevnumde 5 a 10
Entonces lo intenté con comandos como este:
SUBSYSTEM="net", ACTION="add", DRIVERS="?*", ATTRS{busnum}="2", ATTRS{devnum}="5", ATTR{dev_id}="0x0", ATTR{type}="1", KERNEL="eth*", NAME="lan1"
Pero no funciona.
También con esto usando elGRANOSruta en un dispositivo que dice estar en KERNELS="2-3:1.0":
SUBSYSTEM="net", ACTION="add", DRIVERS="?*", KERNELS="2-3:1.0", ATTR{dev_id}="0x0", ATTR{type}="1", KERNEL="eth*", NAME="lan1"
Pero nada, las interfaces no se renombran...
¿Por qué estas reglas no funcionan?
Respuesta1
Encontré el problema. Era un error de sintaxis como lo indicó @AB. Básicamente, estaba usando = en lugar de == que se usaba para asignar valores en lugar de leer y comparar el contenido.
Al usar == como operador, todo funciona bien.