Unraid部署DNS服務器
由於使用路由器自帶的網址過濾功能無法過濾https網址的域名,因此打算在unriad上搭建一個DNS服務器,並將路由器的DNS服務器設置為該應用
在unraid的app市場中搜索dns之後,沒有見到我以前所使用過的dnsmasq應用,且多為 ddns 服務
在查找一番之後,發現了一個契合我的需求的應用:
在app中搜索`ts dnsserver`即可找到該應用,在設置中,我選擇的是br0模式,並給了一個指定的IP地址:
安裝完成後,訪問WEBUI界面即可對dns服務進行設置(遺憾的是沒有中文)
剛剛進入界面會提示設置密碼,而默認的用户名為admin,完成設置之後就可以進入到主面板了
該界面可以看到客户端對域名查詢次數、大概時間,error數量,而下方還有具體的連接到dns服務器的客户端地址、名稱、查詢次數
各域名的查詢次數
該應用一個比較好的特點就是,各個功能比較主觀,方便操作
在該界面可以添加各域名的解析,不過需要注意的是,對外網域名解析時,如果你設置頂級域名但只解析了 www 域名時,那麼其它子域名就無法訪問了,因為該DNS服務器已有的域名,其子域名即便沒有對應IP,也不會另外查詢其他DNS服務器。該項功能對個人來説比較雞肋,瞭解一下就好
舉個例子,添加www.qq.com指向本地地址(效果就是屏蔽了 www.qq.com)
不建議直接添加`qq.com`,因為該服務相當於一個完整的DNS,因此如果添加頂級域名,那麼你必須一個個配置子域名才可正常訪問騰訊以`*.qq.com`作為域名的其他服務。
最好的用途就是,在內網內設置了多個應用服務後,給每一個應用搞一個內網域名,以及訪問一些無法訪問的域名
所有通過該DNS查詢到的域名,都會保存進入緩存,方便下次的快速查詢,並且可以自行刷新或刪除
恕我沒搞懂這一項,就不放圖了
黑名單這一項就很簡單直接了,在左側 example.com 位置填入想要屏蔽的域名,點擊`Block`,即可將該域名屏蔽掉
(不要在意屏蔽內容,當時測試功能時,不知道實驗哪個,一看標籤頁有個圖標,就直接用了)
該項是為了方便查詢各個DNS服務器對域名的解析記錄,可選內置大量域名(不過內置的很多都被 了),也可自行輸入DNS。
這一項的內容很多,雖然我覺得並沒用必要去改什麼
DNS服務器域名(DNS Server Domain)一開始我以為是內置將該名稱指向其本地IP地址,但試了一下並不是,還真就是個名字,當然也可以在Zones裏面讓它“是”。
DNS服務本地端口(DNS Server Local End Points),如果在安裝這一服務的時候,選擇Bridge的話,會和Unraid的53端口衝突,需要映射改端口,其他主機使用該DNS服務器的時候也會很麻煩,儘量不要動這個53端口網頁服務端口(Web Service Port),也就是你訪問該界面的途徑
可選DNS服務協議(Optional DNS Server Protocols),一般在內網使用的時候不必設置,下面兩個是證書和密碼
IPv6支持(IPv6 Support),也一般是做公網DNS服務時採用的,或者在內網試驗一下IPv6?
日誌(Logging), 會明顯增加日誌文件大小
遞歸解析(Recursive Resolver),沒搞懂何意,猜測是上游DNS服務器,按解釋的意思,內網開着就行
下方四個用來控制緩存的記錄
屏蔽網址列表(Block List URLs),重點,其內置了一些網絡hosts,你也可以自己填,可同時填寫多個hosts,但是不能本地上傳hosts
網絡代理(NetWork Proxy),這一大項裏面,如果沒有需求就默認好了
轉發,猜測是設置上游DNS
可以設置其為局域網內的DHCP服務器
在剛剛上手測試的時候,別急着直接將其設置為路由器的DNS,先設為電腦DNS驗證一下能否正常使用以及配置是否正常(主要使用命令為 `nslookup`)。
這個應用不像dnsmasq,界面比較方便操作,而且不需要重啓就可以驗證設置,不過要注意瀏覽器的緩存,因此建議配置的時候開兩個瀏覽器,一個設置,一個驗證,驗證的那個,下次驗證之前記得關掉重新打開。
該應用在我看來主要就只有一個缺點:只有英文;相對的優點就是功能全面而強大,界面直觀,設置起來也方便。