DNS: подстановочные домены

8

Если у меня есть подстановочный домен, можно ли перечислить конкретные субдомены, которые переопределяют подстановочный?

Например:

*.domain.com. 3600 IN A 1.2.3.4
foo.domain.com. 3600 IN A 9.9.9.9
неизвестный
источник

Ответы:

10

Да, это работает.

Zoredache
источник
2
Абсолютно. К записи * обращаются только в том случае, если нет более конкретных записей, соответствующих запросу.
Дэвид Макинтош
12

Да, как говорит Зоредаче, «это работает».

Есть некоторые предостережения с подстановочными знаками, которые стоит знать:

  1. Подстановочный знак соответствует одной или нескольким меткам, поэтому в вашем случае foo.bar.domain.comон будет сопоставлен с подстановочным знаком, но bar.foo.domain.comвернется, NXDOMAINпоскольку наличие fooпрепятствует fooсопоставлению любых поддоменов

  2. Подстановочный знак соответствует типу RR. Однако, если записи с подстановочными знаками и переопределением не имеют один и тот же тип RR, тогда переписывающие записи будут все еще «скрывать» подстановочный знак, но вы получите NODATA(т. Е. Нет ответа rcode == NOERROR).

например

$ORIGIN example.com.
*     IN A   192.168.1.1
foo   IN TXT "foo"

% dig @localhost foo.example.com. A
(abbreviated)
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36960
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
Альнитак
источник
1
Извините, но это немного загадочно для меня, чтобы понять.
Неизвестно
Есть определение * .foo.domain.com. работать, чтобы избежать NXDOMAIN для bar.foo.domain.com?
Стив Шнепп
@ Стив - я верю в это, да. (Я не проверял это все же)
Alnitak