У меня есть два сервера имен с привязкой. веб-сайт, example.com, пингует и отображает нормально, поэтому я знаю, что запись DNS для него в порядке. Но переход на mail.example.com и pinging mail.example.com в 90% случаев дают сбой.
Забавно то, что иногда тест ping действительно находит mail.example.com, и я могу легко проверить свою веб-почту, перейдя на mail.example.com, но это длится всего около 30 минут, а затем любой тест ping после этого возвращается к не возможность разрешить mail.example.com, и я не могу перейти на mail.example.com.
кстати, если я пингую почтовый сервер только по его общедоступному IP-адресу, а не по имени хоста mail.example.com, все в порядке и разрешается в 100% случаев. Я также могу 100% времени перейти на свой IP-адрес почтового сервера в браузере, чтобы проверить свою почту, и все в порядке. Я знаю, что это не проблема сервера, это должен быть DNS.
У меня что-то не так с моим DNS-сервером.
пожалуйста, взгляните на мою информацию ниже и посмотрите, сможете ли вы сказать мне, что я делаю не так.
Pinging mail.phrixis.com [52.27.16.178] with 32 bytes of data:
Request timed out.
на самом деле он показывает IP-адрес моего почтового сервера.
ping mail.phrixis.com
ping: uknown host mail.phrixis.com
он не получает IP-адрес почтового сервера все это время, поэтому он не загружается в браузере.
это как если бы мой DNS-сервер в половине случаев говорил: «Да, я знаю, где находится mail.example.com», а в другой половине - «Нет, я забыл, где находится mail.example.com» .
[root@ns1 ~]# dig @localhost mail.phrixis.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.1 <<>> @localhost mail.phrixis.com
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8581
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;mail.phrixis.com. IN A
;; ANSWER SECTION:
mail.phrixis.com. 86400 IN A 52.27.16.178
;; AUTHORITY SECTION:
phrixis.com. 86400 IN NS ns1.phrixis.com.
phrixis.com. 86400 IN NS ns2.phrixis.com.
;; ADDITIONAL SECTION:
ns1.phrixis.com. 86400 IN A 107.170.58.69
ns2.phrixis.com. 86400 IN A 138.197.212.168
;; Query time: 0 msec
;; SERVER: ::1#53(::1)
;; WHEN: Mon May 8 20:00:02 2017
;; MSG SIZE rcvd: 118
[root@ns1 ~]#
[root@ns1 ~]# dig @localhost phrixis.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.1 <<>> @localhost phrixis.com
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31758
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;phrixis.com. IN A
;; ANSWER SECTION:
phrixis.com. 86400 IN A 162.243.60.215
;; AUTHORITY SECTION:
phrixis.com. 86400 IN NS ns1.phrixis.com.
phrixis.com. 86400 IN NS ns2.phrixis.com.
;; ADDITIONAL SECTION:
ns1.phrixis.com. 86400 IN A 107.170.58.69
ns2.phrixis.com. 86400 IN A 138.197.212.168
;; Query time: 0 msec
;; SERVER: ::1#53(::1)
;; WHEN: Mon May 8 20:03:58 2017
;; MSG SIZE rcvd: 113
[root@ns1 ~]#
//
// 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 { any; };
allow-transfer { localhost; 138.197.212.168; };
recursion no;
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 "phrixis.com" IN {
type master;
file "phrixis.com.zone";
allow-update { none; };
};
$TTL 86400
@ IN SOA ns1.phrixis.com. root.phrixis.com. (
2013042201 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
; Specify our two nameservers
IN NS ns1.phrixis.com.
IN NS ns2.phrixis.com.
; Resolve nameserver hostnames to IP, replace with your two droplet IP addresses.
ns1 IN A 107.170.58.69
ns2 IN A 138.197.212.168
; Define hostname -> IP pairs which you wish to resolve.
@ IN A 162.243.60.215
WWW IN A 162.243.60.215
mail IN A 52.27.16.178
IN MX 10 mail.phrixis.com.
приветствуется любой ответ, поскольку я новичок в использовании DNS-серверов.
Очевидно, почему разрешение DNS иногда работает, а иногда нет. Вы объявили о двух авторитетных серверах имен - ns1.phrixis.com.
и ns2.phrixis.com.
. Один из них - ns2.phrixis.com.
- не разрешает запись DNS -
$ dig @ns1.phrixis.com mail.phrixis.com +short 52.27.16.178 $ dig @ns2.phrixis.com mail.phrixis.com +short $
Решение - убедитесь, что у ns2 также есть правильная запись. Я вижу, что у вас есть блок allow-transfer для ns2 allow-transfer { localhost; 138.197.212.168; };
Но вам необходимо убедиться, что записи зоны реплицируются на ns2.
Если ns2 является вторичным DNS-сервером, убедитесь, что он имеет правильную конфигурацию и что передача зоны от ns1 к ns2 работает.
Также убедитесь, что у ns2 нет брандмауэра, блокирующего порт 53 udp / tcp.
Ссылка на настройку подчиненного DNS-сервера - http://www.microhowto.info/howto/configure_bind_as_a_slave_dns_server.html