1. linux下DNS无法解析怎么办
需要修改 /etc/resolv.conf 配置文件,指定域名解析服务器就可以解决该问题;
1、编辑etc下的resoly.conf文件(版如果没有就新建一个权);
2、在resoly.conf文件内添加一下内容;
nameserver 8.8.8.8
3、保存后重启网络服务,可以通过命令“servicenetworkrestart”重启;
2. linux查询域名缓存时间
3分钟。linux查询域名是查询本地的缓存linux默认没有设置缓存,但windows默认设置了缓存,时间是3分钟。Linux是一种自由和开放颂裤雹源代码野帆的纯胡类UNIX操作系统。
3. 如何在 Linux/Unix/Mac 下清除 DNS 查询缓存
如何: 清除 nscd dns 缓存
Nscd 会缓存libc发起的名称服务的请求。如果把检索NSS数据看做很慢,那么nscd能够显著加快宴族连续访问同一数据的速度,并能提高整个系统的性能。只需重启nscd即可刷新缓存晌庆弊:
$ sudo /etc/init.d/nscd restart
或
# service nscd restart
或
# service nscd reload
这个守护进程给最常用的名称服务请求提供了高速缓存。默认的配置文件/etc/nscd.conf,其决定了高速缓存守护进程的差握行为。
清除 dnsmasq dns 缓存
dnsmasq的是一个轻量级的DNS、TFTP和DHCP服务器。它的目的是给局域网提供配对的DNS和DHCP服务。 dnsmasq接受DNS查询,并从一个小的本地高速缓存应答它们或将其转发到一个真正的递归DNS服务器。该软件也被安装在很多便宜的路由器上来缓存DNS查询。只需重新启动dnsmasq的服务来清除DNS缓存:
$ sudo /etc/init.d/dnsmasq restart
或者
# service dnsmasq restart
清除BIND缓存服务器的dns缓存
一台BIND缓存服务器从另一台服务器(区域主)响应主机的查询而获得信息,然后保存(缓存)数据到本地。您所要做的就是重启BIND以清除其缓存:
# /etc/init.d/named restart
4. 如何查看linux系统 mx记录ns记录
查看 /var/named/域名.zone 文件。
可以参考如下linux 下dns配置文档。
①简介
DNS就是Domain Name System,它能够把形如www.21php.com这样的域名转换为211.152.50.35这样的IP地址;没有DNS,浏览21php.com这个网站时,就必须用211.152.50.35这么难记的数字来访问。提供DNS服务的就是DNS服务器。DNS服务器可以分为三种,高速缓存服务器(Cache-only server)、主服务器(Primary Name server)、辅助服务器(Second Name Server)。
DNS的详细原理、工作流程、术语、概念,限于篇幅,这里就不说了。可以阅读专门的文章,如DNS-HOWTO加以了解。
②配置主DNS服务器
首先我们做以下假设:A服务器为21php.com的主域名服务器,其IP地址为11.0.0.1,B服务器为21php.com的辅助域名服务器,其IP地址为11.0.0.2;
下面我们配置服务器11.0.0.1为21PHP.COM的主DNS服务器
Linux下的dns功能是通过bind软件实现的。bind软件安装后,会产生几个固有文件,分为两类,一类是配置文件在/etc目录下,一类是dns记录文件在/var/named目录下。加上其他相关文件,共同设置dns服务器。下面是所有和dns设置相关文件的列表与说明。
位于/etc目录下的有:hosts,host.conf,resolv.conf,named.boot,named.conf。
1、“hosts”文件,定义了主机名和ip地址的对应,其中也有将要运行dns这台电脑的ip地址和主机名。内容:
127.0.0.1 localhost.localdomain localhost
2、“host.conf”文件[Boban注:原来误写成hosts.conf],"order hosts bind"语句,指定了对主机名的解析顺序是先到hosts中查找,然后到dns服务器的记录里查找。“multi on”则是允许一个主机名对应多个ip地址。内容:
order hosts, bind
multi on
nospoof on
3、“resolv.conf”文件,“nameserver 10.0.0.211”指定了dns服务器的地址。注意,这个文件对普通非dns服务器的电脑(非windows的系统;Windows系统是在“网络属性”中设置这项的)来说,是必不可少的。你如果没有设置本机为dns服务器,你又要能够解析域名,就必须指定一个dns服务器的地址。你可以最多写上三个地址,作为前一个失败时的候选dns服务器。“domain zrs.com”指定默认的域。文件内容:
domain 21php.com
nameserver 11.0.0.1
4、“named.boot”文件是早期版本的bind软件使用的配置文件,现在新版本中已经让位于“named.conf”。named.conf是dns server配置的核心文件。下面我们一段一段的来解说。
# named.conf - configuration for bind
#
# Generated automatically by bindconf, alchemist et al.
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
include "/etc/rndc.key";options {
directory "/var/named/";
};
zone "." {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "0.0.127.in-addr.arpa.zone";
};
zone "localhost" {
type master;
file "localhost.zone";
};
zone "21php.com" {
type master;
notify yes;
file "21php.com";
};
上文中#为注释符号, 其他各行含义如下:
diretory /var/named
指定named从 /var/named 目录下读取DNS数据文件,这个目录用户可自行指定并创建,指定后所有的DNS数据文件都存放在此目录下;
zone "." {
type hint;
file "named.ca";
};
指定named从 named.ca 文件中获得Internet的顶层“根”服务器地址 。
zone "0.0.127.in-addr.arpa" {
type master;
file "0.0.127.in-addr.arpa.zone";
};
指定named作为127.0.0网段地址转换主服务器,named.local文件中包含了127.0.0.*形式的地址到域名的转换数据(127.0.0网段地址是局域网接口的内部 loopback地址);
zone "localhost" {
type master;
file "localhost.zone";
};
指定包含localhost的DNS文件数据存放在/var/named/localhost.zone中;
zone "21php.com" {
type master;
notify yes;
file "21php.com.zone";
};
以上语句表明域21php.com的DNS数据存放在/var/named/目录下的21php.com.zone中;
我们可以用文本编辑器打开/var/named/21php.com.zone,其内容如下:
$TTL 86400 @ IN SOA @ root.localhost (
2 ;serial
28800 ;refresh
7200 ;retry
604800 ;expire
86400 ;ttl
)
@ IN NS localhost
www IN A 11.0.0.233
www2 IN A 11.0.0.23
forum IN A 11.0.0.10
@ IN MX 5 mail.21php.com.
该文件的前部分是相应的参数设置,此部分不需要改动,后面的部分就是具体的DNS数据;
例如:
www IN A 11.0.0.233
将www.21php.com解析到地址11.0.0.233;
www2 IN A 11.0.0.23
将www2.21php.com 解析到地址11.0.0.23;
club IN A 11.0.0.10
将club.21php.com 解析到地址11.0.0.10;
③配置辅助DNS服务器
配置服务器11.0.0.2为21php.com辅助dns服务器
辅助DNS服务器,可从主服务器中转移一整套域信息。区文件是从主服务器中转移出来的,并作为本地磁盘文件存储在辅助服务器中。在辅助服务器中有域信息的完整拷贝,所以也可以可以回答对该域的查询。这部分的配置内容如下:
zone "21php.com" IN {
type slave;
file "21php.com.zone";
masters { 11.0.0.1; };
};
可以看到,和主DNS服务器不同地方就是:“type”改为了“slave”,然后指明了主DNS服务器的地址“masters { 11.0.0.1; };”。DNS服务启动时,就会自动连接11.0.0.1,读取21php.com域的信息,然后保存到本机的21php.com.zone文件里。
④测试DNS服务器
改动过DNS的相应文件,用“ndc restart”命令重新启动服务,在redhat 7.1以上版本中使用命令:
/etc/rc.d/init.d/named restart
或者
/etc/rc.d/init.d/named reload
使改动生效。
要测试DNS,可以找一台客户机,把它的DNS地址设成新建立的DNS服务器地址,然后试试上网,收信,下载等。也可以使用nslookup命令:运行nslookup,输入要查询的主机名,看是否返回正确的ip地址,在redhat 7.1以上版本中推荐使用dig命令。
5. 在linux环境里,怎么用命令删除网卡缓存
如何清空linux的DNS查询缓存一、Linux下清空DNS缓存Linux下DNS缓存实现通常有两种方式:一种是用DNS缓存程序NSCD(nameservicecachedaemon)负责管理DNS缓存。一种实现DNS缓存则是用Bind来架设CachingNameServer来实现。如果是清除NSCD上的Cache,可重新启动NSCD服务来达成清除DNSCache的效果。用这个命令:#servicenscdrestart或是#/etc/init.d/nscdrestart如果是清除BIND服务器上的CACHE,用这个命令:#rndcflush如果你的DNS服务器是用dnsmasq实现的,用下面这个命令:$sudo/etc/init.d/dnsmasqrestart注:DNSmasq是一个轻巧的,容易使用的DNS服务工具,它可以应用在内部网和Internet连接的时候的IP地址NAT转换,也可以用做小型网络的DNS服务。二、其它操作系统下清空DNS缓存的方法1、MacOSX下如何清空DNS缓存:在MacOSX中,你可以用以下命令来清空DNS缓存内容:bash-2.05a$lookupd-flushcache
6. 怎么查看 bind dns缓存
Linux 刷新DNS缓存
开启本地DNS 缓存的服务
chkconfig –list|grep nscd
启动本地DNS 缓存服务即可:
# service nscd start
反之
# service nscd stop
在linux下没有强制清除DNS缓存的命专令。我属们可以通过删除其后台数据库记录信息,达到清除DNS缓存的目的:
# rm /var/db/nscd/hosts
# service nscd restart
bind 提供的rndc 命令可以清空缓存的功能:
# rndc flush
7. linux下清理dns 缓存
首先我们要了解,dns查询的基本逻辑和缓存的存在位置
如图所示,基本逻辑为:
客户端 - 本机器dns解析器(如host,dnsmasq)- 本地dns服务器(比如家庭路由器)- 网络dns服务器
为了加速查询,在解析器和服务器上都有缓存在,一般而言我们要清理的是本机器上的dns缓存
显然,我们必须首先了解本地机器用的是什么解析器,可以通过看游咐哪个帆段进程占据了53端神轿纯口来查询,因为53端口是dns服务器端口。
可以通过以下指令:
分别会下列结果
针对不同的解析器
可以用不同的命令清理
针对system-resolved:
同时为了验证dns缓存真的被清理了,可以用命令来查看缓存
针对dnsmasq:
参考:
https://devconnected.com/how-to-flush-dns-cache-on-linux/
8. linux怎么查看dns地址(linux怎么查看dns)
1、linux怎么查看dns地址。
2、linux怎么查看dns配置。
3、linux怎么查看dns缓存。
4、linux怎么查看dns缓存时间。
1."linux怎么查看dns,为您提供linux怎么查看dns图文信息,打开linux系统,在linux的桌面的空白处右击。
2.在弹出的下拉选项里,点击打开终端。
3.输入命令cat/etc/resolv.conf可进行查看。
4.输入命令dig|grepSERVER也可以进行查看。
9. linux怎么配置dns缓存服务器和主从服务器
BIND安装
软件下载地址:http://www.isc.org/software/bind,目前最新版本是BIND 9.8.1-P1。
安装依赖:
yum -y install gcc openssl-devel
开始安装bind.
wget ftp://ftp.isc.org/isc/bind9/9.8.1-P1/bind-9.8.1-P1.tar.gz
tar xzf bind-9.8.1-P1.tar.gz
cd bind-9.8.1-P1
./configure --prefix=/usr/local/bind
make && make install
执行完成后,bind已经安装到了/usr/local/bind目录。
配置主dns服务器
配置bind主要是两种文件,一是主配置文件named.conf,二是区域文件zone(包括正解析,反解析)。
在下面的配置中,我们的主dns服务器是ns1.qbtop.com 23.19.81.191,从dns服务器是ns2.qbtop.com 23.19.81.194(这两个dns都已经在godaddy注册好了)。
下面操作仅在主dns服务器23.19.81.191执行。
主配置文件named.conf
首先执行rndc-confgen -a生成/etc/rndc.key密钥文件。
/usr/local/bind/sbin/rndc-confgen -a
vi /usr/local/bind/etc/named.conf
写入如下内容:
include "/usr/local/bind/etc/rndc.key";
controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndckey"; }; };
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file "/var/log/bind.log"; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory "/usr/local/bind/etc";
pid-file "/usr/local/bind/var/run/bind.pid";
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone "qbtop.com" {
type master;
file "qbtop.com.zone";
allow-transfer { 23.19.81.194; };
};
zone "81.19.23.in-addr.arpa" {
type master;
file "81.19.23.in-addr.arpa";
allow-transfer { 23.19.81.194; };
};
named.conf文件说明:
上面的named.conf文件包括三部分:key,controls,logging,options,zone。
logging:设置日志服务器和日志信息的发送地。
options:控制服务器的全局配置选项和为其它语句设置默认值
zone:定义一个域,比如正解析域和反解析域。
logging是定义日志的,不需要深究,主要是options和zone。
在options中:
directory "/usr/local/bind/etc":定义bind的工作目录为/usr/local/bind/etc,配置文件中所有使用的相对路径,指的都是在这里配置的目录下。
pid-file "/usr/local/bind/var/run/bind.pid":把bind程序运行的pid写入文件bind.pid。
transfer-format many-answers:使用更加有效的域传输格式many-answers。
allow-query { any; }:允许所有用户查询dns。
在zone中:
这里定义了两个zone,一个是正解析zone qbtop.com,一个是反解析zone 81.19.23.in-addr.arpa。
他们的参数基本相同:
type master:定义dns服务器为主dns。
file "qbtop.com.zone":定义此zone的文件名。
allow-transfer { 23.19.81.194; }:允许向从dns 23.19.81.194传输dns数据。
唯一不同的是zone名称的定义,正解析zone名称的定义是受权的域名,可以是顶级域名,也可以是二级域名,或多级。反解析zone名称定义规定前部分ip倒着写。如ip 192.168.1.2,名称定义为1.168.192.in-addr.arpa。
正解析qbtop.com.zone
vi /usr/local/bind/etc/qbtop.com.zone
写入如下内容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
文件说明:
$TTL 3600:指示为每个没有特殊TTL设置的RR给出了一个默认的TTL。
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
定义SOA记录,包括Zone的名字,一个技术联系人和各种不同的超时值。
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
设置两个ns记录ns1.qbtop.com和ns2.qbtop.com。
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
设置主机为ns1,ns2,aaa和bbb的A记录。
反解析文件81.19.23.in-addr.arpa
反解析zone可以不设置。
vi /usr/local/bind/etc/81.19.23.in-addr.arpa
写入如下内容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
191 IN PTR ns1.qbtop.com.
194 IN PTR ns2.qbtop.com.
说明:
上部分是定义SOA记录,下部分是设置IP反解析。
如设置IP 23.19.81.191反解析成ns1.qbtop.com,23.19.81.194反解析成ns2.qbtop.com。
配置从DNS服务器
下面我们来配置从DNS服务器。配置从DNS服务器只需要配置主配置文件named.conf,zone文件不需配置,因为这是从主DNS服务器获取的。
首先建立目录slaves用来存放从主dns获取的zone文件。
mkdir /usr/local/bind/etc/slaves
写入如下内容:
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file "/var/log/bind.log"; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory "/usr/local/bind/etc";
pid-file "/usr/local/bind/var/run/bind.pid";
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone "qbtop.com" {
type slave;
file "slaves/qbtop.com.zone";
masters { 23.19.81.191; };
};
zone "81.19.23.in-addr.arpa" {
type slave;
file "slaves/81.19.23.in-addr.arpa";
masters { 23.19.81.191; };
};
文件说明:
从dns跟主dns主要的区别是zone的定义,type slave定义此dns服务器为从dns,masters { 23.19.81.191; }定义主dns的IP。
启动BIND
1、在启动BIND之前,我们需要执行/usr/local/bind/sbin/named-checkconf检查named.conf配置文
件,和执行/usr/local/bind/sbin/named-checkzone zone名称
zone文件名,如/usr/local/bind/sbin/named-checkzone qbtop.com
/usr/local/bind/etc/qbtop.com.zone。
然后调试模式启动bind,/usr/local/bind/sbin/named -g,g参数的意思是前台执行bind,这会输出启动的信息,发现没有严重的错误后,再把g参数删除重新以/usr/local/bind/sbin/named方式后台启动bind。
2、设置开机启动,在/etc/rc.d/rc.local中加入/usr/local/bind/sbin/named。
手动添加记录
1、直接添加删除或修改zone文件里的记录
2、执行rndc reload zone名称重载,如rndc reload qbtop.com
10. 如何清除linux下DNS缓存
如果是清除NSCD上的Cache,可重新启动NSCD服务来达成清除DNS Cache的效果。用这个命令:
# service nscd restart
或是
#/etc/init.d/nscd restart
如果是清除BIND服务器上的CACHE,用这个命令:
# rndc flush
如果你的DNS服务器是用dnsmasq实现的,用下面这个命令:
$ sudo /etc/init.d/dnsmasq restart
另外,重启也行。