집 네트워크에 Pi-hole을 설치하고 나니 인터넷이 마치 다른 곳에 있는 것처럼 느껴졌습니다.

이 글을 읽고 계시다면 인터넷은 아마 잘 작동하고 있을 겁니다. 인터넷 패키지에 포함된 모뎀을 사용하고 계실 수도 있고, 직접 공유기를 추가했을 수도 있습니다. 하지만 여러분의 홈 네트워크와 연결된 모든 기기를 완전히 바꿔놓을 수 있는 한 가지 중요한 변화가 있습니다. 그리고 이런 변화들이 늘 그렇듯, 바로 도메인 이름 시스템(DNS)입니다 . 언제나 DNS죠.

집 네트워크에 Pi-hole을 설치하고 나니 인터넷이 마치 다른 곳에 있는 것처럼 느껴졌습니다.

일반적으로 휴대폰, 컴퓨터, 스마트 홈 기기 등 모든 기기는 인터넷 서비스 제공업체(ISP)에서 제공하는 DNS 서버를 사용합니다. 하지만 다른 회사의 DNS 서버를 선택할 수도 있습니다. 구글과 클라우드플레어는 가장 인기 있는 옵션 중 하나이며, ISP 서버보다 속도가 빠르고 안정적인 경우가 많습니다.

하지만 저는 더 많은 제어 권한과 향상된 성능을 원했기에 자체 서버를 구축했습니다. 현재 저희 집 네트워크는 우분투 가상 머신에서 구동되는 두 대의 Pi-hole DNS 서버로 운영되고 있습니다. 이제 그 장점을 경험했으니 다른 사람의 서버는 절대 다시 사용하지 않을 겁니다.

제 네트워크에는 최고의 성능이 필요합니다.

"너무 빠르다"라는 것은 있을 수 없는 일이다.

제 생각에 저희 집 네트워크는 다른 집들보다 훨씬 더 혼잡할 것 같습니다. 재택근무를 하는 저에게는 안정적인 네트워크가 필수적입니다. 하드웨어 측면에서 보면, Netgear 970 시리즈 Wi-Fi 7 Orbi 액세스 포인트로 구성된 메시 시스템은 충분하고도 남습니다. 속도도 엄청나게 빠르고, 액세스 포인트가 세 개나 있어서 숨바꼭질의 달인이라도 와이파이가 안 터지는 곳을 찾기는 어려울 겁니다. 와이파이 걱정은 전혀 없습니다.

하지만 이 오르비 시스템에 연결된 모든 기기는 웹페이지나 온라인 서비스에 접속해야 할 때마다 어떻게 해야 하는지 알아야 합니다. 그리고 저희는 연결된 기기가 상당히 많습니다.

저와 아내는 아이폰 두 대와 애플 워치 두 대를 사용하고 있고, 제 맥북 프로는 거의 항상 집에 있습니다. TV 프로그램도 모두 스트리밍으로 시청하기 때문에 애플 TV가 제 역할을 톡톡히 해내고 있죠. 막내아들은 온라인 수업을 듣기 때문에 노트북도 연결되어 있고, 쉬는 시간에는 아이패드도 사용합니다. 저녁이 되면 게임용 PC와 또 다른 아이폰, 그리고 큰아들 덕분에 애플 워치까지 하나 더 추가됩니다. 게다가 스마트 조명, 스피커, 카메라 등 조용히 마법을 부리는 다른 기기들은 아직 언급조차 하지 않았네요.

이 모든 것 때문에 저희 집 네트워크는 항상 바쁘고, 온 가족이 잠들어 있을 때만 조용합니다. 심지어 그때조차도 컴퓨터 백업이나 업데이트 다운로드가 진행 중이라 네트워크가 비어 있는 시간은 거의 없습니다. 이렇게 활발한 네트워크 환경 속에서 최대한 쾌적한 사용 경험을 제공하고 싶었고, 그래서 Pi-hole을 선택하게 되었습니다.

기기들이 내 네트워크를 사용하는 방식을 더욱 효과적으로 제어할 수 있습니다.

그것은 그 언제나 DNS

Pi-hole 활동을 그래프와 차트 형태로 보여주는 스크린샷입니다.

