LINUX.ORG.RU
решено ФорумAdmin

DNS cache sort order

 


0

1

Почему оно мне из моего же кеша возвращает различный порядок A записей?

root@gw:~# dig imap.yandex.ru

root@gw:~# dig imap.yandex.ru

; <<>> DiG 9.8.1-P1 <<>> imap.yandex.ru
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41191
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 2, ADDITIONAL: 4

;; QUESTION SECTION:
;imap.yandex.ru.			IN	A

;; ANSWER SECTION:
imap.yandex.ru.		202	IN	A	93.158.134.124
imap.yandex.ru.		202	IN	A	213.180.193.124
imap.yandex.ru.		202	IN	A	213.180.204.124
imap.yandex.ru.		202	IN	A	77.88.21.124
imap.yandex.ru.		202	IN	A	87.250.250.124

;; AUTHORITY SECTION:
yandex.ru.		107519	IN	NS	ns1.yandex.ru.
yandex.ru.		107519	IN	NS	ns2.yandex.ru.

;; ADDITIONAL SECTION:
ns1.yandex.ru.		264370	IN	A	213.180.193.1
ns1.yandex.ru.		1345	IN	AAAA	2a02:6b8::1
ns2.yandex.ru.		264370	IN	A	93.158.134.1
ns2.yandex.ru.		1345	IN	AAAA	2a02:6b8:0:1::1

;; Query time: 1 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Wed Oct  2 16:25:51 2013
;; MSG SIZE  rcvd: 236

root@gw:~# dig imap.yandex.ru

; <<>> DiG 9.8.1-P1 <<>> imap.yandex.ru
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60865
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 2, ADDITIONAL: 4

;; QUESTION SECTION:
;imap.yandex.ru.			IN	A

;; ANSWER SECTION:
imap.yandex.ru.		199	IN	A	213.180.204.124
imap.yandex.ru.		199	IN	A	77.88.21.124
imap.yandex.ru.		199	IN	A	87.250.250.124
imap.yandex.ru.		199	IN	A	93.158.134.124
imap.yandex.ru.		199	IN	A	213.180.193.124

;; AUTHORITY SECTION:
yandex.ru.		107516	IN	NS	ns2.yandex.ru.
yandex.ru.		107516	IN	NS	ns1.yandex.ru.

;; ADDITIONAL SECTION:
ns1.yandex.ru.		264367	IN	A	213.180.193.1
ns1.yandex.ru.		1342	IN	AAAA	2a02:6b8::1
ns2.yandex.ru.		264367	IN	A	93.158.134.1
ns2.yandex.ru.		1342	IN	AAAA	2a02:6b8:0:1::1

;; Query time: 2 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Wed Oct  2 16:25:55 2013
;; MSG SIZE  rcvd: 236

★★★★★

Потому, что у A-записей нет порядка. Более того, при наличии нескольких A-записей сервер должен возвращать их в round-robin.

no-dashi ★★★★★ ()
Ответ на: комментарий от no-dashi

Мне нужно обосновать покупку полноценного резервного канала у провайдера.

DALDON ★★★★★ ()
Ответ на: комментарий от no-dashi

Огромное тебе спасибо, что не поленился и нашёл! Собственно ответ есть более чем прямой:

BIND 4.9 and later versions do away with the shuffle address record as a separate record type, subject to special handling. Instead, a modern name server rotates addresses for any domain name that has more than one A record.

DALDON ★★★★★ ()
Ответ на: комментарий от blind_oracle

То есть они каждую вкладку/группу вкладок - могут дёргаться по разным A записям? В целом выглядит логично и здраво.

DALDON ★★★★★ ()
Последнее исправление: DALDON (всего исправлений: 2)
Ответ на: комментарий от DALDON

Ну т.к. А записи используются обычно для отказоустойчивости и некоторого распределения нагрузки, то если браузер не может подключиться по первому адресу, который ему ДНС выдал, он пробует второй и так далее.

blind_oracle ★★★★★ ()
Ответ на: комментарий от DALDON

Это конечно зависит от разработчика браузера, но мне кажется что браузеры стараются для каждого доменаи использовать один и тот-же IP. Т.е. получив DNS ответ браузер его сохраняет и уже не крутит, а просто обходит по порядку, переходя к следующему адресу если текущий не отвечает. Мне кажется это более логичным.

Кстати не все браузеры понимают несколько A записей. Некоторые винтажные браузеры долбятся только по адресу в ответе. Благо таких сейчас не много.

MrClon ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.