consul DNS+ dnsmasq實現域名解析配置

consul DNS+ dnsmasq實現域名解析配置

dnsmasq簡介

Dnsmasq 提供 DNS 緩存和 DHCP 服務功能。作爲域名解析服務器(DNS),dnsmasq可以通過緩存 DNS 請求來提高對訪問過的網址的連接速度。作爲DHCP 服務器,dnsmasq 可以用於爲局域網電腦分配內網ip地址和提供路由。DNS和DHCP兩個功能可以同時或分別單獨實現。dnsmasq輕量且易配置,適用於個人用戶或少於50臺主機的網絡。此外它還自帶了一個 PXE 服務器。

dnsmasq解析流程

dnsmasq先去解析hosts文件, 再去解析/etc/dnsmasq.d/下的*.conf文件,並且這些文件的優先級要高於dnsmasq.conf,我們自定義的resolv.dnsmasq.conf中的DNS也被稱爲上游DNS,這是最後去查詢解析的; 如果不想用hosts文件做解析,我們可以在/etc/dnsmasq.conf中加入no-hosts這條語句,這樣的話就直接查詢上游DNS了,如果我們不想做上游查詢,就是不想做正常的解析,我們可以加入no-reslov這條語句。

安裝dnsmasq

yum -y install dnsmasq

配置dnsmasq

[root@redis dnsmasq.d]# cat /etc/dnsmasq.d/resolv.conf 
server=/consul/172.16.10.205#8600
server=/consul/172.16.10.206#8600
server=/consul/172.16.10.207#8600
server=100.100.2.136
server=100.100.2.138
  • consul域名通過consul的DNS進行解析,其它都是通過默認DNS進行解析

  • 172.16.10.205、172.16.10.206、172.16.10.207爲consul服務的IP

啓動dnsmasq服務

systemctl start dnsmasq

測試consul域名解析

dig @127.0.0.1 minio.service.consul
[root@redis dnsmasq.d]# dig @127.0.0.1 minio.service.consul

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> @127.0.0.1 minio.service.consul
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51922
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 5

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;minio.service.consul.          IN      A

;; ANSWER SECTION:
minio.service.consul.   0       IN      A       172.16.10.227
minio.service.consul.   0       IN      A       172.16.10.228
minio.service.consul.   0       IN      A       172.16.10.226
minio.service.consul.   0       IN      A       172.16.10.229

;; ADDITIONAL SECTION:
minio.service.consul.   0       IN      TXT     "consul-network-segment="
minio.service.consul.   0       IN      TXT     "consul-network-segment="
minio.service.consul.   0       IN      TXT     "consul-network-segment="
minio.service.consul.   0       IN      TXT     "consul-network-segment="

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: 五 3月 27 10:49:35 CST 2020
;; MSG SIZE  rcvd: 257

修改機器DNS服務器

/etc/resolv.conf配置成nameserver 127.0.0.1即可使用dnsmasq提供DNS解析服務

consul負載均衡測試

image-20200327105442036

image-20200327105506592

image-20200327105517872

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章