본문 바로가기

프로그래밍/CS

hosts 파일

hosts 파일?

운영체제가 호스트 이름을 IP 주소에 매핑할 때 사용하는 파일로 hosts라는 이름을 사용합니다.
호스트 이름에 대응하는 IP 주소가 저장되어 있어 DNS(도메인 이름 시스템)에서 주소 정보를 제공받지 않아도 서버의 위치를 찾게 해줍니다.

 

기본적인 형식은 [IP 주소 + 호스트 이름(255자 이하)] 입니다.

 

127.0.0.1  localhost loopback
::1           localhost

 

hosts 파일 내에는 여러 줄이 존재할 수 있으며, 이 줄의 첫 문자 필드에는 IP 주소가, 그 다음에는 하나 이상의 호스트 이름이 위치합니다. 각 필드는 공백/탭으로 구별되고, # 은 한 줄 전체 주석 처리합니다.
프로토콜 형식 'http:', 와일드카드 문자 *, 주소 맨 끝에 / 사용 제한 됩니다.

 

DNS 서버??

어떤 웹 사이트에 접속하기 위해서는 본래 ip 주소가 필요하지만,
이를 사용하기 어렵기 때문에 별도의 도메인 네임을 부여 받아 사용할 수 있습니다.
도메인 네임을 이용하여 접속하면, DNS 서버에서 실제 ip 주소로 번역합니다.

 

- root dns : .com .org .edu .net 등 도메인 주소 가장 마지막에 있는 주소의 ip 관리
- com/org/edu .. DNS : 각각이 관리하는 도메인 주소들의 ip를 관리

 

전체적인 맥락은 아래와 같습니다.

www.naver.com 엑세스 -> root DNS -> com DNS -> ip 취득 후 해당 ip로 네이버 엑세스  

 

=> Hosts 파일은 이런 DNS 서버에서 이루어지는 동작을 대체합니다.
# DNS 보다 hosts 파일의 우선순위가 높습니다. hosts 파일에서 ip를 찾아보고 DNS에 질의합니다.

 

(DNS 서버에 등록되어) 실제 사이트로 가는 도메인을 hosts 파일을 수정하여 다른 서버(테스트 사이트)로 가는 ip를 지정하면 hosts 파일에 지정된 ip 우선적으로 사용되어 테스트 환경으로 엑세스 할 수 있습니다. 

 

ex) localhost 도메인 접근 -> DNS 서버 거치지 않고 hosts 파일에 지정된 http(s)://127.0.0.1/ 로 접속

 

# Win10에서 hosts 파일 내용을 수정하기 위해서는 관리자 권한이 있는 계정으로 hosts 파일을 다른 폴더로 복사해서 수정 후 다시 붙여넣어야 한다고 합니다. 

'프로그래밍 > CS' 카테고리의 다른 글

[컴퓨터 통신] OSI(Open Systems Interconnection)  (0) 2022.12.28
[컴퓨터 통신] 데이터 통신  (0) 2022.12.27
어셈블리어  (0) 2021.01.13
TCP/UDP  (0) 2020.02.11
NETWORKING stateless/stateful  (0) 2020.02.10