2010-05-07 2 views
1

가에서 다음을 찾았 http://mike.murraynet.net/2009/08/23/parsing-the-verisign-zone-file-with-os-x/UNIX 스크립트 (이 최고의 코드?)

유닉스 주인이 한 번 봐 가지고 그 최선의 방법에서 독특한 domainsnames를 수집 할 경우 볼 수 존 파일?

.NET 도메인의 경우 : grep "^ [a-zA-Z0-9 -] + NS. "net.zone | sed"s/NS. // "| .COM 도메인에 대한

netdomains.txt UNIQ >> : 그렙"^ [A-ZA-Z0-9 -] + NS. "com.zone | sed"s/NS. // "| uniq >> comdomains.txt

.EDU 도메인의 경우 : grep"^ [a-zA-Z0-9 -] + NS. "edu.zone | sed"s/NS. // "| uniq >> edudomains.txt

답변

0

다음은 이전 예제입니다. 나는 나의 것과 비교했고 형식은 여전히 ​​동일하다.

http://www.adspeed.org/2006/04/parsing-verisign-comnet-zone-files.html

;File start: 95720 
; The use of the Data contained in Verisign Inc.' aggregated 
; .com, and .net top-level domain zone files (including the checksum 
; files) is subject to the restrictions described in the access Agreement 
; with Verisign Inc. 

$ORIGIN EDU. 
@ IN SOA  L3.NSTLD.COM. NSTLD.VERISIGN-GRS.COM. ( 
            2006040800 ;serial 
            1800 ;refresh every 30 min 
            900 ;retry every 15 min  
            604800 ;expire after a week 
            86400 ;minimum of a day 
           ) 
$TTL 518400 
NS L3.NSTLD.COM. 
NS D3.NSTLD.COM. 
NS A3.NSTLD.COM. 
NS E3.NSTLD.COM. 
NS C3.NSTLD.COM. 
NS G3.NSTLD.COM. 
NS M3.NSTLD.COM. 
NS H3.NSTLD.COM. 
L3.NSTLD.COM. A 192.41.162.32 
D3.NSTLD.COM. A 192.31.80.32 
A3.NSTLD.COM. A 192.5.6.32 
E3.NSTLD.COM. A 192.12.94.32 
C3.NSTLD.COM. A 192.26.92.32 
G3.NSTLD.COM. A 192.42.93.32 
M3.NSTLD.COM. A 192.55.83.32 
H3.NSTLD.COM. A 192.54.112.32 
$TTL 172800 
22CF NS DNS1.NAME-SERVICES.COM. 
22CF NS DNS2.NAME-SERVICES.COM. 
22CF NS DNS3.NAME-SERVICES.COM. 
TEST NS NS1.TEST 
...... 

이것은 new.zone 파일의 예이다. 네임 서버가 .net 일 때 어떻게 보이는지 알 수 있도록 하단에 하나 추가했습니다.

% named-checkzone -i none -s full -D com. com.zone | \ 
    perl -ane 'print $F[0]."\n" if $F[3] eq "NS"' | \ 
    uniq 

명령 줄이 인정 하듯이 더 이상이지만, 그것은 잠재적으로 취약한 정규 표현식 일치에 대한 필요성을 피할 수 :

3

개인적으로는 추가 처리하기 전에 영역 파일의 형식을 canonicalise하는 named-checkzone을 사용하십시오. named-checkconf 출력은 네 번째 필드에 리소스 레코드 유형 (NS)을 갖고 첫 번째 필드에 전체 도메인 이름을 갖도록 보장됩니다.

FWIW, named-checkzone도 영역 파일 출력을 정렬하므로 uniq이 올바르게 작동합니다.

관련 문제