1월 242008
 

 

오늘은 윈도우에 있는(물론 여타 운영체제에도 있습니다.) 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’파일을 열어보면 아래와 같은 내용이 있는 것을 볼 수 있습니다.

 

 

# Copyright (c) 1993-1999 Microsoft Corp.
#
# 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

 

위의 것을 간단히 보자면 #은 그 한 줄을 주석으로 처리한다는 뜻입니다. 그리고 제일 아래를 보면 ‘127.0.0.1    localhost’라고 써있는 것을 알 수 있습니다. 자.. 느낌이 오실 것 같습니다. 우리가 무심코 쓰고 있던 localhost라는 도메인은 위의 HOSTS 파일에 정의되어 있는 것을 사용한 것입니다. 만약 tistory.com을 임의의 216.52.14.25(아무 의미 없는 예제 IP에요.;)라는 아이피로 연결하고 싶다면 제일 아래줄에 엔터를 치고 아래와 같이 넣으면 됩니다.

 

 

127.0.0.1       localhost
216.52.14.25    tistory.com

 

이렇게 해 두면 인터넷익스플로러, FTP, Ping 등의 모든 TCP/IP를 사용하는 프로그램들이 tistory.com을 입력했을 때 216.52.14.25라는 아이피로 접속되게 됩니다.

물론 위의 방법을 악용해서 피싱(phishing)을 하기도 합니다. nav○r.com 이랑 완전 같은 가짜 홈페이지를 만들어 놓고 ‘게임방’과 같은 곳에 이런식으로 가짜 홈페이지를 HOSTS파일로 연결하게 되면 가짜홈페이지를 진짜 홈페이지로 착각하여 개인정보 유출을 당할 수도 있다는 것입니다. 피싱과 관련된 정보는 이 곳을 클릭해주세요.
물론 웹 게임을 열심히 하는 동생의 장래를 위해 아래와 같이 HOSTS파일에 추가하는 방법도 있습니다.

 

127.0.0.1  www.kart.nexon.com

 

위의 사용 법은 약간 극단적일 수도 있겠습니다? (웃음)

물론 와일드카드 *(All을 뜻함)와 같은 것은 불가능하니 하나하나 직접 입력해야 합니다.

지금까지 HOSTS파일을 이용하면 어떤일을 할 수 있는지 알아 보았습니다. 악용은 하지 마시고 이런 것도 있다는 것을 기억해서 당하는 일이 없도록 했으면 좋겠네요.

[1] naver 백과사전
[2] http://allifestyle.com/tt/eatgod/6871 – 블로그