foo.
네트워크 내에서 액세스할 수 있는 일부 하위 도메인을 호스팅할 수 있도록 개인 네트워크에 대한 새 TLD( )를 설정하고 싶습니다 . 이를 위해 다음 레코드가 포함된 영역 파일을 foo.
만들었습니다 .foo-zonedb.rr
$ORIGIN foo.
$TTL 100
@ IN SOA ns1.tld.foo. hostmaster.tld.foo (
2012030701
900
300
300
600
)
@ 300 IN NS ns1.tld.foo.
@ 300 IN A 172.16.143.197
ns1.tld.foo. 300 IN A 172.16.143.197
다음 항목도 추가했습니다./etc/named.conf
zone "foo." {
type master;
file "foo-zonedb.rr";
notify explicit;
};
이제 네트워크의 모든 컴퓨터가 172.16.1.1
DNS 서버 역할을 한다고 가정합니다. 내 도메인의 DNS 요청을 루트 DNS 서버로 리디렉션 172.16.1.1
하려면 어떤 구성을 해야 합니까 ?foo.
답변1
type master;
당신이 원하는 것을하십시오. 권한 있는 서버인 경우 172.16.1.1
루트 서버로 요청이 전송되지 않습니다. 존재하지 않는 항목이 있으면 NXDOMAIN 상태가 됩니다.
멈추고 싶다면모두쿼리가 루트 서버로 전달되는 경우 재귀를 꺼야 합니다. 바라보다:http://www.zytrax.com/books/dns/ch6/#authoritative
답변2
172.16.100.1을 기본 DNS 서버로 사용하도록 클라이언트를 구성할 수 있습니다.
DNS 서버 172.16.100.1에 바인딩되는 172.16.1.1의 전달 옵션을 사용합니다.
options {
[Your other options here]
forwarders {172.16.1.1;};
}
첫 번째 신뢰할 수 있는 응답이 반환됩니다(승자). 그러면 고객이 찾아볼 것입니다.
뭔가.foo
귀하의 DNS 서버는 신뢰할 수 있는 응답(유효한 레코드 또는 NXDOMAIN)을 제공합니다. 클라이언트가 www.google.com을 검색하는 경우 DNS 서버가 응답을 제공할 수 없으므로 요청을 172.16.1.1로 전달합니다.
내부 네트워크의 모든 것에 대해 사용자 정의 TLD를 사용합니다. 위 구성을 사용하면 제대로 작동하며 전달 옵션을 사용하여 공용 DNS 확인을 계속 허용합니다.