2013-03-11 7 views
5

को अग्रेषित करने के लिए कैसे मैं अपने कार्यालय के लिए DNS सर्वर के रूप में Bind9 का उपयोग कर रहा हूं।एक सबज़ोन

हमारे पास एक क्षेत्र है: example.com। जिसे हमारे DNS सर्वर से आधिकारिक के रूप में हल किया जाना है।

दूसरी ओर, हमारे पास sub.example.com है। जोन, जिसे अन्य DNS सर्वर पर अग्रेषित किया जाना है।

जब हम example.com पर किसी भी रिकॉर्ड के लिए पूछते हैं तो बाइंड प्रोपरी का उत्तर देता है। क्षेत्र। लेकिन यह sub.example.com के बारे में पूछताछ के लिए विफल रहता है। क्योंकि यह अग्रेषण नहीं करता है। यह स्थानीय रूप से उत्तर की तलाश में रहता है।

$ORIGIN example.com. 
$TTL 1W 
@ IN SOA  dnsldes.example.com. postmaster.example.com. (
           6   ; serial number 
           3600   ; refresh [1h] 
           600   ; retry  [10m] 
           86400  ; expire [1d] 
           3600)  ; min TTL [1h] 
; 


     IN  NS  dnsldes.example.com. 

bdred   IN  A  172.22.2.150 
dnsldes IN  A  172.21.229.159 

यह खुदाई क्लाइंट का उपयोग bdred.example.com क्वेरी के लिए उत्पादन होता है:

यह Named.conf फ़ाइल

zone "sub.example.com" IN { type forward; 
     forwarders {172.21.238.229;172.21.238.230;}; 
     forward only; 
}; 


zone "example.com" { 
     type master; 
     forwarders {}; 
     file "/etc/named/example.com.db"; 
}; 

यह example.com.db फ़ाइल सामग्री है (जो ठीक है):

; <<>> DiG 9.8.1-P1 <<>> bdred.sub.example.com 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 9764 
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 

;; QUESTION SECTION: 
;bdred.sub.example.com.   IN  A 

;; AUTHORITY SECTION: 
example.com.   3600 IN  SOA  dnsldes.example.com. postmaster.example.com. 6 3600 600 86400 3600 

;; Query time: 4 msec 
;; SERVER: 172.21.229.159#53(172.21.229.159) 
;; WHEN: Mon Mar 11 12:55:02 2013 
;; MSG SIZE rcvd: 94 

और यह खुदाई क्वेरी, जो प्रॉपर्टी के लिए काम नहीं कर रहा जवाब है:

; <<>> DiG 9.8.1-P1 <<>> bdred.sub.example.com 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 26555 
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 

;; QUESTION SECTION: 
;bdred.sub.example.com.   IN  A 

;; AUTHORITY SECTION: 
example.com.   3600 IN  SOA  dnsldes.example.com. postmaster.example.com. 6 3600 600 86400 3600 

;; Query time: 4 msec 
;; SERVER: 172.21.229.159#53(172.21.229.159) 
;; WHEN: Mon Mar 11 13:09:07 2013 
;; MSG SIZE rcvd: 94 

कृपया, हम क्या गलत कर रहे हैं?

+0

क्या यह एक प्रोग्रामिंग प्रश्न भी है? – Dave

+0

ऐसा लगता है कि आप 'example.com' जोन में' sub.example.com' के लिए प्रतिनिधिमंडल (एनएस आरआरसेट) खो रहे हैं। इसके अलावा मुझे नहीं पता कि आपको यहां 'टाइप फॉरवर्ड' ज़ोन क्यों चाहिए। वैसे भी, जैसा कि @ डेव्रुक ने उल्लेख किया है, यह एसओ के विषय पर नहीं है। – Celada

उत्तर

7

समाधान name.conf में ज़ोन बनाने के लिए नहीं है।

$ORIGIN example.com. 
$TTL 1W 
@ IN SOA  dnsldes.example.com. postmaster.example.com. (
           6   ; serial number 
           3600   ; refresh [1h] 
           600   ; retry  [10m] 
           86400  ; expire [1d] 
           3600)  ; min TTL [1h] 
; 


     IN  NS  dnsldes.example.com. 


dnsldes IN A XXX.XXX.XXX.XXX 
bahamas IN CNAME bdred 



; Delegations and Glue 
$ORIGIN sub.example.com. 
@  IN  NS  lmzdns1.sub.example.com. 

     IN  NS  lmzdns2.sub.example.com. 

lmzdns1 IN  A  XXX.XXX.XXX.XXX 
lmzdns2 IN  A  XXX.XXX.XXX.XXX 
2

यह एक उप डोमेन प्रतिनिधिमंडल समस्या है::

नाम सर्वर से उप डोमेन सौंपने के अपने क्षेत्र के डेटा फ़ाइल के लिए NS रिकॉर्ड जोड़े समाधान के रूप में इस क्षेत्र के प्रतिनिधिमंडल का प्रयोग है।

उदाहरण:

डोमेन: उपडोमेन one.domain: sub.one.domain

मैं केवल Google सार्वजनिक DNS साथ sub.one.domain को हल करने की जरूरत है।

नाम सर्वर externalns.one.domain को sub.one.domain प्रतिनिधि के लिए, आपको one.domain क्षेत्र डेटा फ़ाइल को यह एन एस रिकॉर्ड जोड़ सकते हैं:

sub.one.domain. IN NS externalns.one.domain. 

तुम भी करने की आवश्यकता होगी externalns.one.domain के लिए एक रिकॉर्ड जोड़ें:

externalns.one.domain IN A 8.8.8.8