作者 主題: 內網DNS架設~其他電腦無法解析到DNS SERVER  (閱讀 3819 次)

0 會員 與 1 訪客 正在閱讀本文。

f4266969

  • 可愛的小學生
  • *
  • 文章數: 4
    • 檢視個人資料
內網環境

desktop.example.com   192.168.1.101-------->第一台實機
www101.example.com   192.168.1.101-->第一台實機
client.example.com   192.168.1.102-------->虛擬機
www102.example.com   192.168.1.102-->虛擬機
server.example.com   192.168.1.110-------->第二台實機
www110.example.com   192.168.1.110-->第二台實機

DNS server架在192.168.1.101

安裝bind
#yum install -y bind

修改名稱解析
gedit /etc/resolv.conf &
# Generated by NetworkManager
search example.com
nameserver 192.168.1.101
nameserver 192.168.1.1

修改/etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
   listen-on port 53 { 127.0.0.1;192.168.1.101;192.168.1.102;192.168.1.110; };
   listen-on-v6 port 53 { ::1; };
   directory    "/var/named";
   dump-file    "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
   allow-query     { any; };
        allow-query-cache { 127.0.0.1;192.168.1.101;192.168.1.102;192.168.1.110; };
   recursion yes;
        forwarders { 192.168.1.102;168.95.1.1; };
#   dnssec-enable yes;
#   dnssec-validation yes;
#   dnssec-lookaside auto;

   /* Path to ISC DLV key */
   bindkeys-file "/etc/named.iscdlv.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
   type hint;
   file "named.ca";
};

include "/etc/named.rfc1912.zones";

zone "desktop.example.com" IN {

        type master;

        file "desktop.example.com.zone";

};

zone "www101.example.com" IN {

        type master;

        file "www101.example.com.zone";

};

zone "client.example.com" IN {

        type master;

        file "client.example.com.zone";

};

zone "www102.example.com" IN {

        type master;

        file "www102.example.com.zone";

};

zone "server.example.com" IN {

        type master;

        file "server.example.com.zone";

};

zone "www110.example.com" IN {

        type master;

        file "www110.example.com.zone";

};

zone "1.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.1.zone";

};

gedit /var/named/192.168.1.zone

$TTL 86400

$ORIGIN 1.168.192.in-addr.arpa.

@ IN SOA dns.desktop.example.com. root.localhost. (

2012012901 ; serial

     28800 ; refresh

     14400 ; retry

   3600000 ; expire

    86400) ; ttl

@       IN      NS      dns.desktop.example.com.
101     IN      PTR     desktop.example.com
101     IN      PTR     www101.example.com
102     IN      PTR     client.example.com
102     IN      PTR     www102.example.com
110     IN      PTR     server.example.com
110     IN      PTR     www110.example.com

gedit /var/named/desktop.example.com.zone

$TTL 86400

$ORIGIN desktop.example.com.

@ IN SOA dns.desktop.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

desktop.example.com.     IN      A       192.168.1.101

gedit /var/named/wwww101.example.com.zone

$TTL 86400

$ORIGIN www101.example.com.

@ IN SOA dns.desktop.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

www101.example.com.     IN      A       192.168.1.101

gedit /var/named/client.example.com.zone

$TTL 86400

$ORIGIN client.example.com.

@ IN SOA dns.client.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

client.example.com.     IN      A       192.168.1.102

gedit /var/named/www102.example.com.zone

$TTL 86400

$ORIGIN www102.example.com.

@ IN SOA dns.desktop.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

www102.example.com.     IN      A       192.168.1.102

gedit /var/named/server.example.com.zone

$TTL 86400

$ORIGIN server.example.com.

@ IN SOA dns.server.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

server.example.com.     IN      A       192.168.1.110

gedit /var/named/www110.example.com.zone

$TTL 86400

$ORIGIN www110.example.com.

@ IN SOA dns.desktop.example.com. root.localhost. (

2012012901              ; serial (d. adams)

        3H              ; refresh

        15M             ; retry

        1W              ; expiry

        1D )            ; minimum

@       IN      NS      dns.desktop.example.com.

dns     IN      A       192.168.1.101

www110.example.com.     IN      A       192.168.1.110

gedit /var/named/named.rfc1912.zones &

zone "." IN {

        type hint;

        file "named.ca";

};



zone "localdomain" IN {

        type master;

        file "localdomain.zone";

        allow-update { none; };

};



