DNS-сервер конфликтует с командами hostname и domainname
Для установки какого-либо кластерного продукта мне пришлось настроить внутренний DNS-сервер. Я использую CentOS и bind9. Я нацеливаюсь на доменное имя "mydomain.local", а машина, на которой работает DNS-сервер, является "master" (172.16.154.10). Другими компьютерами в кластере являются "узел1" (.11) и "узел2 (.12).
Конфиг DNS вроде нормально, как могу host master
, host node1
или же host node2
с любой из машин и ответов вроде бы все нормально.
Теперь скрипт установки запрашивает имена компьютеров (так, что я не могу это контролировать) и по какой-то причине предлагает, например, node1.mydomain.local.localdomain
, Обратите внимание на дополнительные .localdomain
часть, которая оказывается по умолчанию вы найдете в таких файлах, как /etc/resolv.conf
и тому подобное.
На самом деле, сначала команды вроде hostname
или же domainname
вернется localhost.localdomain
а также localdomain
соответственно. Так что я изменил их (используя установочную версию, например, domainname mydomain.local
) но безрезультатно.
Есть идеи, откуда они могли взяться? Я должен добавить, что эти машины - все виртуальные машины, работающие внутри VMware Fusion.
resolv.conf:
# Generated by NetworkManager
domain mydomain.local
search mydomain.local
nameserver 172.16.154.10 # <-- my 'master' machine
nameserver 172.16.154.2 # <-- NAT address of my VMware Fusion host
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; };
// 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 { localhost; };
allow-query { any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "mydomain.local" {
type master;
file "mydomain.local.fwd";
};
// 172.16.154.10
zone "154.16.172.in-addr.arpa" {
type master;
file "mydomain.local.rev";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
mydomain.local.rev:
$ORIGIN 154.16.172.in-addr.arpa.
$TTL 3D
@ SOA master.mydomain.local. root.mydomain.local. (12 4h 1h 1w 1h)
@ IN NS master.mydomain.local.
10 IN PTR master.mydomain.local.
11 IN PTR node1.mydomain.local.
12 IN PTR node2.mydomain.local.
mydomain.local.fwd:
$ORIGIN mydomain.local.
$TTL 3D
@ SOA master.mydomain.local. root.mydomain.local. (12 4h 1h 1w 1h)
@ IN NS master.mydomain.local.
master.mydomain.local. IN A 172.16.154.10
node1.mydomain.local. IN A 172.16.154.11
node2.mydomain.local. IN A 172.16.154.12
1 ответ
Я понятия не имею, но вы можете найти себя с рекурсивным grep localdomain
в /etc. Например, с помощью ack-grep:
% sudo ack-grep localdomain /etc
[result here]
Вы найдете, какой файл все еще содержит строку localdomain
,