윈도우 기반 PC와 마찬가지로 맥(Mac)에도 인터넷상의 웹사이트에 접속하는 방식을 제어하는 'hosts' 파일이 내장되어 있습니다. 이 파일에는 도메인 이름과 IP 주소의 대응 정보가 기록되어 있으며, 다양한 목적으로 활용할 수 있습니다.
맥에서 호스트 파일을 편집하고 싶어지는 대표적인 이유는 크게 두 가지입니다. 첫 번째는 특정 웹사이트에 대한 접근을 차단하는 것입니다. 별도의 프로그램 설치 없이 원하는 사이트를 차단할 수 있는 효과적인 방법입니다. 두 번째는 자신이 만든 웹사이트를 실제 서버에 올리기 전에 로컬 환경에서 테스트하는 것입니다. 호스트 파일을 이용하면 특정 도메인을 로컬 저장소의 경로로 연결할 수 있습니다.
맥 호스트 파일 위치
호스트 파일을 잘못 수정하면 시스템 전체에 문제가 생길 수 있기 때문에, Apple은 의도적으로 이 파일을 시스템의 개인 폴더 안에 배치해 두었습니다. 이는 관련 지식이 없는 사용자가 임의로 파일을 수정해 시스템에 손상을 주는 것을 방지하기 위함입니다.
호스트 파일의 경로는 /etc/hosts/이며, 터미널(Terminal) 창을 통해 접근할 수 있습니다.
맥에서 호스트 파일 편집하기
맥에는 터미널 안에 nano 에디터라는 기본 텍스트 편집기가 포함되어 있어, 별도의 프로그램 설치 없이도 호스트 파일을 손쉽게 열고 수정할 수 있습니다. nano 에디터는 호스트 파일을 비롯한 모든 텍스트 파일을 편집할 수 있는 도구입니다.
아래 과정을 진행하기 전에 반드시 관리자(admin) 계정으로 로그인했는지 확인하세요.
- Dock에서 런치패드(Launchpad)를 클릭하고 터미널(Terminal)을 검색한 뒤 실행합니다.
- 터미널에 아래 명령어를 입력하고 Enter 키를 누릅니다. 그러면 nano 에디터로 호스트 파일이 열립니다.
sudo nano /etc/hosts - sudo 명령이므로 관리자 암호를 입력하라는 메시지가 나타납니다. 암호를 입력하고 계속 진행하세요.
- 화면에 호스트 파일이 열리면 바로 편집을 시작할 수 있습니다.
맥 호스트 파일 구조 이해하기
호스트 파일을 처음 편집해 보는 분이라면 파일 내용이 다소 복잡하게 느껴질 수 있습니다. 하지만 실제 구조는 생각보다 훨씬 간단합니다.
파일에서 가장 먼저 눈에 띄는 항목은 127.0.0.1 localhost입니다.
앞부분의 숫자는 맥의 로컬 IP 주소를 의미하고, 뒷부분의 호스트 이름(host name)은 해당 IP 주소에 접근할 때 사용하는 이름입니다.
이 두 부분이 결합되면 localhost로 들어오는 모든 요청이 IP 주소 127.0.0.1로 연결됩니다. 브라우저 주소창에 localhost를 입력하면, 브라우저는 먼저 호스트 파일을 확인해 지정된 IP 주소를 찾은 후 해당 주소로 이동합니다.
요약하면, 호스트 파일은 IP 주소와 도메인 이름의 조합일 뿐입니다. 이 매핑 정보를 원하는 대로 수정하면 다양한 결과를 얻을 수 있습니다.
호스트 파일로 리디렉션 설정하기
호스트 파일로 할 수 있는 유용한 작업 중 하나는 리디렉션(redirect) 설정입니다. 특정 도메인이 원래 연결되어야 할 곳이 아닌 전혀 다른 곳으로 향하도록 만들 수 있습니다.
예를 들어, SNS 사용 시간을 줄이고 싶다면 facebook.com 같은 도메인을 위키백과(Wikipedia) 같은 사이트로 연결되도록 설정할 수 있습니다. 도메인과 IP 주소는 원하는 어떤 값이든 자유롭게 지정할 수 있습니다.
그럼 실제로 위와 같은 리디렉션을 호스트 파일로 설정하는 방법을 알아보겠습니다.
- nano 에디터로 호스트 파일이 열려 있는 상태에서 방향키를 이용해 커서를 localhost 항목이 끝나는 위치로 이동시킨 뒤 Enter 키를 눌러 새 줄을 추가합니다.
- 새로 추가한 줄에 연결하고 싶은 목적지 IP 주소를 입력합니다. 여기서는 위키백과의 IP 주소인 103.102.166.224를 사용하겠습니다.
- Tab 키를 눌러 도메인 입력 위치로 이동합니다.
- 앞서 입력한 IP 주소로 연결할 도메인 이름을 입력합니다. 여기서는 facebook.com을 사용합니다.
- 수정을 마쳤으면 Ctrl + O를 눌러 파일을 저장합니다.
- Enter 키를 눌러 저장을 확정합니다.
- Ctrl + X를 눌러 nano 에디터를 종료합니다.
- 변경 사항을 적용하려면 DNS 캐시를 삭제해야 합니다. 터미널에 아래 명령어를 입력하고 Enter 키를 누르세요.
dscacheutil -flushcache - 브라우저를 열고 facebook.com을 입력한 뒤 Enter 키를 누릅니다. 그러면 페이스북이 아니라 위키백과가 열리는 것을 확인할 수 있습니다.
꿀팁: 웹사이트의 IP 주소 확인 방법
위 과정에서 살펴본 것처럼, 리디렉션하려는 목적지 사이트의 IP 주소가 필요합니다. 해당 주소를 미리 알지 못한다면 터미널 명령어 하나만으로 어떤 웹사이트든 IP 주소를 쉽게 알아낼 수 있습니다.
- 터미널에 아래 명령어를 입력하고 Enter 키를 누릅니다. 이때 wikipedia.org는 원하는 사이트의 도메인으로 바꿔 입력하세요.
ping wikipedia.org - 화면에 IP 주소가 표시됩니다. 이 주소를 호스트 파일에 그대로 사용하면 됩니다.
호스트 파일 편집으로 웹사이트 차단하기
호스트 파일의 가장 큰 장점은 서드파티 앱을 설치하지 않고도 웹사이트를 차단할 수 있다는 점입니다. 파일에 항목 하나만 추가하면 해당 사이트로 향하는 모든 연결 요청이 자동으로 거부됩니다.
- 앞서 설명한 방법대로 nano 에디터에서 호스트 파일을 엽니다.
- 커서를 localhost 항목 끝으로 이동시킨 뒤 Enter 키를 눌러 새 줄을 추가합니다.
- IP 주소 127.0.0.1을 입력하고 Tab 키를 누릅니다.
- 차단하려는 사이트의 도메인 이름을 입력합니다. 예를 들어 인스타그램을 차단하고 싶다면 instagram.com을 입력하세요.
- Ctrl + O를 눌러 변경 사항을 저장합니다.
- Ctrl + X를 눌러 파일을 닫습니다.
- 아래 명령어를 입력하고 Enter 키를 눌러 DNS 캐시를 삭제합니다.
dscacheutil -flushcache
이제 차단된 사이트에 접속을 시도할 때마다 localhost로 연결되며 오류 페이지가 표시됩니다.
맥의 호스트 파일을 활용하면 외부 네트워크 요청을 다양하게 제어할 수 있으며, 원하는 대로 사이트를 차단하거나 차단 해제할 수 있습니다. 맥에서 호스트 파일을 사용해 본 경험이 있으신가요? 어떤 용도로 활용하셨는지 댓글로 알려주세요.