tft每日頭條

 > 科技

 > docker的dns

docker的dns

科技 更新时间:2024-11-23 03:14:06

上一回我們說到《Win11快速開啟DNS加密功能》,這樣做在電腦上可以,但是對局域網内其它設備(如手機)就無能為力了,今天我們來更進一步,在家庭局域網内搭建一台DNS服務器,同時支持DoH轉發等高級功能,特别适合家裡已有NAS的場景。

下載Docker鏡像

sudo docker pull technitium/dns-server

開啟Docker服務

sudo docker run --detach \ --restart always \ --name dns-server \ --publish 5380:5380/tcp \ --publish 53:53/udp \ --volume /home/your-path-to-dns-config/:/etc/dns/config \ technitium/dns-server

  • 這裡我們暴露了兩個端口出來,分别是用于web管理的5380端口和用于DNS解析的53端口,然後對容器内的dns配置文件夾做了宿主機映射,這裡要注意的是/home/your-path-to-dns-config/需要替換成你想要設定的路徑。
設置路由DHCP

這個就比較簡單了,直接在路由器裡設置即可:

docker的dns(使用Docker輕松搭建DNS服務器)1

設置DoH功能

我的NAS IP地址是192.168.1.108,所以我這裡隻要打開DNS服務器的管理頁面192.168.1.108:5380(第一次打開需要設定訪問web管理界面的密碼)。

docker的dns(使用Docker輕松搭建DNS服務器)2

如圖所示進行設置即可,因為1.1.1.1國内訪問不太穩定,所以這一次我選擇了1.0.0.2和1.0.0.3,DoH地址分别是:

https://1.0.0.2/dns-query (1.0.0.2) https://1.0.0.3/dns-query (1.0.0.3)

驗證DoH是否已正常工作

最後一步我們在局域網内任意設備打開https://1.1.1.1/help ,如果一切正常的話,會顯示如下界面:

docker的dns(使用Docker輕松搭建DNS服務器)3

至此我們已完成了全部的DNS服務器搭建工作。

疑難解答

Q: 提示53端口失敗怎麼辦

A: 可以先sudo lsof -i:53看一下,一般就是systemd-resolved服務占用了,使用如下命令停止該服務并取消自動啟動:

sudo systemctl stop systemd-resolved

sudo systemctl mask systemd-resolved.service

執行後重啟一下宿主機。

Q:如何重啟容器

A:使用如下命令

sudo docker stop dns-server

sudo docker rm dns-server

Q:運行DNS服務的宿主機設置的靜态IP,如何更換DNS服務設置?

A: 直接編輯/etc/NetworkManager/system-connections/下你的網卡配置文件就可以了,DNS服務器設置成自己(127.0.0.1)

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved