Можно ли добавить подстановочный знак CNAME в dnsmasq?

Я хотел бы, чтобы DNS работала циклически. Поэтому я должен поместить запись в / etc / hosts . Однако это не позволяет использовать домены с подстановочными знаками.

Есть ли способ сделать это в dnsmasq?

Таким образом, я получу что-то вроде:

*.test.example.              0       IN      CNAME   mytest.example.
mytest.example.              0       IN      A       192.0.2.123
1
задан 30 May 2018 в 18:14
1 ответ

Я проверил версию 2.77 и обнаружил, что там работает подстановочный знак CNAME. Вы должны добавить в config cname = *. Example.com, default.example.com , но ваш dnsmasq должен быть авторитетным сервером для домена (в данном случае для example.com). Его можно настроить согласно man . В моем случае у меня такая конфигурация:

/ etc / hosts

 127.0.0.1 default.example.com
127.0.0.2 default.example.com
127.0.0.3 default.example.com
127.0.0.4 default.example.com
127.0.0.5 default.example.com
 

/etc/dnsmasq.conf

 cname = *. Example.com, default.example.com
auth-server = example.com, eth0
имя-интерфейса = example.com, eth0
auth-zone = example.com, 127.0.0.0 / 24, eth0
 

И результат:

[root@centos-linux ~]# dig @127.0.0.1 *.example.com

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7_2.3 <<>> @127.0.0.1 *.example.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6531
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;*.example.com.         IN  A

;; ANSWER SECTION:
*.example.com.      600 IN  CNAME   default.example.com.
default.example.com.    600 IN  A   127.0.0.3
default.example.com.    600 IN  A   127.0.0.4
default.example.com.    600 IN  A   127.0.0.5
default.example.com.    600 IN  A   127.0.0.2
default.example.com.    600 IN  A   127.0.0.1

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Jun 05 16:28:13 MSK 2017
;; MSG SIZE  rcvd: 155

[root@centos-linux ~]# nslookup 2.example.com 127.0.0.1
Server:     127.0.0.1
Address:    127.0.0.1#53

Non-authoritative answer:
2.example.com   canonical name = default.example.com.
Name:   default.example.com
Address: 127.0.0.5
Name:   default.example.com
Address: 127.0.0.2
Name:   default.example.com
Address: 127.0.0.3
Name:   default.example.com
Address: 127.0.0.4
Name:   default.example.com
Address: 127.0.0.1
4
ответ дан 3 December 2019 в 17:35

Теги

Похожие вопросы