dnsmasq reverse iplookup не работает без записи ptr в файле конфигурации

у меня есть настройка dnsmasq на моем сервере. По некоторым соображениям безопасности мне не разрешено изменять файл /etc/hosts или создавать какие-либо дополнительные файлы hosts для хранения имени хоста и IP-адресов.

поэтому в файле dnsmasq.conf я добавил имя хоста и IP-адрес,

address=/node01.black.system/10.248.11.21

и когда я печатаю

nslookup node01.black.system

я получаю результирующий IP-адрес. Но это не наоборот. Если я сделаю

nslookup 10.248.11.21

я получаю сервер не может найти...:NXDOMAIN

однако, когда я добавляю запись ptr в файл dnsmasq.conf

ptr-record=21.11.248.10.in-addr.arpa., node01.black.system

а потом, если я наберу

nslookup 10.248.11.21

я получаю результирующее имя хоста. Есть ли способ, чтобы это работало в обе стороны, без добавления записи ptr?

потому что есть около 100 узлов, которые в любом случае потребуют разрешения на сервере

Спасибо


person Abel    schedule 01.09.2020    source источник


Ответы (1)


Возможно, вы ищете директиву --host-record, которая создает запись A и PTR.

 --host-record=<name>[,<name>....],[<IPv4-address>],[<IPv6-address>][,<TTL>]
   Add A, AAAA and PTR records to the DNS...

e.g.

host-record=node01.black.system,10.248.11.21

Принимая во внимание, что, согласно справочной странице dnsmasq, параметр address определяет IP-адрес, возвращаемый для любого адреса в домене. В нем не упоминается создание записи PTR.

 -A, --address=/<domain>/[domain/]<ipaddr>
   Specify  an  IP address to return for any host in the given domains. 
   Queries in the domains are never forwarded and always replied to with
   the specified IP address which may be IPv4 or IPv6.

Поскольку вам запрещено изменять файл /etc/hosts или создавать какие-либо дополнительные хосты, следующее может не относиться к вашей ситуации; но я считаю их полезными и связанными. Эти два параметра позволяют определять хосты за пределами обычного /etc/hosts и конфигурации dnsmasq.

 -H, --addn-hosts=<file>
   Additional  hosts  file.  Read  the specified file as well as /etc/hosts. 
   If -h is given, read only the specified file. This option may be repeated for 
   more than one additional hosts file. If a directory is given, then
   read all the files contained in that directory.

 --hostsdir=<path>
   Read all the hosts files contained in the directory. New or changed files are 
   read automatically. See --dhcp-hostsdir for details.
person Brian Keffer    schedule 19.03.2021