1、DNS配置文件 
/etc/hosts   这个是最早的 hostname 对应 IP 的档案;

/etc/resolv.conf :这个重要!就是 ISP 的 DNS 服务器 IP 记录处;

/etc/nsswitch.conf:这个档案则是在『决定』先要使用 /etc/hosts 还是 
/etc/resolv.conf 的设定!

一般而言, Linux 的预设主机名与 IP 的对应搜寻都以 /etc/hosts 为优先,

2、DNS相关命令

root@ubuntu:~# dig +trace www.baidu.com

DNS 的正、反解查询指令: host, nslookup, dig

root@ubuntu:~# host www.baidu.com 
www.baidu.com is an alias for www.a.shifen.com. 
www.a.shifen.com has address 119.75.218.77 
www.a.shifen.com has address 119.75.217.56 
Host www.a.shifen.com not found: 3(NXDOMAIN)

root@ubuntu:~# nslookup www.baidu.com 
Server:        192.168.77.2 
Address:    192.168.77.2#53

Non-authoritative answer: 
www.baidu.com    canonical name = www.a.shifen.com. 
Name:    www.a.shifen.com 
Address: 119.75.218.77 
Name:    www.a.shifen.com 
Address: 119.75.217.56

配置实例

1. 配置环境: 

DNS Server的ip:192.168.0.1  Client的ip范围为:192.168.0.2——192.168.0.254

要求DNS能解析 :
kxsrv.304.com 192.168.0.1

www.304.com 192.168.0.1

bbs.304.com    192.168.0.30

mail.304.com   192.168.0.20

网络拓扑如下:

2.安装软件bind。

检查是否安装bind.

#dpkg -l bind*

安装 BIND9

#sudo apt-get install bind9

3.DNS 配置文件介绍。

在/etc/bind 目录中。安装bind9后会生成如下三个配置文件: 
named.conf;named.conf.options;named.conf.local

其中 named.conf是主配置文件,里面包含了named.conf.options和named.conf.local,我们在架设本地dns时,只需改动named.conf.local即可。

4.配置分析。

根据上面的主机名称和ip对应可以看出: 
①需要添加正向区域“304.com”和反向区域“0.168.192.in-addr.arpa”, 
②在“304.com”区域中添加A记录kxsrv对应192.168.0.1, CNAME记录www对应kxsrv 
③在“0.168.192.in-addr.arpa”区域中添加各个ip地址对应的主机名

5.编辑named.conf.local。
先要添加写权限:#sudo chmod 646 named.conf.local 
添加下列语句: 
//正向区域 
zone "304.com" { 
type master; 
file "/etc/bind/db.304.com"; 
}; 
//反向区域 
zone "0.168.192.in-addr.arpa" { 
type master; 
notify no; 
file "/etc/bind/db.30.140.192"; 
}; 
然后保存。

6.建立named.conf.local中指定的区域文件。
在/etc/bind下建立正向区域文件 (复制了一份) 
命令:sudo cp /etc/bind/db.local /etc/bind/db.304.com 
在/etc/bind下建立反向区域文件 (复制了一份) 
命令:sudo cp /etc/bind/db.127 /etc/bind/db.0.168.192

7.编辑正向区域文件 
命令:sudo nano /etc/bind/db.304.com 
将原文参照下文修改 

; BIND data file for local loopback interface 

$TTL 604800 
@ IN SOA ns.304.com. root.304.com. ( 
2 ; Serial 
604800 ; Refresh 
86400 ; Retry 
2419200 ; Expire 
604800 ) ; Negative Cache TTL 

@ IN NS ns.304.com. 
@ IN A 127.0.0.1 
@ IN AAAA ::1 
ns IN A 192.168.0.1

kxsrv IN A 192.168.0.1

mail   IN A 192.168.0.20

bbs    IN A 192.168.0.30

www IN CNAME kxsrv

ns--------nameserver

A---------Address

CNAME----别名

注意修改的地方,在原文的localhost处更改,再添加各个主机记录 注意用Tab键分开对齐 
另外使用别名时:www IN cname 192.168.0.1 会出错, 要使用www IN cname kxsrv。

