2007. 1. 3. 17:24

윈도우 2000 에서 NSLOOKUP을 통한 DNS 동작 테스트

질문겸 윈도우 2000 에서 NSLOOKUP을 통한 DNS 동작 테스트에 대한 내용 입니다.




사내에서 DNS를 돌리고 있는데 간혹가다 특정사이트에 대해서 올바른 DNS 서비스가 안되어


접속이 안되는 경우가 있읍니다. DNS를 점검 해봐도 특별한 이상은 없고 그렇다고 계속 사용하자니


찜찜하고 DNS를 점검 해봐도 특별한 이상은 없고 그래서 새로 설치했읍니다.


서비스팩깔고 드라이버 잡고 불필요한 서비스 내리고 DNS 설정 새로하고 백신 설치하고 등등 그런데 백신을 최신걸로 업데이트 하려고 브라우저를 띄우면 이상한 영문 사이트로 접속이 되더군요 백신은


하우리건가 그렇읍니다. 분명 서버를 새로 설치하고 DNS 도 깨끗이 다시 설정 했는데...


이번에는 DNS를 KT DNS 로 설정하고 다시 브라우저를 띄우니 잘되더군요..


아마 윈도우2000 에서 DNS를 설정하면 DNS서버도 쿼리에 대한 정보가 없으면 Default로


설정된 상위DNS 서버로 질의를 하는데 하우리에 대한 정보를 잘못된 IP로 알려 주는것 같읍니다.


아니면 다른 문제라면 답변 바랍니다.




⊙ w2k DNS 동작 테스트


1. 시작 -> 프로그램 -> 관리도구 -> DNS를 클릭하고 등록정보를 누른다. 모니터링 탭의 단순쿼리


    및 재귀커리 항목을 체크하고 테스트버튼을 눌러 로컬 DNS의 동작여부와 다른 DNS 에게


    정상적으로 쿼리하는지 테스트 한다.
2. 관리도구 -> 이벤트표시기 -> DNS SERVER 항목이 있는지 점검한다.
3. 관리도구 -> 서비스 -> DNS Server 가 정상적으로 동작 하는지 확인 만약 이상이 있거나


    중지되어 있다면 서비스를 정지 했다가 재시작한다.



   C:> net stop dns
   C:> net start dns
* DNS 서버 동작이 있을 경우 서비스를 중지 했다가 재시작 하는 것도 좋은 방법이다.




⊙ NSLOOKUP 유틸을 이용한 점검




1. 사용방법    a.Interactive(대화형) -  대화형식으로 nslookup 을 입력하고 엔터를 치면


                                                        " > " 표시로 나타난다.


                                                       c:> nslookup
                                                       > www.empas.com  // 엠파스의 IP를 질의한다.
                     b. Non Interactive(비화대형)  - nslookup 한칸띄고 질의할 주소를 적는다.


                                                                    c:> nslookup www.empas.com



2. 원하는 레코드 타입별로 확인



   a SOA 레코드 확인   
     c:> nslookup
        > set type=soa
        > mcp.com / mcp.com 도메인의 SOA 레코드 요청
   b. Mail Server 레코드 확인
     c:> nslookup
        > set type=mx
        > net.com / net.com 도메인의 MX 레코드 요청
   c. 도메인에 대한 모든 레코드 요청
     c:> nslookup
        > set type=all
        > mcp.com / mcp.com 도메인의 모든 레코드 요청




⊙ DNS Server Local Cache




1. 한번 쿼리를 해서 알아낸 특정 사이트의 정보는 특정시간(TTL)동안 DNS Server의 로컬 캐쉬에


    저장된다.
2. nslookup 질의를 통해서 알아낸 주소에 대해 다시 nslookup 질의를 보내면 같은 정보를 보여주고
   " Non-authoritative answer : " 이란 메시지도 같이 보여주는데 이 뜻은 로컬 캐쉬에 있는 정보


   이므로 신뢰할 수 없는 응답이라는 표기를 하고 있다.
3. 간혹 실제 주소가 변경 되었는데 로컬 캐쉬에서 변경전 정보를 가지고 있어 문제를 발생할 수 있다.
    그 이유는 TTL 이 만료되기 전까지는 Interactive Query가 아닌 로컬 캐쉬의 정보를 찾아서


    클라이언트에게 응답하기 때문이다.
4. 만약 질의에 대한 정보를 가져오지 못한다면 DNS Server를 점검해야 한다.



   c:> nslookup www.empas.com / 로컬 DNS 에 질의
   *** net.com can't find www.empas.com : No response from server


   c:> nslookup www.empas.com 164.124.101.31
   / empas 도메인에 대한 정보 요청을 로컬 dns가 아닌 164.124.101.31 dns 에 질의 결과값을


     정상적으로 가져 왔다면 로컬 DNS를 점검한다.
   c:> nslookup
     > server 210.121.199.77


     / 아예 default DNS server를 수정해서 앞으로 query를 자신의 dns server 로 설정된 서버가


       아닌 210.121.199.77 인 DNS서버 에게 요청을 하겠다는 뜻
   c:> nslookup ls mcp.com
    / mcp.com의 모든 레코드 요청, 이명령은 호스트 이름이 기억나지 않을 때 등에 사용




⊙ DNS Client Local Cache 삭제 및 정보 확인




W2K는 클라이언트도 Resolution 해온 dns 레코드를 로컬 캐쉬에 저장하는데 간혹 이것때문에


문제를 일으킬 수도 있다. 로컬캐쉬 정보를 지우려면 c:> ipconfig/flushdns 를 입력한다.
로컬캐쉬의 저장된 DNS 정보를 보려면 c:>ipconfig/displaydns 를 입력한다.