DNS域名解析服务

一、DNS的原理:

1.概述:DNS--域名解析系统; 2.结构:三级、二级、顶级、.为根,全球一共十三个根DNS服务器; 3.FQDN:完全合格域名,主机名(www)+域名后缀(baidu.com),用来描述全球唯一的一台主机; 4.DNS解析记录: a.主机解析域名过程:找缓存--找hosts文件--netbios(仅限于windows主机)--DNS服务器--上一级DNS服务器 b.查询方法:客户端--通过递归--本地服务器--通过迭代--上游服务器 递归:必须回复,客户端连接自己的DNS 迭代:尽力而为模式,服务器与服务器之间的解析 c.DNS缓存:加快解析速度,减少互联网上DNS查询数据,一般在本地客户机和本地服务器产生DNS缓存; d.解析分类: 正向解析:将域名解析成IP地址 反向解析:将IP地址解析成域名 e.根据DNS的区域来源不同将DNS服务器分为:缓存服务器、主域名服务器、从域名服务器; 主域名服务器:维护某一个特定区域的地址数据库,自行建立所负责区域的地址数据文件; 从域名服务器:同步主域名服务器的配置文件,通常为DNS服务器的热备份; 缓存服务器:只提供缓存功能,需指定其他DNS服务器为解析来源,加快查询速度; 注:DNS服务所监听的端口号:tcp 53 udp 53,在客户端与dns服务端建立连接时,使用tcp53端口,当进行地址解析传输时,使用udp 53号端口;

二、DNS的配置文件;

1.bind软件:bind主程序、bind-utils客户端工具 2.配置文件: /etc/named.conf ##主配置文件的目录 /var/named/ ##区域配置文件存放目录 3.区域配置文件:记录DNS条目 $TTL ##生存周期,缓存的DNS记录有效期 SOA ##起始授权机构(主从同步的参数) NS ##域名服务器记录 MX ##邮件交换记录 PTR ##反向指针记录 CNAME ##别名

  • 	##泛域名
    

三、部署DNS域名解析系统:

1.部署主DNS服务器: a.配置ip、网关、DNS、hosts文件、主机名、关闭防火墙、关闭selinux; b.配置yum源并安装bind软件包; c.修改配置文件,定制功能; d.启动服务;

配置bind从域名服务器:

1.设置网络参数: vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" HWADDR="00:0C:29:68:b1:0f" NM_CONTROLLED="no" ONBOOT="yes" BOOTPROTO=static IPADDR=192.168.100.151 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 DNS1=202.106.0.20 DNS2=192.168.100.150 :wq

vi /etc/selinux/config SELINUX=disabled :wq

chkconfig iptables off

reboot

