DNS 등장 이전
DNS 가 등장하기 전까지는 호스트명과 IP주소의 매핑 정보를 /etc/hosts 라는 로컬 파일에 수동 정의 했다.
gethostbyname()함수는 이 파일에서 정규호스트명이나 에일리어스중 하나를 검색해 IP 주소를 얻어왔다.
#IP주소 정규호스트명 [에일리어스]
127.0.0.1 localhost
DNS
- 계층으로 이뤄진 네임스페이스로 호스트명을 구성 한다.
- DNS 계층의 각 노드는 최대 63개 문자로 이뤄진 label을 갖는다. ( com, edu, net, org, de, eu, nz, us .... )
- 계층의 루트에는 익명 루트라 불리는 이름 없는 노드가 있다.
- 노드의 도메인명은 해당 노드에서 루트까지의 모든 이름을 포함한다. 각 이름의 구분은 점으로 구분한다. (z-man.tistory.com)
- 하나의 기관이나 시스템이 전체 계층을 관리하지 않고 DNS서버 계층마다 각 DNS 트리의 가지를 관리한다.
- 프로그램에서 도메인명을 얻으려고 getaddrinfo() 를 호출하면 함수는 로컬 DNS 서버와 통신하는데 필요한 lib를 이용한다. 만약 얻지 못할 경우 다른 DNS서버와 통신 한다.
/etc/services 파일
port를 관리 한다.
'프로그래밍 > Server' 카테고리의 다른 글
소켓 : 서버 설계 (0) | 2013.03.23 |
---|---|
소켓 정보 (0) | 2013.03.21 |
소켓 실행파일 (0) | 2013.03.21 |
TCP/IP 네트워크 기초 - TCP (0) | 2013.03.21 |
TCP/IP 네트워크 기초 - UDP (0) | 2013.03.21 |