오늘은 윈도우에 있는(물론 여타 운영체제에도 있습니다.) HOSTS파일에 대해서 이야기 해볼까합니다.
우리는 인터넷을 좀 더 쉽게 사용하기 위해서, 도메인 이라고 하는 것을 사용하고 있습니다. 인터넷에 연결되어있는 컴퓨터는 모두 4바이트의 고유한 숫자(이 IP라고 함)를 이름처럼 부여받어서, 데이터를 전송하거나 받고 싶다면 그 숫자 주소로해서 데이터를 주고받게 되어 있습니다. 하지만 그런 (210.221.141.52와 같은) 4바이트 숫자는 기억하기 쉽지 않습니다. 그래서 na○er.com 이라거나 ○aum.net과 같은 기억하기 쉬운 문자를 사용하여 IP를 표현하는 방법을 생각하게 되었습니다. 그것이 도메인의 시작입니다.
도메인의 구조와 같은 것을 설명하면 복잡해지므로 네이버사전과 위키에 넘기고 HOSTS파일에 대해 이야기를 해보겠습니다.
HOSTS파일은 DNS서버에 질의(이 na○er.com의 아이피가 무엇이냐고 물어보는 것)를 시도하기 전에 윈도우에 있는 HOSTS파일을 먼저 검색하게 되어 있습니다. Administrator권한의 계정으로 로그인하여 ‘C:\WINDOWS\system32\drivers\etc’폴더에 있는 ‘HOSTS’파일을 열어보면 아래와 같은 내용이 있는 것을 볼 수 있습니다.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
위의 것을 간단히 보자면 #은 그 한 줄을 주석으로 처리한다는 뜻입니다. 그리고 제일 아래를 보면 ‘127.0.0.1 localhost’라고 써있는 것을 알 수 있습니다. 자.. 느낌이 오실 것 같습니다. 우리가 무심코 쓰고 있던 localhost라는 도메인은 위의 HOSTS 파일에 정의되어 있는 것을 사용한 것입니다. 만약 tistory.com을 임의의 216.52.14.25(아무 의미 없는 예제 IP에요.;)라는 아이피로 연결하고 싶다면 제일 아래줄에 엔터를 치고 아래와 같이 넣으면 됩니다.
216.52.14.25 tistory.com
이렇게 해 두면 인터넷익스플로러, FTP, Ping 등의 모든 TCP/IP를 사용하는 프로그램들이 tistory.com을 입력했을 때 216.52.14.25라는 아이피로 접속되게 됩니다.
물론 위의 방법을 악용해서 피싱(phishing)을 하기도 합니다. nav○r.com 이랑 완전 같은 가짜 홈페이지를 만들어 놓고 ‘게임방’과 같은 곳에 이런식으로 가짜 홈페이지를 HOSTS파일로 연결하게 되면 가짜홈페이지를 진짜 홈페이지로 착각하여 개인정보 유출을 당할 수도 있다는 것입니다. 피싱과 관련된 정보는 이 곳을 클릭해주세요.
물론 웹 게임을 열심히 하는 동생의 장래를 위해 아래와 같이 HOSTS파일에 추가하는 방법도 있습니다.
위의 사용 법은 약간 극단적일 수도 있겠습니다? (웃음)
물론 와일드카드 *(All을 뜻함)와 같은 것은 불가능하니 하나하나 직접 입력해야 합니다.
지금까지 HOSTS파일을 이용하면 어떤일을 할 수 있는지 알아 보았습니다. 악용은 하지 마시고 이런 것도 있다는 것을 기억해서 당하는 일이 없도록 했으면 좋겠네요.
[1] naver 백과사전
[2] http://allifestyle.com/tt/eatgod/6871 – 블로그