Pi-hole은 이름에서 알 수 있듯이 원래 저전력 라즈베리 파이 기기에서 실행할 수 있는 경량 DNS 서버로 설계되었습니다. 하지만 실제로는 거의 모든 기기에 설치할 수 있습니다. 어떤 기기에 설치하든 DNS 서버 기능과 함께 유용한 DHCP 서버를 포함한 다양한 선택적 기능을 사용할 수 있습니다.

로컬에 DNS 서버를 호스팅하는 데에는 여러 가지 장점이 있습니다. 첫째, 속도입니다. 기기들이 인터넷상의 서버에 있는 것보다 로컬 서버에 DNS를 요청하는 것이 더 빠릅니다. 하지만 속도 향상의 핵심은 캐싱에 있으며, 바로 이 부분이 판도를 바꾸는 중요한 요소입니다.

기기가 웹사이트에 접속하려고 할 때마다 먼저 DNS 요청을 보냅니다. 하지만 Pi-hole 서버를 사용하면, DNS 응답으로 반환되는 IP 주소가 임시로 저장되어 나중에 사용됩니다. 다음에 같은 사이트에 접속할 때 Pi-hole은 이미 어떤 IP 주소를 보내야 하는지 알고 있습니다. Pi-hole 캐시에 저장된 DNS 항목은 놀라울 정도로 빠르게 처리됩니다. 수십 또는 수백 밀리초가 아닌 몇 마이크로초 만에 처리됩니다.

짧은 시간처럼 보일지 모르지만, 진정한 이점은 전체적인 효과에 있습니다. 기기들이 매일 얼마나 많은 DNS 쿼리를 수행하는지 알게 되면 놀라실 수도 있습니다. 이러한 모든 요청을 고려하면, 몇 밀리초의 시간 절약이 곧 실제 시간 절약으로 이어질 것입니다.

나무 책상 위에 놓인 검은색 넷기어 오르비 공유기

자체 DNS 서버를 호스팅하면 다른 이점도 있습니다. 십대 자녀를 둔 부모로서, 저는 어떤 DNS 쿼리에 대한 응답을 보내고 어떤 쿼리에는 보내지 않을지 직접 제어할 수 있다는 점이 좋습니다. 특정 DNS 요청을 차단함으로써 전체 웹사이트나 애플리케이션에 대한 접근을 사실상 불가능하게 만들 수 있습니다. 이러한 기능이 유용하게 쓰일 수 있는 상황은 쉽게 짐작할 수 있습니다.

같은 방식으로 광고도 차단할 수 있습니다. 웹사이트 광고를 제공하는 서버를 알고 있다면 해당 서버로의 DNS 요청을 차단할 수 있습니다. 기기가 광고를 호스팅하는 서버에 연결할 수 없으면 광고를 로드할 수 없습니다. 다소 과한 방법처럼 느껴질 수도 있지만, 효과는 확실합니다. 무엇보다 중요한 것은, 별도의 설정 없이도 집 네트워크에 연결된 모든 기기에서 이 방법이 작동한다는 점입니다.

여기서 간과해서는 안 될 중요한 개인정보 보호 측면도 있습니다. 스마트 홈 기기로 가득 찬 집과 끊임없이 새로운 기기를 접하게 되는 직업을 가진 저는 이러한 기기들이 무엇을 하고 있는지 알고 싶어 합니다.

값싼 인터넷 연결 기기들이 알 수 없는 서버로 데이터를 전송한다는 끔찍한 이야기나, 로봇 청소기가 바닥 청소를 위해 불필요한 서버에 연결한다는 이야기를 들어보셨을 겁니다 . Pi-hole을 사용하면 이러한 기기들이 어떤 서버에 연결되는지 정확히 확인할 수 있고, 원한다면 해당 연결을 완전히 차단할 수도 있습니다.

Pi-hole(또는 두 개)을 사용하여 문제를 해결하세요.

하나는 아무것도 아니고, 둘은 하나다.

VirtualBox 애플리케이션에 여러 가상 머신이 표시된 스크린샷입니다. 여기에는 두 개의 Pi-hole 인스턴스가 포함되어 있습니다.

