Computer >> 컴퓨터 >  >> 소프트웨어 >> 소프트웨어

호스트 파일(Hosts File)로 윈도우에서 웹사이트 차단하는 방법 완벽 가이드

웹사이트 차단 방법을 알아야 하는 이유는 다양합니다. 자녀가 인터넷에서 유해한 콘텐츠에 노출되지 않도록 보호하고 싶을 수도 있고, 유튜브나 SNS처럼 집중력을 떨어뜨리는 사이트를 차단해 미루기 습관을 없애고 싶을 수도 있습니다. 또는 광고에 숨어 있는 추적 사이트를 막는 용도로도 활용할 수 있습니다.


이유가 무엇이든, 윈도우에서는 '호스트 파일(hosts file)'이라는 것만 사용하면 간단하게 웹사이트를 차단할 수 있습니다.


아래 내용은 윈도우 시스템 파일을 다뤄본 적이 없는 분들에게는 다소 기술적으로 느껴질 수 있습니다. 핵심만 빠르게 훑어보고 싶다면, 먼저 짧고 이해하기 쉬운 영상 가이드를 확인해 보는 것도 좋은 방법입니다.

호스트 파일이란 무엇인가?

DNS(Domain Name System, 도메인 네임 시스템)라는 용어를 들어본 적이 있을 것입니다. DNS는 인터넷 전역에 분산된 시스템으로, helpdeskgeek.com 같은 도메인 이름을 실제 IP 주소(예: 13.225.198.106)로 변환해 주는 역할을 합니다. 덕분에 컴퓨터는 특정 사이트에 접속할 때 어떤 서버와 통신해야 하는지 알 수 있습니다.


DNS가 등장하기 전인 1984년 이전에는 이 작업을 컴퓨터의 로컬 파일, 즉 호스트 파일을 통해 처리했습니다. 당시에는 컴퓨터끼리 서로 연결된 경우가 많지 않아, 최대 몇십 대 정도의 연결 정보를 하나의 일반 텍스트 파일에 담기에 충분했기 때문입니다. 그렇게 태어난 호스트 파일은 지금까지도 그 역할을 이어오고 있습니다.

호스트 파일은 어떻게 작동하나?

호스트 파일을 사용하면 컴퓨터가 localhost 같은 컴퓨터 이름이나 helpdeskgeek.com 같은 도메인 이름을 조회할 때, 파일 안에서 이름 옆에 적힌 IP 주소를 바로 참조합니다. 마치 휴대폰 연락처에 친구 이름과 전화번호가 함께 저장되어 있어, 번호를 외우거나 직접 입력할 필요 없이 이름만 찾으면 되는 것과 비슷합니다.


본격적으로 들어가기 전에 알아두어야 할 중요한 사실이 있습니다. 일부 IP 주소는 로컬 용도로 예약되어 있다는 점입니다. 즉, 이런 주소는 내 컴퓨터와 바로 연결된 네트워크 안의 기기를 가리키는 데만 사용할 수 있으며, 인터넷으로 나가는 통신에는 쓸 수 없습니다.


예를 들어 IP 주소 127.0.0.1은 항상 '지금 사용 중인 컴퓨터 자신', 즉 localhost를 의미합니다. 웹 브라우저 주소창에 직접 입력해 보면 대개 빈 페이지가 나타나는 것을 확인할 수 있습니다.


또 하나 기억할 점은 www.website.comwebsite.com이 완전히 같은 것은 아니라는 점입니다. 두 주소가 같은 사이트로 연결되려면 둘 다 동일한 IP 주소로 변환되어야 합니다.

호스트 파일로 웹사이트 차단하기

이제 실제로 웹사이트를 차단하는 방법을 단계별로 살펴보겠습니다. 여기서는 페이스북을 차단하는 예시를 사용합니다.

  1. 메모장(Notepad)관리자 권한으로 실행합니다.
  2. 파일 > 열기를 클릭합니다.
  3. C:\Windows\System32\Drivers\etc 경로로 이동합니다.
  4. 해당 폴더에 도착하면 파일 형식을 텍스트 문서(*.txt)에서 모든 파일(*.*)로 변경합니다.
  5. 이제 hosts 파일이 보일 것입니다. 이 파일을 엽니다.
  6. 파일의 마지막 줄로 이동한 뒤, 새로운 줄을 추가합니다. 예를 들어 페이스북을 차단한다고 가정해 보겠습니다.

localhost IP인 127.0.0.1을 입력하고, Tab 키를 누른 다음 facebook.com을 입력합니다. Enter 키를 눌러 다음 줄로 이동한 후, 같은 형식으로 한 줄을 더 추가하되 이번에는 www.facebook.com을 입력합니다.

웹사이트가 정말 차단되었는지 확인하기

명령 프롬프트를 열어 ping facebook.com을 실행한 뒤, 이어서 ping www.facebook.com도 실행해 보세요. 핑을 시도하는 IP 주소가 127.0.0.1로 표시되면 정상적으로 차단된 것입니다.


이제 웹 브라우저를 열고 facebook.com에 접속해 보세요. 그런데 여전히 페이지가 열릴 수도 있습니다. 왜 그럴까요? 페이스북의 실제 IP 주소가 아직 브라우저 캐시에 남아 있고, 브라우저는 그 IP를 먼저 사용하기 때문입니다. 브라우저 캐시를 삭제한 후 다시 페이스북에 접속하면, 이제는 오류 페이지가 표시될 것입니다.

오류 페이지가 보기 싫다면

해당 사이트를 다른 IP 주소로 리디렉션하는 방법을 시도해 볼 수도 있지만, 요즘은 이 방법이 잘 작동하지 않습니다. 과거에는 호스트 파일을 악의적으로 수정하는 것이 해커들의 흔한 공격 수법이었기 때문에, 현재 웹 브라우저들은 이런 공격을 막기 위해 인증서를 철저히 검사합니다. 그래도 시도해 볼 가치는 있습니다.


오류 페이지 대신 다른 화면을 보고 싶다면, 컴퓨터에 웹 서버를 설치·구성하고 호스트 파일이 그 서버를 가리키도록 설정하는 방법도 있습니다. 예를 들어 "일 하러 가자!"라는 문구를 표시하거나, 자신의 목표 목록을 보여줘서 SNS 사용을 자제하도록 동기 부여하는 페이지를 만들 수 있습니다.

호스트 파일로 할 수 있는 다른 활용법

같은 방식으로 각종 악성코드 사이트나 추적 광고 사이트의 URL을 붙여 넣어 차단할 수도 있습니다. 이미 만들어진 악성코드·광고 사이트 호스트 파일 목록이 공개되어 있으니, 이를 복사해 자신의 호스트 파일에 붙여 넣기만 하면 됩니다. 참고로 이 목록은 글 작성 시점 기준 2020년 3월에 마지막으로 업데이트되었습니다.