ホストをゲートウェイとしても機能するDNSサーバーとして実行しようとしています。
私のもの/etc/named.conf次のように:
options {
directory "/var/named/";
allow-query {127.0.0.1; 192.168.64.0/24;};
forwarders { 192.168.48.2; };
};
zone "localhost" {
type master;
file "named.localhost";
};
zone "huh.dod" {
type master;
file "mydb-huh-dod";
};
私のもの/var/named/mydb-huh-dod:
$TTL 3D
@ IN SOA host.huh.dod. hostmaster.huh.dod.(
2018042901 ; Serial
8H ; Refresh
2H ; Retry
1W ; Expire
1D ; Negative Cache TTL
);
@ IN NS host.huh.dod.
host IN A 192.168.64.1
私のホスト名をホストに設定し、次のようにドメイン名を設定しました。/etc/sysconfig/network-scripts/ifcfg-eth0ファイル検索パラメータ:
DNS1="192.168.64.1"
IPADDR="192.168.48.10"
NETMASK="255.255.255.0"
GATEWAY="192.168.48.2"
SEARCH="huh.dod"
だから/etc/resolv.conf良い:
# Generated by NetworkManager
search huh.dod
nameserver 192.168.64.1
ホストコマンドを使用しようとしましたが拒否されました。
host host
host.huh.dod has address 192.168.64.1
Host host.huh.dod not found: 5(REFUSED)
Host host.huh.dod not found: 5(REFUSED)
host host.huh.dod
host.huh.dod has address 192.168.64.1
Host host.huh.dod not found: 5(REFUSED)
Host host.huh.dod not found: 5(REFUSED)
何が問題なのかよく分からない。
たぶん私のiptablesファイアウォールに関連していますか?
出力netstat -anlp |ネットワーク統計53 | grep 53 grep を聴く
tcp 0 0 192.168.64.1:53 0.0.0.0:* LISTEN 942/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 942/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 942/named
tcp6 0 0 ::1:953 :::* LISTEN 942/named
名前が実行中です。
答え1
おおよその目視検査では、部品はoptions {}
かなり平凡に見えます。
次のディレクティブがありませんlisten-on
。
options {
listen-on port 53 { 192.168.64.1; 127.0.0.1; };
.....
};
このディレクティブがない場合、BIND は期待されるインターフェイスを受信しません。
答え2
出力によると、netstat
BINDはIPアドレスが192.168.64.1のホストで実行されています。
クライアントホスト(つまり、ファイルを含むホストifcfg-eth0
)に
DNS1="192.168.64.1"
IPADDR="192.168.48.10"
NETMASK="255.255.255.0"
...
だからDNSサーバーアドレスは正しいが、クライアント自体アドレスは192.168。48.10...設定オプションの値と一致しませんallow-query
。
allow-query {127.0.0.1; 192.168.64.0/24;};
この構成では、192.168.64.1 の BIND は、192.168 の問合せを除くすべての問合せを拒否します。64.*ネットワークとBINDサーバーホスト自体。クライアントアドレス 192.168.48.10 は指定されたネットワークの外部にあるため、当然拒否されます。
この特定のクライアントが192.168.64.*ネットワークの外部でのみ機能するようにするには、allow-query
BIND構成の次の設定を使用します。
allow-query { 127.0.0.1; 192.168.64.0/24; 192.168.48.10; };
または、192.168.48。*ネットワーク全体でアクセスを許可したい場合:
allow-query { 127.0.0.1; 192.168.64.0/24; 192.168.48.0/24; };