제 Pi-hole 설정이 과하다는 건 저도 인정합니다. 대부분의 사람들은 이 정도까지는 필요 없을 거예요. 하지만 혹시 모를 문제를 대비해서 백업 시스템을 구축해두고 싶었습니다.

그래서 저는 Pi-hole 인스턴스를 두 개 실행하고 있는데, 각각 별도의 우분투 가상 머신에서 실행하고 있습니다. 하이퍼바이저로는 VirtualBox를 사용하는데, 주로 구형 인텔 i7 맥 미니(호스트 컴퓨터)와 호환성이 좋기 때문입니다. 32GB RAM을 사용하면 완벽하게 작동합니다.

Pi-hole 인스턴스 두 개가 기본 및 보조 구성으로 작동합니다. 기본 인스턴스에 어떤 이유로든 장애가 발생하면 보조 인스턴스가 자동으로 DNS 요청을 수락하기 시작합니다.

하지만 DHCP는 상황이 다릅니다. DHCP 역할은 기본 Pi-hole 인스턴스에 특화되어 있기 때문입니다. 두 개의 DHCP 서버를 동시에 운영하고 싶지 않으므로, 새로운 IP 주소를 배포하는 장애 조치 솔루션을 찾아야 합니다. 그리고 언젠가는 해결할 것입니다.

라우터에서 DHCP를 처리하도록 설정하면 문제를 완전히 해결할 수 있었지만, 그 방식에도 나름의 문제점이 있습니다. Pi-hole은 라우터가 제공할 수 있는 것보다 훨씬 더 세밀한 DHCP 관리 기능을 제공하기 때문에 현재 상황에 만족합니다.

가상 머신이지만, 실질적인 이점이 있습니다.

어차피 서버 랙이 누가 필요하겠어요?

로그인 화면에 두 개의 가상 우분투 장치가 표시된 스크린샷입니다.

저희 집 네트워크는 거의 1년 동안 이런 방식으로 설정되어 있었는데, 정말 놀라울 정도로 성능이 향상되었습니다. 로컬에 저장된 DNS 응답 덕분에 성능이 정말 환상적입니다. 예를 들어 친구의 Wi-Fi 네트워크를 사용할 때 웹 브라우저가 DNS 응답을 기다리는 동안 발생하는 상당한 지연을 확연히 느낄 수 있었습니다.

Pi-hole 제어판을 열어서 네트워크 활동을 정확하게 확인할 수 있다는 점도 정말 마음에 들어요. 우리 기기들이 어떤 사이트에 접속했는지, 언제 접속했는지까지 알 수 있거든요. 덕분에 큰아들이 자야 할 시간에 게임을 하고 있는 걸 바로 알아챌 수 있었어요. Pi-hole이 항상 지켜보고 있네요!

이제 제 네트워크가 실제로 얼마나 바쁜지 더 잘 이해하게 되었습니다. 지난 24시간 동안 네트워크에 연결된 모든 기기에서 141,934건의 DNS 요청이 발생했습니다. 하지만 이것은 시작에 불과합니다.

이러한 요청 중 29,000건 이상이 차단되었습니다. 이는 전체 DNS 요청의 약 20%에 해당합니다. 차단된 요청 하나하나가 제 아이들이 볼 필요가 없는 광고였을 수도 있고, 아내가 앱을 실행했다는 이유만으로 데이터 브로커에게 전송되지 않도록 막아준 아내의 휴대전화 사용 습관 정보였을 수도 있습니다.

Pi-hole을 사용하기 시작하면…

IT 전문가이든 단순히 실험을 즐기는 사람이든, Pi-hole DNS 서버를 직접 운영해 보는 것을 강력히 추천합니다. 특히 기기가 많거나 웹상의 성가신 광고를 차단하고 싶은 경우에 더욱 그렇습니다. Pi-hole이 모든 것을 차단하지는 못하지만, 훌륭한 시작점이 될 수 있습니다.

그리고 누가 알겠어요, 어쩌면 그가 저처럼 새벽 2시에 아크 레이더스를 하는 사람을 알려줄지도 모르죠.

댓글이 닫혀있다.