mac 주소 대신 인터페이스 이름을 할당하려면 udev 규칙에서 usb nic 주소의 usb 경로를 사용하십시오.

mac 주소 대신 인터페이스 이름을 할당하려면 udev 규칙에서 usb nic 주소의 usb 경로를 사용하십시오.

와 연관되다:

두 번째로 제공된 솔루션의 문제점은 일부 USB3 NIC가 이상한 이유로 동일한 내용을 공유한다는 것입니다.ATTR{연속}그래서 이 인터페이스의 이름을 바꾸기 위한 최후의 수단은 USB 경로입니다.

연결된 NIC는 항상 USB3 허브에서 동일한 위치와 위치에 있기 때문에 USB 경로를 사용하여 인터페이스를 식별하고 이름을 바꾸는 것이 유용할 수 있습니다.

lsusb말한다:

...
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
...

슬프게도 항상 직관적이어야 하는 것들이 예상한 대로 작동하지 않습니다.

내 인터페이스가 모두 버스 2에 있고 다양한 인터페이스가 있다는 것을 알았습니다.데브넘5시부터 10시까지

그래서 다음과 같은 명령을 사용해 보았습니다.

SUBSYSTEM="net", ACTION="add", DRIVERS="?*", ATTRS{busnum}="2", ATTRS{devnum}="5", ATTR{dev_id}="0x0", ATTR{type}="1", KERNEL="eth*", NAME="lan1"

하지만 작동하지 않습니다.

또한 이것을 사용하여커널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"

하지만 인터페이스 이름은 바뀌지 않습니다.

왜 이 규칙이 작동하지 않는 걸까요?

답변1

문제를 발견했습니다. @AB가 명시한 구문 오류였습니다. 기본적으로 내용을 읽고 비교하는 대신 값을 할당하는 데 사용되는 == 대신 =를 사용하고 있었습니다.

==를 연산자로 사용하면 모든 것이 잘 작동합니다.

관련 정보