У меня возникли проблемы с настройкой BIND в качестве моего частного сервера в корневой зоне.
Я пробовал точку "." (где-то читал) и пустую строку "" (мое неверное предположение) относительно идентификатора корневой зоны (оба имеют синтаксические ошибки)
zone "." { ; sorry
...
};
также
zone "" { ;sorry
...
};
Есть ли у вас какие-нибудь подсказки, как обслуживать корневую зону?
(Мое примечание: обслуживание корневой зоны может отличаться от обслуживания корневого сервера!)
Обновить
Проблема на самом деле заключается в корневой зоне политики ответа ("."):
options {
#response-policy {zone "com"; }; #it is OK (before commenting)
response-policy {zone "."; }; #it makes error when loading the config
};
zone "."{
type master;
file "db/zone.root.db";
};
zone "com"{ #just for syntax test/check
type master;
file "db/zone.root.db";
};
именованный-checkconf -zj named.conf
zone ./IN: NS 'LOCALHOST' has no address records (A or AAAA)
zone ./IN: not loaded due to errors.
_default/./IN: bad zone
zone com/IN: loaded serial 1
НОТА: В обеих конфигурациях: та, которую загружает служба, и другая, которая завершает работу, вывод одинаковый.
dig www.google.com @ 127.0.0.1
01 ; <<>> DiG 9.10.4-P2 <<>> www.google.com @127.0.0.1
02 ;; global options: +cmd
03 ;; Got answer:
04 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58406
05 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1
06
07 ;; OPT PSEUDOSECTION:
08 ; EDNS: version: 0, flags:; udp: 4096
09 ;; QUESTION SECTION:
10 ;www.google.com. IN A
11
12 ;; ANSWER SECTION:
13 www.google.com. 5 IN CNAME nosslsearch.google.com.rpz.zone.
14 nosslsearch.google.com.rpz.zone. 3600 IN A 216.239.32.20
15
16 ;; AUTHORITY SECTION:
17 rpz.zone. 3600 IN NS LOCALHOST.
18
19 ;; Query time: 44 msec
20 ;; SERVER: 127.0.0.1#53(127.0.0.1)
21 ;; WHEN: Mon Aug 01 17:07:14 Daylight Time 2016
22 ;; MSG SIZE rcvd: 127
Примечание. См. Строку 13 и завершающий ".rpz.zone".
nslookup
01 > server 127.0.0.1
02 Default server: 127.0.0.1
03 Address: 127.0.0.1#53
04 > www.google.com
05 Server: 127.0.0.1
06 Address: 127.0.0.1#53
07
08 Non-authoritative answer:
09 www.google.com canonical name = nosslsearch.google.com.rpz.zone.
10 Name: nosslsearch.google.com.rpz.zone
11 Address: 216.239.32.20
пинг www.google.com -n 1
1 Pinging nosslsearch.google.com.rpz.zone [216.239.32.20] with 32 bytes of data:
2 Reply from 216.239.32.20: bytes=32 time=149ms TTL=45
3
4 Ping statistics for 216.239.32.20:
5 Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
6 Approximate round trip times in milli-seconds:
7 Minimum = 149ms, Maximum = 149ms, Average = 149ms
Сводка приведенных выше фрагментов вывода: rpz.zone добавляется везде, поэтому я подумал о переходе в корневую область.
А это мой
файл zone.root.db
01 $TTL 1H
02 @ SOA LOCALHOST. named-mgr.example.com (1 1h 15m 30d 2h)
03 NS LOCALHOST.
04
05 nosslsearch.google.com A 216.239.32.20
06 google.com CNAME nosslsearch.google.com
07 www.google.com CNAME nosslsearch.google.com
08
Я просто хочу избавиться от добавления rp.zone к ответам !, как?
Зоны RPZ имеют особую семантику определено, так что имя зоны фактически не имеет отношения к ее работе.
На самом деле, название следует выбирать так, чтобы оно не противоречило реальным зонам. Данные RPZ, загружаемые из зоны, - это просто способ использовать существующие механизмы загрузки / синхронизации зоны.
Так что вы бы не хотели называть зону РПЗ .
или com
или что-нибудь в этом роде. Однако, поскольку он загружается как зона, стандартные спецификации главного файла действительно применяются к тому, как интерпретируется содержимое.
например, для зоны с именем example
, последующий
www.google.com CNAME nosslsearch.google.com
средства
www.google.com.example. CNAME nosslsearch.google.com.example.
(если явно не переопределить $ORIGIN
)
Хотя RPZ определяет имя владельца (крайний левый столбец) таким образом, что при сопоставлении по имени запроса он автоматически добавляет имя зоны RPZ,
QNAME
Записи политики QNAME запускаются по именам запросов запросов и целей записей CNAME, разрешенных для генерации ответа. Имя владельца записи политики QNAME - это имя запроса, относящееся к зоне политики.
данные записи CNAME (справа) используются как есть в случаях, когда вы предоставляете локальные данные. (То есть, когда данные CNAME не являются одним из особых случаев, определенных в RPZ, например rpz-drop.
, .
, *.
, и т.д)
Местные данные
Для ответа на запросы можно использовать набор обычных DNS-записей. На запросы о типах записей, отличных от заданных, отвечает NODATA.
Особой формой локальных данных является CNAME, целью которой является подстановочный знак, например * .example.com. Он используется, как если бы был обычным CNAME после того, как астриск (*) был заменен именем запроса. Назначение этой специальной формы - регистрация запросов на авторитетном DNS-сервере огороженного сада.
Короче говоря, вместо этого вам нужно что-то вроде этого:
www.google.com CNAME nosslsearch.google.com.