zone "localhost" IN {

        type master;

        file "localhost.zone";

        allow-update { none; };

};



zone "0.0.127.in-addr.arpa" IN {

        type master;

        file "named.local";

        allow-update { none; };

};



zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {

        type master;

        file "named.ip6.local";

        allow-update { none; };

};



zone "255.in-addr.arpa" IN {

        type master;

        file "named.broadcast";

        allow-update { none; };

};



zone "0.in-addr.arpa" IN {

        type master;

        file "named.zero";

        allow-update { none; };

};



zone "desktop.example.com" IN {

        type master;

        file "desktop.example.com.zone";

};


zone "www101.example.com" IN {

        type master;

        file "www101.example.com.zone";

};

zone "client.example.com" IN {

        type master;

        file "client.example.com.zone";

};


zone "www102.example.com" IN {

        type master;

        file "www102.example.com.zone";

};

zone "server.example.com" IN {

        type master;

        file "server.example.com.zone";

};


zone "www110.example.com" IN {

        type master;

        file "www110.example.com.zone";

};

zone "1.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.2.zone";

};

service named restart
chkconfig named on
« 上次編輯: 2012-02-29 12:53 由 f4266969 »

f4266969

  • 可愛的小學生
  • *
  • 文章數: 4
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #1 於: 2012-02-29 12:51 »
在192.168.1.101上~host 192.168.1.101
                                  ~host 192.168.1.102
                                  ~host 192.168.1.110
都可解析到
在虛擬機和第二台實機上~在/etc/resolv.conf~皆將nameserver指向192.168.1.101如下
gedit /etc/resolv.conf &
# Generated by NetworkManager
search example.com
nameserver 192.168.1.101
nameserver 192.168.1.1

192.168.1.102上~host 192.168.1.102
192.168.1.110上~host 192.168.1.110
兩台都解析不到
想請教一下是啥原因

jou

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 4989
  • 性別: 男
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #2 於: 2012-02-29 13:54 »
其實正解只需要一個 zone "example.com"
然後把全部的 RR 都放在一起就可以了。
還有每一個 RR 最後需要句點的一個也不能少。

f4266969

  • 可愛的小學生
  • *
  • 文章數: 4
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #3 於: 2012-02-29 21:29 »
問題一
其實正解只需要一個 zone "example.com"~然後把全部的 RR 都放在一起就可以了
意思是我只要作一個example.com.zone~然後把所有的正解檔的內容通通寫進去即可~是這樣嗎

問題二
還有每一個 RR 最後需要句點的一個也不能少。
是說所有的正解檔的最後一句"desktop.example.com.     IN      A       192.168.1.101"-->最後都少了一個點是嗎?

HaWay

  • 大隻佬!
  • 老人組
  • 俺是博士!
  • *****
  • 文章數: 3980
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #4 於: 2012-03-01 09:51 »

gedit /etc/resolv.conf &
# Generated by NetworkManager
# search example.com  #################你確定你知道 search 的作用再加進去
nameserver 192.168.1.101
nameserver 192.168.1.1     ############## 192.168.1.1 是 gateway ? 有 DNS 服務??

===============================================

options {
   listen-on port 53 { any;};
   listen-on-v6 port 53 { ::1; };
   directory    "/var/named";
   dump-file    "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
   allow-query     { any; };
        allow-query-cache { 127.0.0.1;192.168.1.101;192.168.1.102;192.168.1.110; };
   recursion yes;
        forwarders { 192.168.1.102;168.95.1.1; };         ###################  你 192.168.1.102 有裝 DNS Server 嗎?

   /* Path to ISC DLV key */
   bindkeys-file "/etc/named.iscdlv.key";
};

===========================================================

zone "." IN {
   type hint;
   file "named.ca";
};

include "/etc/named.rfc1912.zones";

zone "example.com" IN {
        type master;
        file "example.com.zone";
};

================ example.com.zone =================

$TTL 86400
$ORIGIN example.com.
@ IN SOA dns.example.com. root.example.com. (

2012012901              ; serial (d. adams)
        3H              ; refresh
        15M             ; retry
        1W              ; expiry
        1D )            ; minimum

@       IN      NS      dns.example.com.
dns     IN      A       192.168.1.101

www110.example.com.     IN      A       192.168.1.110
desktop IN A 1.1.1.1
client IN A 2.2.2.2
www101 IN A 3.3.3.3

=======================================================

驗證方法

