névserver gond

 ( andrasferenc | 2014. március 7., péntek - 22:16 )

Működtetek egy OpenSuSe 11.4 es servert benne egy névserverrel, ami azonban nem csinálja a reverse feloldást. Ezt mondja:

zone 2.168.192.in-addr.arpa/IN: NS '4.2.168.192.in-addr.arpa' has no address records (A or AAAA)
zone 2.168.192.in-addr.arpa/IN: not loaded due to errors.

A dig -x 192.168.2.4 @localhost ra nem talál semmit.
Az nslookup a microserver1.intranet.domainnev.hu -re kiadja a 192.168.2.4 es címet.

A BIND version: 9.7.6-P4

Yasttal lett beállíva minden, automatikusan csinálja a reverse zonát. A neveket föloldja, de fordítva nem működik.

Ezek a zonák:
$TTL 2d
@ IN SOA microserver1.intranet.domainnev.hu. postmaster.domainnev.hu. (
2014030710 ; serial
1d ; refresh
2h ; retry
4w ; expiry
1h ) ; minimum

intranet.domainnev.hu. IN NS microserver1.intranet.domainnev.hu.
intranet.domainnev.hu. IN MX 10 microserver1.intranet.domainnev.hu.
microserver1 IN A 192.168.2.4
wre54g IN A 192.168.2.51
switch IN A 192.168.2.50
router1 IN A 192.168.2.1
mail IN CNAME microserver1
smtp IN CNAME microserver1
expander IN CNAME wre54g
router IN CNAME router1
proxy IN CNAME microserver1
srv1 IN CNAME microserver1
ftp IN CNAME microserver1

a reverse zóna:

$TTL 2D
@ IN SOA microserver1.intranet.dominnev.hu. postmaster.dominnev.hu.
2014030712 ; serial
3H ; refresh
1H ; retry
1W ; expiry
1D ) ; minimum
2.168.192.in-addr.arpa. IN NS 4.2.168.192.in-addr.arpa.
4.2.168.192.in-addr.arpa. IN PTR microserver1.intranet.dominnev.hu.
51.2.168.192.in-addr.arpa. IN PTR wre54g.intranet.dominnev.hu.
50.2.168.192.in-addr.arpa. IN PTR switch.intranet.dominnev.hu.
1.2.168.192.in-addr.arpa. IN PTR router1.intranet.dominnev.hu.

a named.conf file (jogok root.named 640)

# Copyright (c) 2001-2004 SuSE Linux AG, Nuernberg, Germany.
# All rights reserved.
#
# Author: Frank Bodammer, Lars Mueller
#
# /etc/named.conf
#
# This is a sample configuration file for the name server BIND 9. It works as
# a caching only name server without modification.
#
# A sample configuration for setting up your own domain can be found in
# /usr/share/doc/packages/bind/sample-config.
#
# A description of all available options can be found in
# /usr/share/doc/packages/bind/misc/options.

options {

# The directory statement defines the name server's working directory

directory "/var/lib/named";

# Write dump and statistics file to the log subdirectory. The
# pathenames are relative to the chroot jail.

dump-file "/var/log/named_dump.db";
statistics-file "/var/log/named.stats";

# The forwarders record contains a list of servers to which queries
# should be forwarded. Enable this line and modify the IP address to
# your provider's name server. Up to three servers may be listed.

#forwarders { 192.0.2.1; 192.0.2.2; };

# Enable the next entry to prefer usage of the name server declared in
# the forwarders section.

#forward first;

# The listen-on record contains a list of local network interfaces to
# listen on. Optionally the port can be specified. Default is to
# listen on all interfaces found on your system. The default port is
# 53.

#listen-on port 53 { 127.0.0.1; };

# The listen-on-v6 record enables or disables listening on IPv6
# interfaces. Allowed values are 'any' and 'none' or a list of
# addresses.

listen-on-v6 { none; };

# The next three statements may be needed if a firewall stands between
# the local server and the internet.

#query-source address * port 53;
#transfer-source * port 53;
#notify-source * port 53;

# The allow-query record contains a list of networks or IP addresses
# to accept and deny queries from. The default is to allow queries
# from all hosts.

#allow-query { 127.0.0.1; };

# If notify is set to yes (default), notify messages are sent to other
# name servers when the the zone data is changed. Instead of setting
# a global 'notify' statement in the 'options' section, a separate
# 'notify' can be added to each zone definition.

notify no;
include "/etc/named.d/forwarders.conf";
};

# To configure named's logging remove the leading '#' characters of the
# following examples.
#logging {
# # Log queries to a file limited to a size of 100 MB.
# channel query_logging {
# file "/var/log/named_querylog"
# versions 3 size 100M;
# print-time yes; // timestamp log entries
# };
# category queries {
# query_logging;
# };
#
# # Or log this kind alternatively to syslog.
# channel syslog_queries {
# syslog user;
# severity info;
# };
# category queries { syslog_queries; };
#
# # Log general name server errors to syslog.
# channel syslog_errors {
# syslog user;
# severity error;
# };
# category default { syslog_errors; };
#
# # Don't log lame server messages.
# category lame-servers { null; };
#};

# The following zone definitions don't need any modification. The first one
# is the definition of the root name servers. The second one defines
# localhost while the third defines the reverse lookup for localhost.

zone "." in {
type hint;
file "root.hint";
};

zone "localhost" in {
type master;
file "localhost.zone";
};

zone "0.0.127.in-addr.arpa" in {
type master;
file "127.0.0.zone";
};

