Ubuntu server 24 (Linux) 安装部署smartdns 搭建智能DNS服务器

SmartDNS是推荐本地运行的DNS服务器,SmartDNS接受本地客户端的DNS查询请求,从多个上游DNS服务器获取DNS查询结果,并将访问速度最快的结果返回给客户端,提高网络访问速度和准确性。 支持指定域名IP地址,达到禁止过滤的效果。

一 安装smartdns

1 关闭Ubuntu自带dns解析systemd-resolved

#查看端口
sudo netstat -lnp|grep 53
tcp        0      0 127.0.0.54:53           0.0.0.0:*               LISTEN      698/systemd-resolve 
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      698/systemd-resolve 
udp        0      0 127.0.0.54:53           0.0.0.0:*                           698/systemd-resolve 
udp        0      0 127.0.0.53:53           0.0.0.0:*                           698/systemd-resolve 
raw6       0      0 :::58                   :::*                    7           553/systemd-network 
unix  2      [ ACC ]     STREAM     LISTENING     9453     924/systemd          /run/user/1000/pk-debconf-socket
#关闭
sudo systemctl disable systemd-resolved
sudo systemctl stop systemd-resolved

2 安装 smartdns

sudo  apt update
sudo  apt-get  install smartdns
#查看版本
test@test:~$ smartdns -v
smartdns 45+dfsg-1build2
#启动
sudo systemctl enable smartdns
sudo systemctl start smartdns

二 配置smartdns

sudo vim /etc/smartdns/smartdns.conf
#接口绑定信息
bind-tcp [::]:53
bind :53
#开启过期缓存
serve-expired yes
#过期时间
serve-expired-ttl 0
#缓存数量
cache-size 68888
#域名TTL最小值和最大值
rr-ttl-min 60
rr-ttl-max 866000
# 上游DNS返回多个结果时,测速的方法
speed-check-mode tcp:80,tcp:443,ping
#日志记录等级(warn,info,debug)
log-level info
log-file /var/log/smartdns/smartdns.log
log-size 2m #日志大小
log-num 1 #日志归档个数
#配置上游dns服务器
#阿里dns
server 223.5.5.5
server 223.6.6.6
#腾讯dns
server 119.29.29.29
#配置server的组关系
server 8.8.8.8 -group google -exclude-default-group
server 8.8.4.4 -group whatsappdns -exclude-default-group
server-tcp 8.8.4.4
#配置address,解析指定的域名和IP
address /www.test.com/192.168.50.13

三 测试验证

1 ubuntu 系统

#第一次查询
test@test:~$ dig www.csdn.net

; <<>> DiG 9.18.24-0ubuntu5-Ubuntu <<>> www.csdn.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32569
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.csdn.net.			IN	A

;; ANSWER SECTION:
www.csdn.net.		3	IN	CNAME	55cb88f4.csdn.net.cname.yunduns.com.
55cb88f4.csdn.net.cname.yunduns.com. 3 IN A	220.185.184.18

;; Query time: 532 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Sat Jun 01 17:45:37 CST 2024
;; MSG SIZE  rcvd: 95

#第二次查询
test@test:~$ dig www.csdn.net

; <<>> DiG 9.18.24-0ubuntu5-Ubuntu <<>> www.csdn.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36998
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.csdn.net.			IN	A

;; ANSWER SECTION:
www.csdn.net.		32	IN	CNAME	55cb88f4.csdn.net.cname.yunduns.com.
55cb88f4.csdn.net.cname.yunduns.com. 32	IN A	220.185.184.18

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Sat Jun 01 17:46:05 CST 2024
;; MSG SIZE  rcvd: 95
#测试域名查询
test@test:~$ dig www.test.com

; <<>> DiG 9.18.24-0ubuntu5-Ubuntu <<>> www.test.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41058
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.test.com.			IN	A

;; ANSWER SECTION:
www.test.com.		60	IN	A	192.168.50.13

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Sat Jun 01 17:49:50 CST 2024
;; MSG SIZE  rcvd: 46

2 windoes 11系统

相关推荐
AndyFrank22 分钟前
mac crontab 不能使用问题简记
linux·运维·macos
筱源源38 分钟前
Kafka-linux环境部署
linux·kafka
EricWang13581 小时前
[OS] 项目三-2-proc.c: exit(int status)
服务器·c语言·前端
算法与编程之美1 小时前
文件的写入与读取
linux·运维·服务器
xianwu5432 小时前
反向代理模块
linux·开发语言·网络·git
Amelio_Ming2 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
Ven%3 小时前
centos查看硬盘资源使用情况命令大全
linux·运维·centos
JaneJiazhao3 小时前
HTTPSOK:SSL/TLS证书自动续期工具
服务器·网络协议·ssl
萨格拉斯救世主3 小时前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
无所谓จุ๊บ3 小时前
树莓派开发相关知识十 -小试服务器
服务器·网络·树莓派