BBUWOO'S [ LIKE UNIX ] WORLD Home > Lecture > Bind > Bind-15  

HOME
WHAT's BBUWOO?
LInux AnNyung
Open Source
    GitHUB
    GitHUB (for PHP)
LECTURE
MINI LECTURE
QnA BOARD
ENGLISH POEM


WARNNING

강좌의 모든 권리는 본인 김정균에게 있으며 이 강좌를 상업적 목적 으로 이용
하거나 다른 곳으로 옮길시에는 본인의 허락이 있어야 한다. 이글의 가장 최신글은
http://oops.org 에서 확인할수 있다.



[별첨] INTERNET Service를 위한
       NAME Service의 바른이해

이 문서는 2000.6.27에 Linux Start 에 기고 되었던 원고를 정리한 것입니다.

이 문서는 Internet Server를 운영하려는 초보자들의 이해를 돕고자 작성 되어 졌다. 이 문서가 초보자들을 위한것임을 내세우기는 하나 리눅스를 설치를 할줄 알고, name server를 셋팅을 해 본 경험이 있는 사람들과 네임서버를 셋팅할 준비를 하고 있는 사람들을 대상으로 한다. 때로는 초보자들을 쉽게 이해시키기 위하여 약간 왜곡된 정보를 줄수도 있을 것이다. 이는 필자가 공부를 하면서 약간 왜곡되게 얻은 정보들 때문에 쉽게 이해를 하고 나중에 또한 쉽게 바로 잡을수 있었던 부분들이 있었기 때문에 이렇게 표현을 하고자 한다.

이 문서를 100% 믿으려고는 하지 말기 바란다. 위에서 언급한 데로 고의적인 왜곡된 부분이 있다. 다만 참고를 하기 바란다.

이 문서에서 Daemon들을 설정법을 설명하지는 않는다. 여기서 언급 되는 daemon들의 설정법이 궁금하다면 앞의 Name Server 강좌를 참조 하기 바란다.

[차례]

1. Name Server란..
2. 그렇다면 왜 NS 설정이 중요한가?
3. 실례
   3-1. NS 설정과 System resource
   3-2. 외부에서는 안되요.
   3-3. NS와 Sendamil
   3-4. dot(.) 의 철학
   3-5. Inverse domain 이란 놈은 뭐하는 놈인가?
4. Debugging 을 잘하자
5. 후기

1. Name Server란..

Internet 상의 host들은 ip address라는 숫자로 구성된 주소를 가지고 있다. 하지만 이 숫자로 된 주소들은 외우기가 힘들고 모두 비슷비슷하게 생겨서 구분하기가 참 힘들며, 더우기 이 주소로 사이트의 특성을 알기는 정말 힘이든다. 그래서 외우기 쉽고 주소만으로도 그 site의 특성을 알기 쉽게 하기 위하여 만든 것이 DNS(Domain Name Service) 이다. 그리고 이 DNS를 관리 하는 것이 바로 Name Server 이다. 우리가 Windows 에서 internet 연결을 위한 셋팅을 할때 TCP/IP 설정에서 주 DNS서버 보조 DNS 서버(또는 이름해석 서버라고도 한다) 라는 항목이 바로 domain name을 ip address로 해석을 해줄 Name Server를 지정을 하는 것이다.

2. 그렇다면 왜 NS 설정이 중요한가?

이 항목에서 설명할 부분은 왜 중요한가 보다 다른 Daemon들 처럼 그냥 공식적으로 설정을 하면 안되고 반듯이 이해를 해야 하는가를 다루려고 한다.

Name Service란 아주 중요한 것이다. 예전에는 IP address 기반의 서비스이기 때문에 별 상관이 없을지는 모르겠지만 현재의 Internet은 IP address 기반이기 보다는 Name 기반의 서비스가 주가 된다. 그러므로 Name Daemon 외의 다른 Daemon(http의 virtualhost 기능, sendmail 등등)들은 거의 절대적으로 NS에 의존을 하게 된다. 그러므로 NS의 설정이 잘못되었을 경우에는 자기의 host에만 문제를 주는 것이 아니라 다른 사람 아니 다른 지역의(여기서 다른 지역이란 local뿐 아니라 global을 의미한다) 네트워크까지 마비를 시킬수 있기 때문이다. 즉 그만큼 자기가 하는 설정이 간단한 문제가 아니라 다른 나라까지도 영향을 미칠수 있는 중요한 작업이라는 것을 의식을 해야 한다.

3. 실례

4. Debugging 을 잘하자

name service에서 debugging이라는 것은 무엇을 뜻하는 것일까? 즉 내가 설정한 name들이 제대로 작동을 하는지 살펴 보고, 에러가 나타날 경우 어디서 에러가 발생하는 지를 찾아 내는 작업이 바로 name service를 위한 debugging을 의미한다.

이 작업을 하기 위하여 가장 유용하게 사용을 하는 것이 바로 nslookup 명령어 이다. 단순히 name의 ip address를 찾기 위하여 많이들 사용을 하기는 하지만 실제로 set q=RECORD 를 이용하여 여러가지 query를 날릴수 있다.

즉 이 항목을 마지막에 넣어 두는 이유는, nslookup만 사용을 잘해도 질문하고 답변하는 시간을 줄일수 있다는 것을 알려 주고 싶어서이다. nslookup의 사용법에 대해서는 왠만한 name server 강좌에서 모두 볼수 있을 것이다.

5. 후기

필자가 name server를 셋팅하고 질문을 받으면서 가장 답답했던 점이 남의 설정파일을 받아서 살짝 변경하여 사용하는 사람들이 대부분이라는 점이다. 즉 이해를 할 생각은 하지 않고 그냥 되면 되는 구나 하는 사람들이 대부분이라는 말이다.

위에서도 언급을 했듯이 name service는 이해를 제대로 하지 않고서 운영을 할경우 피해가 global하게 퍼질수 있는 위험 요소를 가지고 있음에도 불구하고, 또 하나를 알았으면 다른것에 응용을 할수 있는 것들을 그저 그냥 그렇게 지나치고 만다는 것이 필자를 너무 당황 스럽게 하는 요소들이다.

그래서 필자가 질문을 받고, 운영을 하면서 어이가 없다 싶은 질문이나 주의를 해야 할 부분들에 대해 이렇게 문서를 만들게 된 것이 이 글의 주요 목적이 될것이다.

또 하나의 목적은 최소한 이글을 읽고 다른 사람, 다른 네트워크에 피해를 입히는 일을 최소한으로 줄여 보았으면 하는 이유도 포함이 될것이다!



>> 이전 : Name Server Debugging



    



 Home > Lecture > Bind > Bind-15

Copyright 1997-2024 JoungKyun Kim 
LAST MODIFIED: 2017/01/19