Android 이더넷 어댑터의 미스터리: 어리석은 정규 표현식
2025-06-08
이 글에서는 저자가 Android 스마트폰에서 USB 이더넷 어댑터를 사용하려고 시도했지만 실패한 경험을 자세히 설명합니다. 조사 결과, 문제는 드라이버 부족이 아니라 Android의 `EthernetTracker` 서비스가 이더넷 인터페이스 이름을 일치시키는 데 정규 표현식 `eth\d`를 사용하고 있다는 사실이 밝혀졌습니다. CDC 이더넷 어댑터는 `usbX`라는 이름의 인터페이스를 생성하므로 인식되지 않습니다. 저자는 커널 구성을 가져오고 Android 소스 코드를 분석하는 등 디버깅 프로세스를 꼼꼼하게 문서화했습니다. 근본 원인은 무엇일까요? 간단하고 제한적인 정규 표현식입니다. 이 글은 뛰어난 문제 해결 능력을 보여주지만 Android 디자인의 잠재적인 결함도 부각합니다.
개발
USB 이더넷