0%

Linux 下缓存域名解析的安装与配置

在 Linux 系统中,很多服务都要调用域名解析服务,一般通过/etc/resolv.conf来指定 DNS 服务器的 ip。每次外部访问都会首先访问 DNS 服务器,这样会导致延时增加。如果网络不好的情况下,还会遇到域名解析失败的情况。在这种情况下,需要通过配置 DNS 解析缓存服务,从而优化 DNS 响应速度,减少外部网络依赖。

NSCD安装

NSCD(Name Service Caching Daemon,名称服务缓存进程)不需要对应用程序和 DNS 配置文件做任何修改,对系统的部署影响最小。因此,NSCD 成为 Linux 下广泛使用的域名缓存软件。

CentOS 下安装

1
yum -y install nscd

Ubuntu 下安装同样简单

1
apt-get install nscd

NSCD的配置文件是/etc/nscd.conf,核心配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#是否启用缓存
enable-cache hosts yes
#解析成功的结果缓存时间
positive-time-to-live hosts 3600
#解析失败的结果缓存时间
negative-time-to-live hosts 20
#缓存条目数量
suggested-size hosts 211
#是否检查hosts文件变化
check-files hosts yes
#是否在重启时保留之前缓存条目
persistent hosts yes
#是否允许客户端直接查询NSCD的内存镜像以获得结果
shared hosts yes
#DNS的缓存大小