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系统

相关推荐
冉佳驹21 小时前
Linux ——— 多线程编程中的核心概念与技术实现
linux·条件变量·互斥锁·自旋锁·线程的概念·线程的创建、等待、分离·生产者消费模型
Skilce21 小时前
HAProxy
linux·运维·负载均衡
有一个好名字21 小时前
claude code安装
linux·运维·前端
亮子AI21 小时前
【Linux】如何拷贝目录?
linux·运维·服务器
starvapour1 天前
Ubuntu更换显卡驱动后网络消失的问题
linux·运维·ubuntu
风酥糖1 天前
在Termux中运行Siyuan笔记服务
android·linux·服务器·笔记
哼?~1 天前
Linux信号产生
linux
Je1lyfish1 天前
CMU15-445 (2026 Spring) Project#2 - B+ Tree
linux·数据结构·数据库·c++·sql·spring·oracle
赋创小助手1 天前
AMD OpenClaw:本地 AI Agent 运行平台解析,RyzenClaw 与 RadeonClaw 两种架构方案意味着什么?
服务器·人工智能·深度学习·自然语言处理·架构·数据挖掘·openclaw
Jerryhut1 天前
服务器BMC配置管理
运维·服务器