저는 다양한 소형 NUC를 가지고 있는데 각각 USB3 LAN 어댑터가 연결되어 있습니다(NUC에는 이더넷이 하나만 있기 때문에 USB3 어댑터를 추가했습니다).
제품 사진을 보실 수 있습니다여기.
아마도 무인 자동 업그레이드로 인해 갑자기 이러한 장치가 임의의 MAC 주소를 획득하기 시작합니다.
앞으로:
모든 USB3 연결 장치에는 다음 형식의 주소가 있습니다.
00:0E:C6:XX:XX:XX
각각은 다르며 항상 동일하고(안정적) 재부팅 후에도 지속됩니다.
현재 주소는 다음과 같습니다.
eth1 - be:7d:ee:6a:26:ab
eth2 - be:7d:ee:6a:26:ab
eth3 - be:7d:ee:6a:26:ab
eth4 - be:7d:ee:6a:26:ab
eth5 - be:7d:ee:6a:26:ab
모두 무작위로 선택된 동일한 주소를 공유합니다.
즉, 문제는 다음과 같습니다.
- 이 임의의 MAC 주소는 컴퓨터가 재부팅될 때마다 변경됩니다.
- 그들은 모두 동일한 임의의 MAC 주소를 공유합니다. 이전에는 모든 사람이 서로 다르고 분명히 다른 것을 가지고 있었습니다.
이러한 장치는 다음과 같이 식별됩니다 lsusb
.
AsiaInfo AX88179 기가비트 이더넷
최신 자동 업데이트 이후 무슨 일이 일어났는지 모르겠습니다. 지난 2일 1시간 전에 모든 장치가 이상한 동작을 보이기 시작한 이후 모든 것이 제대로 작동했습니다.
업데이트에 문제가 있을 수 있나요? 새로 출시된 드라이버가 매번 MAC 주소를 무작위로 지정하는 것은 아닐까? USB LAN 장치가 이제 매번 임의의 MAC 주소를 얻는 Linux 커널, 배포판 또는 GRUB 설정의 기능일 수 있습니까? 그런데 이 경우 왜 모두 같은 것을 공유합니까? 완전히 무작위여야 합니다...
도움을 구하고 테스트해보고 싶습니다.
운영 체제 정보:
데비안 버전:12.5
Linux 6.1.0-20-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.85-1 (2024-04-11) x86_64 GNU/Linux
@AB 덕분에 항상 작동하는 마지막 해결 방법을 포함하여 지금까지 제안된 해결 방법은 다음과 같습니다.
답변1
이것6.8 커널 커밋, 6.1.x로 백포트됨:
net: usb: ax88179_178a: 두 번의 연속 장치 재설정 방지
AX88179 기반 NIC에서 이중 재설정을 방지하도록 설계되었지만 NIC에 대한 임의의 MAC 주소를 얻는 부작용이 있습니다.
향후 6.9 커널에 대한 수정이 진행 중입니다.이미 커널 6.1.85 이상으로 백포트되었습니다.이전 질문을 인정합니다.~해야 한다이 문제를 해결하기 위해). 확인 부분은 다음과 같습니다.
net: usb: ax88179_178a: 인터페이스가 항상 임의의 주소로 구성되지 않도록 하세요.
d2689b6a86b9 커밋("net:usb:ax88179_178a: 두 번의 연속 장치 재설정 방지") 이후 연결 작업은 재설정을 수행하지 않으며 현재 장치 레지스터 또는 장치 트리에서 MAC 주소를 읽지 않습니다. 구성에 의해 할당된 MAC 주소는 usbnet_probe의 바인드 작업 후에 검사되어 무작위인지 확인하므로 열기 작업 중에 주소가 올바르게 읽고 설정되더라도 인터페이스는 무작위 주소로 구성된 상태로 유지됩니다(현재 유일한 재설정). .
문제는 데비안 커널 6.1.0-20-amd64가 수정 사항이 포함된 업스트림 커널 6.1.85를 이미 사용하고 있다는 것입니다. OP의 의견으로 판단하면 OP가예커널 6.1.0-20-amd64를 사용합니다.
작동이 보장되는 것은 2024년 2월 5일 패치가 6.1.x로 백포트되기 전의 이전 상태로 돌아가는 것입니다. 현재로서는 이는 두 개의 패치로 되돌리는 것을 의미하는 것으로 보입니다.
이전과 같이 작동하는지 확인하고 당시에는 문제가 되지 않았던 이중 재설정 동작을 복원하십시오.
지난 몇 주 내에 회복되었는지 확인할 수 있습니다.net: usb: ax88179_178a: 두 번의 연속 장치 재설정 방지작동시키기 위해 최신 상태(예: 커널 6.1.85 또는 Debian 6.1.0-20-amd64)가 어떻게 작동하는지 확인하지 않았습니다. OP의 Q/A에서는 첫 번째 패치 이후 발생한 동작을 수정하도록 설계된 두 번째 패치로는 충분하지 않으며 추가 수정 사항을 제공해야 할 수도 있다고 제안합니다.
요약하자면, 오늘날 가능한 옵션은 다음과 같습니다.
- Debian의 6.1.0-18-amd64와 같은 이전 커널을 다음에서 사용할 수 있도록 유지하세요.https://snapshot.debian.org/ 거기:
linux-image-6.1.0-18-amd64
- 이 답변에 언급된 첫 번째 패치를 되돌리고 다시 컴파일하여 6.1.77과 6.1.84 사이에서 커널을 패치했습니다(테스트가 작동함).
- 커널 6.1.85 이상이 작동하는지 확인하세요.
작동하거나(할 일 없음)
아니면 그렇지 않습니다 (OP의 경우)
최소한 첫 번째 패치를 복원하고 다시 컴파일하십시오.
net: usb: ax88179_178a: 인터페이스가 항상 임의의 주소로 구성되지 않도록 하세요.(선택사항, 복원 대신 보관 가능)
net: usb: ax88179_178a: 두 번의 연속 장치 재설정 방지: (이것을 복원해야 합니다)
또는 이 문제가 해결될 향후 패치를 기다리세요.
고쳐 쓰다: 이 제출물은 2024년 4월 18일에 제출되었습니다.
net: usb: ax88179_178a: 처음 읽기 전에 MAC 주소 쓰기 방지
문제가 해결되었습니다(6.8.x 커널에서 테스트했습니다). 이는 아마도 다음 6.1.x 업스트림 커널인 6.1.88에 포함될 것이며 조만간 데비안에서 채택될 것입니다. 보너스: 프로브 시간에 재설정이 재개되는 것으로 보이며 더 이상 인터페이스에 재설정이 없습니다. 결과적으로 이제 다운과 업 사이의 전환 지연 시간이 더 빨라졌습니다.