У меня был запрос о том, как можно заказать следующие записи о том, как записи настроены в файле зоны.
Я сделал 2 разных теста
Я настроил следующие записи в файле зоны e164enum.net со значением TTL как 0
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673454@ATLANTA.COM;user=phone!" .
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673453@ATLANTA.COM;user=phone!" .
Теперь всякий раз, когда я запускаю на сервере привязки запрос «dig» для «dig 2.7.5.2.7.9.2.5.3.1.8.e164enum.net. NAPTR»
Я получаю такие ответы, как, переключено в разделе ответов
Первый запрос на раскопки
;; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> 2.7.5.2.7.9.2.5.3.1.8.e164enum.net. NAPTR
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37270
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR
;; ANSWER SECTION:
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673453@ATLANTA.COM\;user=phone!" .
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673454@ATLANTA.COM\;user=phone!" .
;; AUTHORITY SECTION:
e164enum.net. 0 IN NS HP3bl10VM5DNS.e164enum.net.
;; ADDITIONAL SECTION:
HP3bl10VM5DNS.e164enum.net. 0 IN A 10.54.212.235
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Jul 19 00:31:16 IST 2016
;; MSG SIZE rcvd: 261
Второй запрос
; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> 2.7.5.2.7.9.2.5.3.1.8.e164enum.net. NAPTR
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40073
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR
;; ANSWER SECTION:
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673454@ATLANTA.COM\;user=phone!" .
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673453@ATLANTA.COM\;user=phone!" .
;; AUTHORITY SECTION:
e164enum.net. 0 IN NS HP3bl10VM5DNS.e164enum.net.
;; ADDITIONAL SECTION:
HP3bl10VM5DNS.e164enum.net. 0 IN A 10.54.212.235
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Jul 19 00:31:19 IST 2016
;; MSG SIZE rcvd: 261
Как я вижу, ответы (ответы RR) от сервера привязки переключаются для каждого раскопок
Поскольку я не хотел, чтобы ответы переключались при каждой последующей раскопке, и я хотел, чтобы ответы были в том же порядке, в котором они были настроены в файле зоны (поскольку порядок и предпочтения обеих этих записей были одинаковыми), я включил это строка в поле параметров named.conf
rrset-order {order fixed;};
и перезапущен по имени
Я снова выполнил запрос на копание. На этот раз ответы не переключились, но я обнаружил, что второй настроенный RR всегда отвечал как первый. -order всегда будет возвращать ответы RR в том же порядке, что и в файле зоны)
Запрос №1
; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> 2.7.5.2.7.9.2.5.3.1.8.e164enum.net. NAPTR
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18221
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR
;; ANSWER SECTION:
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673453@ATLANTA.COM\;user=phone!" .
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673454@ATLANTA.COM\;user=phone!" .
;; AUTHORITY SECTION:
e164enum.net. 0 IN NS HP3bl10VM5DNS.e164enum.net.
;; ADDITIONAL SECTION:
HP3bl10VM5DNS.e164enum.net. 0 IN A 10.54.212.235
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Jul 19 00:36:30 IST 2016
;; MSG SIZE rcvd: 261
Запрос №2
; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> 2.7.5.2.7.9.2.5.3.1.8.e164enum.net. NAPTR
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17082
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;2.7.5.2.7.9.2.5.3.1.8.e164enum.net. IN NAPTR
;; ANSWER SECTION:
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673453@ATLANTA.COM\;user=phone!" .
2.7.5.2.7.9.2.5.3.1.8.e164enum.net. 0 IN NAPTR 100 10 "u" "E2U+sip" "!^.*$!sip:7895673454@ATLANTA.COM\;user=phone!" .
;; AUTHORITY SECTION:
e164enum.net. 0 IN NS HP3bl10VM5DNS.e164enum.net.
;; ADDITIONAL SECTION:
HP3bl10VM5DNS.e164enum.net. 0 IN A 10.54.212.235
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Jul 19 00:36:33 IST 2016
;; MSG SIZE rcvd: 261
Почему Bind отвечает на Второй RR как первый, а не мой оригинальный Первый RR как первый ответ?
В документации по связыванию говорится (для моей версии 9.9.5):
В этом выпуске BIND 9 инструкция rrset-order по умолчанию не поддерживает "фиксированный" порядок. Фиксированный порядок можно включить во время компиляции, указав "--enable-fixed-rrset" в
командную строку "настроить".
Так что, возможно, проблема в вашей версии привязки. Вы не указали, какой именно используете, может стоит попробовать с другой версией?