dig @127.0.0.1 example.com ns
dig @127.0.0.1 www101.example.com
dig @192.168.1.101 example.com ns
dig @192.168.1.101 client.example.com
我做人那麼 nice, 肯定有什麼誤會.....

f4266969

  • 可愛的小學生
  • *
  • 文章數: 4
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #5 於: 2012-03-01 23:57 »
我不知道search的作用,只是很笨的把resolv.conf的內容貼上來
192.168.1.1是預設的GATEWAY兼DNS
192.168.1.102並沒有裝DNS SERVER~我已將那一行註解掉

gedit /var/named/example.com.zone

$TTL 86400
$ORIGIN example.com.
@ IN SOA dns.example.com. root.example.com. (
2012012901              ; serial (d. adams)
        3H              ; refresh
        15M             ; retry
        1W              ; expiry
        1D )            ; minimum
@       IN      NS      dns.example.com.
dns     IN      A       192.168.1.101
desktop.example.com    IN    A    192.168.1.101
www101.example.com.     IN      A       192.168.1.101
client.example.com    IN    A    192.168.1.102
www102.example.com    IN    A    192.168.1.102
server.example.com   IN   A   192.168.1.110
www110.example.com.     IN      A       192.168.1.110

dig @127.0.0.1 example.com ns
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @127.0.0.1 example.com ns
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24252
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;example.com.         IN   NS

;; ANSWER SECTION:
example.com.      86400   IN   NS   dns.example.com.

;; ADDITIONAL SECTION:
dns.example.com.   86400   IN   A   192.168.1.101

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Mar  1 23:51:51 2012
;; MSG SIZE  rcvd: 63

dig @127.0.0.1 www101.example.com
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @127.0.0.1 www101.example.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19715
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;www101.example.com.      IN   A

;; ANSWER SECTION:
www101.example.com.   86400   IN   A   192.168.1.101

;; AUTHORITY SECTION:
example.com.      86400   IN   NS   dns.example.com.

;; ADDITIONAL SECTION:
dns.example.com.   86400   IN   A   192.168.1.101

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Mar  1 23:53:05 2012
;; MSG SIZE  rcvd: 86

dig @192.168.1.101 example.com ns
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @192.168.1.101 example.com ns
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30249
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;example.com.         IN   NS

;; ANSWER SECTION:
example.com.      86400   IN   NS   dns.example.com.

;; ADDITIONAL SECTION:
dns.example.com.   86400   IN   A   192.168.1.101

;; Query time: 0 msec
;; SERVER: 192.168.1.101#53(192.168.1.101)
;; WHEN: Thu Mar  1 23:53:54 2012
;; MSG SIZE  rcvd: 63

dig @192.168.1.101 client.example.com
; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @192.168.1.101 client.example.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 37376
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;client.example.com.      IN   A

;; AUTHORITY SECTION:
example.com.      86400   IN   SOA   dns.example.com. root.example.com. 2012012901 10800 900 604800 86400

;; Query time: 0 msec
;; SERVER: 192.168.1.101#53(192.168.1.101)
;; WHEN: Thu Mar  1 23:54:36 2012
;; MSG SIZE  rcvd: 81

我在101上host不到所有包括101~102~110的主機名稱

HaWay

  • 大隻佬!
  • 老人組
  • 俺是博士!
  • *****
  • 文章數: 3980
    • 檢視個人資料
Re: 內網DNS架設~其他電腦無法解析到DNS SERVER
« 回覆 #6 於: 2012-03-02 09:26 »
請找這三個問題的答案. Google 一下應該有~ :)

1. 什麼是 FQDN ?
2. ORIGIN 的作用是什麼?
3.
www101.example.com.

www101.example.com
的區別是?
$ORIGIN 被設定後對上面的影響是?

請依照你現在的 zone 作一個指令 dig @192.168.1.101 client.example.com.example.com


$TTL 86400
$ORIGIN example.com.
@ IN SOA dns.example.com. root.example.com. (
2012012901              ; serial (d. adams)
        3H              ; refresh
        15M             ; retry
        1W              ; expiry
        1D )            ; minimum
@       IN      NS      dns.example.com.
dns     IN      A       192.168.1.101
desktop.example.com    IN    A    192.168.1.101
www101.example.com.     IN      A       192.168.1.101
client.example.com    IN    A    192.168.1.102
www102.example.com    IN    A    192.168.1.102
server.example.com   IN   A   192.168.1.110
www110.example.com.     IN      A       192.168.1.110

我做人那麼 nice, 肯定有什麼誤會.....