본문 바로가기
프로그래밍/운영체제, 서버

Windows 10에서 hosts 파일 수정하기

by pentode 2018. 4. 12.

hosts 파일을 문자로된 이름을 숫자로 된 IP 주소로 매칭 시켜 주는 정보를 담고 있는 파일입니다. 우리가 인터넷상의 서버에 접속하기 위해서 주로 사용하는 이름은 offbyone.tistory.com 과 같은 도메인 주소입니다. 이 도메인 주소를 사용하여 서버에 접속하는 과정에너 DNS 서버라고 불리는 서버들을 이용해 도메인 주소에 짝지워진 IP 주소를 찾아서 실제 통신은 IP 주소를 가지고 하게 됩니다. (실제는 MAC(Media Access Control) Address 라는 이더넷 어댑터에 할당되어 있는 물리주소도 관여를 하게됩니다.)

 

hosts 파일을 이 DNS 와 동일한 작업을 수행합니다. 파일내에 그룹웨어 호스트가 

 

groupware 192.168.0.50

 

처럼 지정 되어 있다면, 이 서버에 웹브라우저로 접속하기 위해서

 

http://groupware

 

처럼 사용할 수 있습니다.

 

네트웍상의 호스트 이름을 IP 주소로 변환하는데, DNS 보다 hosts 파일이 우선순위가 높습니다. 즉, hosts 파일에서 찾아보고 없으면 DNS에 질의를 하게 됩니다.

 

hosts 파일은 오래전에 내부망에 자체 DNS 없이 여러 서버들을 사용할때 IP 주소를 외우기 힘들기 때문에 서버들에 이름을 붙여서 자신의 hosts 파일에 등록 해두고 많이 사용을 했었습니다.

 

Windows 에서 hosts 파일의 위치는 다음과 같습니다.(Linux라면 /etc/hosts 일 것입니다.)

 

C:\Windows\System32\drivers\etc\hosts

 

다음은 실제 파일 내용입니다. 수정한것이 없다면 이 내용이 기본 일 것입니다.

 

# Copyright (c) 1993-2009 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

# localhost name resolution is handled within DNS itself.
#	127.0.0.1       localhost
#	::1             localhost

 

요즘에는 이 hosts 파일을 변조해서 다른 피싱사이트로 접속하게 만드는 악성 소프트웨어들이 나와서 hosts 파일을 잘 사용하지 않게 된 것 같습니다. 백신 소프트웨어들은 hosts 파일의 변조를 감시해서 알림을 보내기도 합니다.

 

개발중에 가끔씩 localhost나 IP 주소가 아니라 특정 도메인 주소로 테스트를 해봐야 할 경우가 있습니다. 이럴 경우 간단히 hosts 파일에 등록을 해서 테스트를 할 수 있습니다.

 

Windows 10에서 hosts 파일의 내용을 수정하고 저장하려고 하면 "액세스가 거부 되었습니다." 라고 뜨고 수정이 되지 않습니다.

 

 

이럴경우 hosts 파일을 다른 폴더로 복사를 해서 수정을 합니다. 수정후 수정된 파일을 원래의 위치로 다시 복사를 해서 덮어쓰게 됩니다.

 

 

덮어쓰기를 실행하면 관리자 권한이 필요하다고 나옵니다. 이 작업은 관리자 권한이 있는 계정으로 하여야 합니다. 계속을 누르면 복사가 되어 집니다.

 

 

자체 개발용 DNS 가 있다면 좋겠지만 그렇지 못할 경우에 간단히 테스트 해볼 수 있는 hosts 파일을 변경하는 방법을 알아 보았습니다.

반응형