如果要添加ftp.304.com对应192.168.0.40,则只需在后面添加一行:

ftp    IN    A    192.168.0.40

8.编辑反向区域文件 
命令:sudo nano /etc/bind/db.0.168.192

将原文参照下文修改 

; BIND reverse data file for local loopback interface 

$TTL 604800 
@ IN SOA ns.304.com. root.304.com. ( 
1 ; Serial 
604800 ; Refresh 
86400 ; Retry 
2419200 ; Expire 
604800 ) ; Negative Cache TTL 

@ IN NS ns. 
9 IN PTR ns.304.com. 
9 IN PTR kxsrv.304.com. 
9 IN PTR www.304.com.

9 IN PTR bbs.304.com.

9 IN PTR mail.304.com.

注意修改的地方,在原文的localhost处更改,再添加各个主机记录 注意用Tab键分开对齐,末尾有“.”。

如果要添加ftp.304.com对应192.168.0.40,则只需在后面添加一行:

9 IN PTR ftp.304.com.

9.重新启动DNS服务 
sudo /etc/init.d/bind9 restart 
到此位置dns就配置完成了,你可以在XP下的cmd环境下用nslookup去试试看 
注意:改动配置文件后都要重新启动bind9。

10.Linux 修改DNS,请修改/etc/resolv.conf文件。 
例如: 
编辑sudo nano /etc/resolv.conf 
更改为 
nameserver 192.168.0.1

nameserver 202.117.112.3

将nameserver 192.168.0.1放在前面,这样主机会首先向nameserver 192.168.0.1请求解析。

11.DNS客户端的配置。
     此时DNS服务器已经开始工作了,要使用该DNS服务器,以XP为例,到"控制面板"–"网络连接",找到上网的网卡,右键选择"属性",改变DNS地址为192.168.0.1 ,否则会向其他DNS请求解析会导致不正确!

验证:在客户端

ping kxsrv.304.com

ping www.304.com

ping mail.304.com

总结:/etc/bind下文件之间的关系,

1、主要有三个配置文件:named.conf;named.conf.options;named.conf.local。(还有named.conf.default-zones等默认文件,不用管它)

2、其中named.conf是主配置文件,里面包含named.conf.options和named.conf.local,我们在架设本地dns时,只需改动named.conf.local即可。

3、先在named.conf.local中配置正向和反向区域,

正向区域的具体配置在/etc/bind/db.304.com文件中;(以本次试验为例)

正向区域的具体配置在/etc/bind/db.0.168.192文件中;(以本次试验为例)

然后到正向和反向的具体配置文件中配置。

再总结:只需改动在named.conf.local添加正向和反向区域;再到正向配置文件(在named.conf.local中指明了该文件的路径和名称)和反向配置文件(在named.conf.local中指明了该文件的路径和名称)中配置。

即以后要改域名直接替换上述三个文件的304字符串为要修改后的字符串即可。

要添加其他需要解析的域名(仍是304.com域,仍在192.168.0段内,非192.168.0.1地址),

如添加ftp.304.com对应地址192.168.0.20,只需在/etc/bind/db.304.com和/etc/bind/db.0.168.192中添加相应域名和地址即可.

参考:http://www.xkedu.cn/blog/read.php?478