2.安装bind软件: rm -rf /etc/yum.repos.d/* vi /etc/yum.repos.d/1.repo [local] name=local baseurl=file:///mnt enabled=1 gpgcheck=0 :wq

yum -y install bind yum -y install bind-utils

3.修改配置文件:

vi /etc/named.conf ##修改如下,可以复制粘贴,options区域内,除directory配置项(指定区域配置文件的默认存放位置)不可省略外,别的都可以省略; options { directory "/var/named"; }; zone "linuxfan.cn" IN { type slave; file "slaves/linuxfan.cn.zone"; masters { 192.168.100.150; }; }; zone "100.168.192.in-addr.arpa" IN { type slave; file "slaves/192.168.100.arpa"; masters { 192.168.100.150; }; }; :wq

/etc/init.d/named restart chkconfig named on netstat -utpln |grep 53

注:若启动named服务时出现: [root@lwh chroot]# /etc/init.d/named start Generating /etc/rndc.key: 解决方法: [root@lwh chroot]# rndc-confgen -r /dev/urandom -a [root@lwh chroot]# /etc/init.d/named start

4.测试: windows/linux:

nslookup server 192.168.100.150 192.168.100.150 www.linuxfan.cn exit

查看查询日志: less /var/named/data/named.run

5.注意:当主从搭建完成后,主域名服务器的区域解析文件变化后,必须更改主域名服务器上区域解析文件的更新序列号(递增); 然后重启主域名服务器,再验证从域名服务器的区域解析文件是否同步更新;

配置bind从域名服务器:

1.设置网络参数: vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" HWADDR="00:0C:29:68:b1:0f" NM_CONTROLLED="no" ONBOOT="yes" BOOTPROTO=static IPADDR=192.168.100.151 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 DNS1=202.106.0.20 DNS2=192.168.100.150 :wq

vi /etc/selinux/config SELINUX=disabled :wq

chkconfig iptables off

reboot

2.安装bind软件: rm -rf /etc/yum.repos.d/* vi /etc/yum.repos.d/1.repo [local] name=local baseurl=file:///mnt enabled=1 gpgcheck=0 :wq

yum -y install bind yum -y install bind-utils

3.修改配置文件:

vi /etc/named.conf ##修改如下,可以复制粘贴,options区域内,除directory配置项(指定区域配置文件的默认存放位置)不可省略外,别的都可以省略; options { directory "/var/named"; }; zone "linuxfan.cn" IN { type slave; file "slaves/linuxfan.cn.zone"; masters { 192.168.100.150; }; }; zone "100.168.192.in-addr.arpa" IN { type slave; file "slaves/192.168.100.arpa"; masters { 192.168.100.150; }; }; :wq

/etc/init.d/named restart chkconfig named on netstat -utpln |grep 53

注:若启动named服务时出现: [root@lwh chroot]# /etc/init.d/named start Generating /etc/rndc.key: 解决方法: [root@lwh chroot]# rndc-confgen -r /dev/urandom -a [root@lwh chroot]# /etc/init.d/named start

4.测试: windows/linux:

nslookup server 192.168.100.150 192.168.100.150 www.linuxfan.cn exit

查看查询日志: less /var/named/data/named.run

5.注意:当主从搭建完成后,主域名服务器的区域解析文件变化后,必须更改主域名服务器上区域解析文件的更新序列号(递增); 然后重启主域名服务器,再验证从域名服务器的区域解析文件是否同步更新;

配置bind缓存服务器:

添加两块网卡,模式分别为vm1和桥接 1.设置网络参数: vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" HWADDR="00:0C:29:68:b1:0f" NM_CONTROLLED="no" ONBOOT="yes" BOOTPROTO=static IPADDR=192.168.100.150 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 DNS1=202.106.0.20 DNS2=192.168.100.150 :wq

vi /etc/selinux/config SELINUX=disabled :wq

chkconfig iptables off

reboot

dhclient -d eth1 ##获取一个动态ip地址,看到bound字段按ctrl c退出

2.安装bind软件: vi /etc/yum.repos.d/1.repo [local] name=local baseurl=file:///mnt enabled=1 gpgcheck=0 :wq

yum -y install bind yum -y install bind-utils

3.修改配置文件:

vi /etc/named.conf ##修改如下,可以复制粘贴,options区域内,除directory配置项(指定区域配置文件的默认存放位置)不可省略外,别的都可以省略; options { directory "/var/named"; // "Working" directory dump-file "data/cache_dump.db"; statistics-file "data/named_stats.txt"; memstatistics-file "data/named_mem_stats.txt"; listen-on port 53 { 192.168.100.150; }; query-source port 53; allow-query { 192.168.100.0/24; }; recursion yes; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; :wq 主配置文件中指定的根区域配置文件在/var/named/named.ca中 chown named:named /var/named/named.ca /etc/init.d/named restart chkconfig named on netstat -utpln |grep 53

注:若启动named服务时出现: [root@lwh chroot]# /etc/init.d/named start Generating /etc/rndc.key: 解决方法: [root@lwh chroot]# rndc-confgen -r /dev/urandom -a [root@lwh chroot]# /etc/init.d/named start

4.测试: windows/linux:

nslookup server 192.168.100.150 www.baidu.com www.sina.com exit

查看查询日志: less /var/named/data/named.run