개발자 M-Abozaid가 GitHub에 공개한 ‘esp32-c3-adblock’ 프로젝트는 Pi-hole과 유사한 DNS 기반 광고 차단 기능을 초저가 하드웨어로 구현한 사례입니다. 이 프로젝트의 가장 큰 특징은 약 2달러 수준의 ESP32-C3 마이크로컨트롤러를 사용한다는 점이며, 별도의 PSRAM 확장 없이 내장 플래시 메모리만으로 동작하도록 설계되었습니다.

기술적 구조를 살펴보면 537,000개의 차단 대상 도메인 목록이 40비트 FNV-1a 해시 값으로 변환되어 플래시에 저장됩니다. 요청된 도메인의 해시를 계산한 뒤 이진 탐색(Binary Search) 방식으로 저장된 목록과 비교하여 차단 여부를 판단합니다. UDP 프로토콜을 이용한 DNS 싱크홀 기법을 적용했으며, 웹 대시보드를 통해 상태를 모니터링할 수 있는 인터페이스도 포함하고 있습니다.

Hacker News에는 해당 프로젝트가 소개되어 151점의 점수와 60개의 댓글을 기록했습니다. 커뮤니티 반응 중 일부는 해시 충돌 문제를 지적했습니다. 두 개의 차단 대상 도메인이 같은 해시를 갖는 것은 문제가 되지 않지만, 허용된 정상 도메인과 차단 대상 도메인의 해시가 겹치는 ‘오탐(False Positive)’ 가능성은 고려해야 한다는 의견이 제시되었습니다.

이에 대해 프로젝트 저자는 웹 대시보드와 API를 통해 특정 도메인을 예외 처리할 수 있는 기능을 제공한다고 설명했습니다.

또 다른 사용자들은 ESP32-C3의 기본 내장 안테나 성능이 약하다는 점을 언급하며, 외부 안테나 연결이 가능한 변형 모델을 사용할 것을 권장하기도 했습니다. 기존 Pi-hole 사용자가 수백만 개에서 천만 개 이상의 방대한 차단 목록을 관리하는 것과 달리, 이 프로젝트는 제한된 메모리 환경에서 핵심적인 광고 도메인만을 선별해 효율성을 높이는 데 초점을 맞췄습니다.

현재까지 확인된 바로는 Bloom Filter 등 다른 확률적 데이터 구조를 활용해 더 많은 도메인을 수용하거나, 화이트리스트 방식을 적용하는 것에 대한 논의가 진행 중입니다. 다만 이러한 개선 사항들이 공식 릴리스에 반영되었는지는 추가 확인이 필요합니다. 하드웨어 사양과 소프트웨어 최적화 사이의 균형이 향후 유지보수 방향을 결정짓는 주요 변수로 남아 있습니다.