linux的DNS相关介绍(转载)的更多相关文章

  1. 转载:Nginx 相关介绍

    转载自:https://www.cnblogs.com/wcwnina/p/8728391.html Nginx 相关介绍(Nginx是什么?能干嘛?)   Nginx的产生 没有听过Nginx?那么 ...

  2. [科普]DNS相关的攻击介绍

    一  什么是DNS DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不 ...

  3. linux 软连接创建 压缩解压缩 linux的dns服务相关

    linux软连接创建 注意用绝对路径,语法如下 ln -s 目标文件绝对路径 软连接名字绝对路径 ln -s /小护士.txt /tmp/hs.txt 修改linux的PS1变量,命令提示符变量 PS ...

  4. SONiC项目的发展及其相关介绍(转载)

    SONiC作为一个开源项目,理论上是包含了SAI(switch abstraction interface,交换机抽象接口),SAI是没有开源的,厂商自己完成统一的API,提供给上层sonic用户来调 ...

  5. Linux中与DNS相关的内容

    Linux中与DNS有关的三个东西: 1. 主机名 2. DNS服务器 3. Host文件 Linux中和DNS有关的三个文件: 1. /etc/hostname 2. /etc/resolv.con ...

  6. Linux中 /boot 目录介绍 【转载】

    Linux中 /boot 目录介绍 转自:点击打开链接 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件 ...

  7. linux用户权限相关内容查看

    linux用户权限相关内容查看 1   用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...

  8. Linux系统CPU相关信息查询

    Linux系统CPU相关信息查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.lscpu常用参数介绍 1>.查看帮助信息 [root@node105 ~]# lscpu ...

  9. 详细的linux目录结构详细介绍

    详细的linux目录结构详细介绍 --树状目录结构图 下面红色字体为比较重要的目录 1./目录 目录 描述 / 第一层次结构的根,整个文件系统层次结构的根目录 /bin/ 需要在单用户模式可用的必要命 ...

随机推荐

  1. c++ 的语法方面的问题

    1.字符串string  中 ""和null的区别 答:举个例子,你老妈让你去打瓶酱油.你要是空手去了,你就是带着null去的.你要是带着空瓶子去的,你就是呆着“”去的.希望你能理 ...

  2. bzoj 2799 [Poi2012]Salaries 性质+二分

    题目大意 给出一棵n个结点的有根树,结点用正整数1~n编号. 每个结点有一个1~n的正整数权值,不同结点的权值不相同, 并且一个结点的权值一定比它父结点的权值小(根结点的权值最大,一定是n). 现在有 ...

  3. button 默认类型是submit

    “form表单里的按钮,明明是button而不是input type = submit,点击还是提交,如何让它不提交?” (这个问题被我遇到了,很坑爹的,知道了就不以为然了.) 因为 button 默 ...

  4. Adoquery的 moveby和GotoBookmark,RecNo

    GotoBookmark 是必须存在的记录,再次返回原来那个记录的位置,但是原来的那个记录必须存在,所以不适合[删除订单后回到原来的位置],因为原来的订单已经不存在了,删除了, moveby(),从当 ...

  5. Latex algorithm

    方式一 需要包含的 \usepackage[noend]{algpseudocode} \usepackage{algorithmicx,algorithm} 源码 \begin{algorithm} ...

  6. Codeforces 804D Expected diameter of a tree(树的直径 + 二分 + map查询)

    题目链接 Expected diameter of a tree 题目意思就是给出一片森林, 若把任意两棵树合并(合并方法为在两个树上各自任选一点然后连一条新的边) 求这棵新的树的树的直径的期望长度. ...

  7. 洛谷——P2296 寻找道路

    P2296 寻找道路 题目描述 在有向图G 中,每条边的长度均为1 ,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件: 1 .路径上的所有点的出边所指向的点都直接或间接与终点 ...

  8. 邁向IT專家成功之路的三十則鐵律 鐵律十六:IT人交友之道-單純

    元曲知名的作家 白樸,曾在沉醉東風﹒漁夫一文創作中,寫道:「雖無刎頸交,卻有忘機友」.IT人交朋友應首重在單純而非廣泛,因為實際上越複雜的朋友圈,只會為你的工作以及生活帶來許多不必要的麻煩.至於男女朋 ...

  9. ※版本管理※=>☆SVN工具=>※解决地域麻烦※№→搭建自己的网络SVN (SourceForge 免费) [转]

    源文 http://blog.csdn.net/xiaoting451292510/article/details/8562570 分类: 版本管理 2013-02-01 14:44 26057人阅读 ...

  10. vu 是什么

    unsigned char 是无符号字符型 volatile      易变,易失的 volatile  unsigned char i; 意思是定义一个无符号字符型的变量 i. 这个变量存放在内存中 ...