小さなローカルネットワーク用に最初のBIND9DNSサーバーをセットアップしようとしていますが、機能していないようです。 max.appの「ローカル」ドメインを作成したい
私が知る限り、namedは実行されていますが、ドメインレコードを提供していないようです。
service named start
OKを返し、デーモンは起動時に実行されています。
Mac1にpingを実行しようとすると、次のようになります。不明なホストmac1
Mac1.max.appにpingを実行しようとすると、次のようになります。不明なホストmac1
Nslookupを試してみると、次のようになります。
nslookup max.app
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: max.app
Address: 67.192.47.244
ご覧のとおり、ローカルバインドサービス(192.168.100.10)からのレコードを提供していません
私の/etc/resolv.confファイルは次のようになります:
# Generated by NetworkManager
search max.app
nameserver 192.168.100.10
nameserver 8.8.8.8
nameserver 8.8.4.4
私の/etc/named.confファイルは次のようになります:
acl local-network { 192.168.100.0/24; };
options {
listen-on port 53 { 127.0.0.1; 192.168.100.10; };
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 { local-network; };
recursion yes;
query-source address * port 53;
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 "max.app" IN {
type master;
file "max.app.zone";
allow-update { none; };
};
zone "100.168.192.in-addr.arpa" IN {
type master;
file "max.app.rr.zone";
allow-update { none; };
};
私の/var/named/max.app.zoneファイルは次のようになります:
$Origin max.app.
$TTL 86400
@ IN SOA dns1.max.app. email.gmail.com. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
IN NS dns1.max.app.
dns1 IN A 192.168.100.10
CentOS1 IN A 192.168.100.15
CentOS2 IN A 192.168.100.25
mac1 IN A 192.168.100.50
mac2 IN A 192.168.100.55
mac3 IN A 192.168.100.60
www IN CNAME CentOS1
私の/var/named/max.app.rr.zoneファイルは次のようになります:
$Origin 100.168.192.in-addr.arpa.
$TTL 86400
@ IN SOA dns1.max.app. email.gmail.com. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
IN NS dns1.max.app.
10 IN PTR dns1.max.app.
15 IN PTR CentOS1.max.app.
20 IN PTR CentOS2.max.app.
50 IN PTR mac1.max.app.
55 IN PTR mac1.max.app.
60 IN PTR mac1.max.app.
サービス名付きステータスは次を返します:
version: 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1
CPUs found: 2
worker threads: 2
number of zones: 15
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/0/1000
tcp clients: 0/100
server is up and running
named (pid 1121) is running.
この「ゾーン数:15」は少し奇妙に思えますか? named.confで定義されているゾーンが1つしかない場合
PDATE 7/14 5:45 PM CST
わかりました、私は以下の提案に従いましたが、物事はまだうまくいきたくないようです。
/ etc/sysconfig/iptablesに追加されました
-A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 53 -j ACCEPT
Dig @ 192.168.100.10 mac1.max.app a戻り値:
; <<>> Dig 9.6.0-Apple-P2 <<>> @192.168.100.10 mac1.max.app a
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48036
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;mac1.max.app. IN A
;; ANSWER SECTION:
mac1.max.app. 86400 IN A 192.168.100.15
;; AUTHORITY SECTION:
max.app. 86400 IN NS dns1.max.app.
;; ADDITIONAL SECTION:
dns1.max.app. 86400 IN A 192.168.100.10
;; Query time: 8 msec
;; SERVER: 192.168.100.10#53(192.168.100.10)
;; WHEN: Thu Jul 14 17:30:53 2011
;; MSG SIZE rcvd: 85
Dig @ 192.168.100.10 mac1.max.app nsreturns
; << >> Dig 9.6.0-Apple-P2 << >> @ 192.168.100.10 mac1.max.app ns; (1台のサーバーが見つかりました);;グローバルオプション:+ cmd ;;答えを得た:;; ->> HEADER <<-オペコード:QUERY、ステータス:NOERROR、ID:28099 ;;フラグ:qr aa rd ra;質問:1、回答:0、権限:1、追加:0
;;質問セクション:; mac1.max.app。 NSで
;;権限セクション:max.app。 86400 IN SOAdns1.max.app。email.gmail.com。2001062501216003600 604800 86400
;;クエリ時間:8ミリ秒;;サーバー:192.168.100.10#53(192.168.100.10);;いつ:2011年7月14日木曜日17:18:23 ;; MSGサイズrcvd:94
nslookupは、namedがポート53にリストされていることを示しています
tcp 0 0 dns1:53 *:* LISTEN 2880/named
tcp 0 0 localhost.localdomain:53 *:* LISTEN 2880/named
いくつかの提案:
resolv.conf
から2つのGoogleネームサーバーを削除します。ネームサーバーに障害が発生していますが、nslookupが次のネームサーバーにフォールスルーしているため、有用な情報があまり得られていません。
Dig
の場合は、代わりにnslookup
を使用してください。 Digからのステータス応答は、トラブルシューティングに役立ちます。
Dig @192.168.100.10 mac1.max.app. a
Dig @192.168.100.10 max.app. ns
ログをチェックして、ゾーンが実際に読み込まれているかどうかを確認してください。
Netstatをチェックして、namedが適切なインターフェイスのポート53でリッスンしていることを確認します。
あなたの名前は127.0.0.1
と::1
でリッスンするように設定されていますが、ホストresolve.confは192.168.100.10
でリッスンするように指示しています。
listen-on {
127.0.0.1;
192.168.100.10;
};
また、ファイアウォールがポート53での接続を許可していることを確認してください。これを行うために/etc/sysconfig/iptables
に次の行があります
-A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 53 -j ACCEPT