《Windows Azure Platform 系列文章目錄》
本文介紹如何使用Azure Linux設置unbound本地轉發和轉發域。
1.我們可以通過下面的命令,安裝unbound
yum install unbound -y
2.啓動unbound
systemctl start unbound
3.設置開機自動啓動:
systemctl enable unbound
4.unbound框架主要包含如下內容:
(1)Server:
Server常見的設置包括:interface、access-control,username
(2)local-zone:
local-zone主要是設置DNS服務器提供的各種主機名對應的IP地址解析的信息
(3)remote-control
(4)stub-zone
stub-zone主要是進行一些特殊的設置,包括別名、CNAME等
(5)forward-zone
forward-zone主要是用來設置轉發功能
以下演示環境中,dnsvm01這臺虛擬機,爲DNS解析服務器
webpublic02這臺虛擬機,爲客戶端VM
5.我們修改/etc/unbound/unbound.conf配置文件,(記得之前備份一下)
(1)在第46行,修改interface在dns server本機的內網IP地址
interface: 10.1.0.4
(2)在第240行,修改access-control爲允許所有
access-control: 0.0.0.0/0 allow
(3)在第292行,修改username爲空
username: ""
(4)觀察第677行,include: /etc/unbound/local.d/*.conf表示在unbound.conf配置文件裏,默認是會包含/etc/unbound/local.d/目錄下所有後綴爲conf的文件的,一般我們local-zone的信息就是通過這樣的方式提供的
include: /etc/unbound/local.d/*.conf
6.我們先進行本地DNS解析,我們進入DNS服務器的路徑:/etc/unbound/local.d/目錄中,新建一個文件叫:local.conf。
[root@dnsvm01 ~]# cd /etc/unbound/local.d [root@dnsvm01 local.d]# ll total 8 -rw-rw-r--. 1 root unbound 359 Nov 27 2019 block-example.com.conf -rw-r--r--. 1 root root 75 Dec 17 06:42 local.conf
在該文件裏設置本地DNS解析。這裏設置域名爲leizhang.com,且設置爲靜態解析。域名1.leizhang.com的A記錄指向到IP 1.1.1.1
local-zone: "leizhang.com." static local-data: "1.leizhang.com. A 1.1.1.1"
7.設置完畢後,執行unbound-checkconf,檢查一下配置是否有錯誤。最後執行systemctl restart unbound,重啓unbound服務。
8.修改客戶端的VM所在的虛擬網絡DNS地址,將DNS IP設置爲unbound dn server的內網IP地址:10.1.0.4,如下圖:
9.先驗證一下,客戶端VM的dns解析,都指向到了unbound dns server,我們執行cat /etc/resolv.conf
[root@webpublic02 ~]# cat /etc/resolv.conf # Generated by NetworkManager search reddog.microsoft.com nameserver 10.1.0.4
10.在客戶端VM上,執行本地DNS域名解析:
[root@webpublic02 ~]# nslookup 1.leizhang.com Server: 10.1.0.4 Address: 10.1.0.4#53 Name: 1.leizhang.com Address: 1.1.1.1
11.然後我們配置轉發域,我們進入DNS服務器的路徑:/etc/unbound/conf.d,新建forward.conf文件,作爲轉發域設置。
在forward.conf中,進行如下設置:
forward-zone: name: "blob.core.windows.net" forward-addr: 168.63.129.16 forward-addr: 168.63.129.16@53 # forward to port 5355.
12.設置完畢後,執行unbound-checkconf,檢查一下配置是否有錯誤。最後執行systemctl restart unbound,重啓unbound服務。
13.新建Azure Blob存儲賬戶,名稱設置爲leilabstorage03,然後創建Private Endpoint,如下圖:
14.創建private endpoint過程中,選擇自動創建Private DNS Zone,名稱爲privatelink.blob.core.windows.net,步驟略。
將上面的Private DNS Zone與DNS Server所在的VNet做關聯,步驟略。
15.Private DNS Zone創建完畢後,會新建1條新的A記錄。如下圖:
16.這樣整體流程是,客戶端虛擬機將DNS請求發送給DNS Server,DNS Server發現這些域名域名需要進行轉發,則轉發給Azure DNS:168.63.129.16
17.最後我們在客戶端虛擬機,進行測試:
[root@webpublic02 ~]# nslookup leilabstorage03.blob.core.windows.net
Server: 10.1.0.4
Address: 10.1.0.4#53
Non-authoritative answer:
leilabstorage03.blob.core.windows.net canonical name = leilabstorage03.privatelink.blob.core.windows.net.
Name: leilabstorage03.privatelink.blob.core.windows.net
Address: 10.0.3.5
上面的10.0.3.5,就是我們在Private DNS Zone裏做的A記錄。