# Include the meta include file generated by createNamedConfInclude. This
# includes all files as configured in NAMED_CONF_INCLUDE_FILES from
# /etc/sysconfig/named

include "/etc/named.conf.include";
zone "intranet.domainnev.hu" in {
allow-transfer { any; };
file "master/intranet.domainnev.hu";
type master;
};
logging {
category queries { log_file; };
channel log_file { file "/var/lib/named/log/named.log" versions 5 size 15M; };
category default { log_file; };
};
zone "2.168.192.in-addr.arpa" in {
allow-transfer { any; };
file "master/2.168.192.in-addr.arpa";
type master;
};

# You can insert further zone records for your own domains below or create
# single files in /etc/named.d/ and add the file names to
# NAMED_CONF_INCLUDE_FILES.
# See /usr/share/doc/packages/bind/README.SUSE for more details.

még a resolv conf is fontos lehet:

### /etc/resolv.conf file autogenerated by netconfig!
#

# Before you change this file manually, consider to define the
# static DNS configuration using the following variables in the
# /etc/sysconfig/network/config file:
# NETCONFIG_DNS_STATIC_SEARCHLIST
# NETCONFIG_DNS_STATIC_SERVERS
# NETCONFIG_DNS_FORWARDER
# or disable DNS configuration updates via netconfig by setting:
# NETCONFIG_DNS_POLICY=''
#
# See also the netconfig(8) manual page and other documentation.
#
# Note: Manual change of this file disables netconfig too, but
# may get lost when this file contains comments or empty lines
# only, the netconfig settings are same with settings in this
# file and in case of a "netconfig update -f" call.
#
### Please remove (at least) this line when you modify the file!
search intranet.domainnev.hu
nameserver 127.0.0.1
nameserver 84.2.44.1
nameserver 84.2.46.1

Próbáltam körülnézni a neten, de semmi használhatót nem találtam. Tudna valaki segíteni? köszi.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

"zone 2.168.192.in-addr.arpa/IN: not loaded due to errors."

Ez elég beszédes.
Szerintem hiányzik egy nyitó zárójel ("(") az IN sorából.


$TTL 2D
@ IN SOA microserver1.intranet.dominnev.hu. postmaster.dominnev.hu.
2014030712 ; serial

helyett


$TTL 2D
@ IN SOA microserver1.intranet.dominnev.hu. postmaster.dominnev.hu. (
2014030712 ; serial

kellene.

HZ megmutatta a többsoros SOA problémájának okát. Kiegészítésként még annyit, hogy az ilyen hibát logolja is a bemásolt üzenet előtt a problémás sor megjelölésével így: "error: dns_rdata_fromtext: filename:2: near eol: unexpected end of input". Ebből rögtön látszik, hogy melyik sorban van a baj. De ha ez sem lenne még elég, akkor ott a bind mellé kapott named-checkzone, ami konkrétan rávilágít: "unbalanced parentheses".
 
 
Ez pedig a másik:
"2.168.192.in-addr.arpa. IN NS 4.2.168.192.in-addr.arpa."

NS rekordban reverse zónába tartozó név?! A forward zónáid szerint azokat a "microserver1.intranet.domainnev.hu." nevű szerver szolgálja ki. A 2.168.192.in-addr.arpa zóna is pont ugyanazon a szerveren lesz. Akkor abban a zónában szereplő módon kellene írni az NS rekordot itt is, hiszen a nameserver neve is ugyanaz. Az NS rekordban olyan nevet kell megadnod, amely egy A (vagy AAAA) rekorddal IP címmé feloldható. Az A rekord IP-t ad meg (míg a PTR rekord egy másik, DNS-ben szereplő névre hivatkozik). Mivel a hivatkozott névhez ilyen A rekord nem található, így a nameserver IP-je sem ismert. Ezért írja a hibaüzenetben, hogy "NS '4.2.168.192.in-addr.arpa' has no address records (A or AAAA)".
 
 
 
"Próbáltam körülnézni a neten, de semmi használhatót nem találtam."
Az alapdokumentum: RFC 1035: DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION
 
 
Azon belül is az NS rekord problémájára:
3.3.11. NS RDATA format:

NSDNAME         A <domain-name> which specifies a host which should be
                authoritative for the specified class and domain.

NS records cause both the usual additional section processing to locate
a type A record...

 
 
A zárójeles problémára:
5.1. Format:

( )             Parentheses are used to group data that crosses a line
                boundary.  In effect, line terminations are not
                recognized within parentheses.

Hm. Ennyire nem néztem át. :(

Köszi a válaszokat, de a bemásoláskor valahogy kitöröltem azt a zárójelet a sor végéről, szóval valójában ott van az a zárójel, máshol kell legyen a hiba. üdv.

Igen, pont ez szerepel az előző hozzászólásomban. Megnézted azt is? (Újra: nem jó az NS rekordod, mert nem olyan névre hivatkozik, ami A rekorddal feloldható. Más szavakkal: nem az a szervered neve, amit megadtál.)

Köszi, igazad van, ez tényleg megoldotta. Azért leírom a hozzám hasonló kezdők kedvéért, hogy mi volt a hiba. Ez volt a hibás sor:
2.168.192.in-addr.arpa. IN NS 4.2.168.192.in-addr.arpa.
erre javítottam ki:
2.168.192.in-addr.arpa. IN NS microserver1.intranet.dominnev.hu.
Most már válaszol a dig -x re, megmondja hogy melyik ipnek mi a neve.
Mégegyszer köszi.