내 호스트를 게이트웨이 역할도 하는 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; };