>> Read No. 896 article  
[Howto] 인터렉티브 네임업데이트 NSUPDATE

등록 2000-12-25 19:38:00     조회 4
이름 LeCieL    

		Tip 인터랙티브 인터넷 네임 서버 업데이트  -  nsupdate
 작성: 오명오 <xiopadm at dgtalx.net>
감수: 배권한 <darjeeling at teapot.iolinux.co.kr>
 nsupdate 는 bind에 속한 프로그램으로, 네임서버의 다이나믹 업데이트를 제공한다.
nsupdate는 dns 자원 레코드의 삭제 혹은 추가를 하기위해서 리저버 라이브러리를 통해 dns 서
버로 데이터를 보내는 프로그램입니다. 이를 잘 활용하게 되면, Dyndns 구조의 프로그램을 
제작하는데 상당히 도움이 된다. 또한 시리얼을 업데이트할때마다 변경해주기 때문에 시
리얼 변경을 하지 않아도 된다.   1. nsupdate 를 사용하기 위한 named.conf 설정
 named.conf 의 사용할 도메인의 존설정에 한줄을 추가한다.
      zone "dgtalx.com" IN {
                      type master;
                      file "zone-dgtalx.com";
     };
 위는 기존의 존 설정이다.
여기에 allow-update { 211.172.226.23; };  를 추가한다.
(업데이트 쿼리를 허용할 주소)
 추가를 하면 아래와 같이 된다.
     zone "dgtalx.com" IN {
               type master;
               file "zone-dgtalx.com";
               allow-update { 211.172.226.23; };
    };
   2. nsupdate를 사용하게 될 경우 변경되는 zone 파일
 bind 덤프 v8 로 존파일이 싹 바뀌게 된다.
그리고 nsupdate를 써서 추가/삭제된것이 네임서버가 종료될때
반영된다.
 실제 적용된 dgtalx.com 의 존파일을 예제삼아 올린다.
 ;BIND DUMP V8
$ORIGIN com.
dgtalx  128     IN      SOA     ns.dgtalx.net. xiopadm.dgtalx.net. (
                2000071910 1800 600 14400 3600 )        ;Cl=2
        128     IN      NS      ns.dgtalx.com.  ;Cl=2
        128     IN      MX      0 mail.dgtalx.com.      ;Cl=2
        128     IN      A       211.172.226.23  ;Cl=2
$ORIGIN dgtalx.com.
mirc    128     IN      A       211.172.226.23  ;Cl=2
ns      128     IN      A       211.172.226.23  ;Cl=2
  앞의 ns 128 IN A ip 를 보면 128은 TTL값입니다. 기존의 $ttl 128 이 반영된것입니다
   3. nsupdate 사용법과 명령어
 사용법 : nsupdate [ -d ] [ -v ]
         -d 디버그 모드
         -v tcp 통신을 한다. (기본은 udp로 서버와통신함)
 $ nsupdate
>
(프롬프트가 바뀝니다. 이후는 선행명령어와 선행판별식 실행명령으로 구분됩니다.)
 명령들 -------------
 prereq nxdomain domain-name
     지정한 도메인 네임에 대한 레코드가 존재 하지 않을경우 참이된다.
     (참고로 위의 RR은 리소스 레코드의 약자임, 라운드 로빈과 무관함)
 prereq yxdomain domain-name
     지정한 도메인 네임에 대한 레코드가 존재할 경우 참이된다.
 prereq nxrrset domain-name [class] type
     지정한 도메인 네임에 지정한 type의 데이터가 없어야 참이된다.
 prereq yxrrset domain-name [class] type [data...]
     지정한 도메인 네임에 값이 존재해야 하며, data 값을 대입하였을 경우
     아주 정확히 매치되어야 참이된다.
  update delete domain-name [class] [type [data...]]
     지정한 도메인네임을 삭제한다. (type과 데이터가 지정되면 매치되는 레코드만이 삭제
된다)  update add domain-name ttl [class] type data...
     새로운 도메인 네임을 삽입한다. ttl과 type과 data는 지정하는것이 좋다.
 ---------------------
 prerequest 를 날린 후에 그 값이 참일 경우 다음줄의 명령어들이 실행된다.
update가 대부분의 선행판별식 명령이다.
 update add 명령어로 기존의 a.com 의 ip가 변경되지 않음으로
기존의 데이터를 삭제하고 새로 추가해야한다.
이것은 아래의 예제를 통해 알 수 있다.
   1. 새로운 네임을 추가할때의 스크립트 작성예
 $nsupdate
>prereq nxdomain nx2.dgtalx.com.
>update add nx2.dgtalx.com. 128 IN A 211.58.88.61
 문법해석 : prereq 로 nxdomain 체크한다.
  나는 사전에 점검한다. nx2.dgtalx.com. 이라는 도메인이 존재하지 않아야
  이 다음의 모든 명령이 실제 서버로 쿼리로 전송하게 할것이다
   nx2.dgtalx.com 의 도메인을 ttl 128로 A type 으로 지정, 211.58.88.61로
  새로운 설정을 적용한다. 이 모든것은 prereq의 값이 참일때만 적용하도록 한다
   2. 기존의 네임의 ip를 변경할때의 스크립트 작성예
 $nsupdate
>prereq yxdomain test.dgtalx.com.
>update delete test.dgtalx.com.
>update add test.dgtalx.com. 128 IN A 211.58.88.61
  문법해석 :
  나는 사전에 점검한다. test.dgtalx.com. 이라는 도메인이 "정의되어" 있어야
  이하에 내가 실행하는 모든 명령어는 서버로 반영되게 한다
   기존의 test.dgtalx.com. 의 도메인을 삭제한다.
   새로운 도메인을 추가한다. test.dgtalx.com 으로 128ttl의 A 타입으로
  211.58.88.61 로 업데이트 한다
    Last TIP : 도메인은 오리지널 도메인 네임으로 지정해야한다.
            TEST.DGTALX.COM 이와같은 도메인은 처리가 되지 않을 수도 있다.
           TEST.DGTALX.COM. 이처럼 뒤에 . 으로 마친 도메인의
                            처리가 정상적으로 이루어진다.--......
LeCieL
이름
암호
  목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 1.79 초 ] 작업시간: [ 0.86 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791030132
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.