最全面的DNS域名解析服务!
Posted 龙少。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最全面的DNS域名解析服务!相关的知识,希望对你有一定的参考价值。
DNS域名解析服务
一.BIND域名服务基础
1.DNS系统的作用及类型
(1)作用
① 正向解析
根据域名查找对应的IP地址
② 反向解析
根据IP地址查找对应的域名
③ DNS系统的分布式数据结构
FQDN完全合格域名
FQDN=主机名+域名
域名一般由根域 顶级域 二级域 三级域 组成
例如
www.sina.com.cn.
主机名三级域二级域顶级域根域
dns基本的查找步骤:
1.查看缓存
2.查看hosts文件
3.找dns服务器
4.dns服务器查看缓存
5.dns服务器访问根域…
找DNS 服务器 服务器有 域名和ip对应关系的表
第一次没有对应关系
找根域.
返回服务器 找顶级域
返回服务器 找二级域
返回服务器 找三级域 找到主机 并反馈到服务器
形成表 主机和服务器都会有 主机会有缓存
本机会有缓存表
第二次会直接通过缓存获取对应关系
如果缓存清除了,会再找服务器通过服务器的对应关系表获取
dns的里有几个概念:
1.递归查询
能直接得到结果的,客户机直接查询域名服务器,能够知道访问的地址
能够知道准确结果的,叫递归
不能够知道准确结果的,需要去查询,叫迭代
2.迭代查询
从域名服务器先查根域——顶级域——二级级域
(2)类型
① 缓存域名服务器
也称为DNS高速缓存服务器
通过向其他域名服务器查询获得域名->IP地址记录
将域名查询结果缓存到本地,提高重复查询时的速度
② 主域名服务器
特定DNS区域的权威服务器,具有唯一性
负责维护该区域内所有域名->IP地址的映射记录
需要自行建立所负责区域的地址数据文件
③ 从域名服务器
也称为辅助域名服务器,是对主域名服务器的热备份
其维护的域名->IP地址记录来源于主域名服务器
需要从主域名服务器自动同步区域地址数据库
2.BIND的安装和配置文件
(1)BIND的安装和控制
bind是应用最为广泛的DNS服务程序
官方站点:www.isc.org/
相关软件包
bind-9.9.4-37.el7.x86_64.rpm
bind-utils-9.9.4-37.el7.x86_64.rpm
bind-libs-9.9.4-37.el7.x86_64.rpm
bind-chroot-9.9.4-37.el7.x86_64.rpm
bind软件安装完毕后会自动增加一个名为named的系统服务。
(2)BIND服务的配置文件
① 主配置文件
/etc/named.conf
② 区域配置文件
/etc/named.rfc1912.zones
③ 区域数据文件的模板
/var/named/named.localhost
二.正向解析
把www.wudi.com 解析成本机地址192.168.206.165
[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.206.165 netmask 255.255.255.0 broadcast 192.168.206.255
inet6 fe80::68db:ecba:f4cf:6e1f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f2:e6:6e txqueuelen 1000 (Ethernet)
RX packets 18030 bytes 23836591 (22.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5641 bytes 419073 (409.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
1.yum -y install bind
2.vim /etc/named.conf
3.vim /etc/named.rfc1912.zones
4.cp -p /var/named/named.localhost /var/named/wudi.com.zone
5.vim /var/named/wudi.com.zone
[root@localhost ~]# systemctl start named
[root@localhost ~]# netstat -atnp | grep named.
tcp 0 0 192.168.206.165:53 0.0.0.0:* LISTEN 77017/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 77017/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 77017/named
tcp6 0 0 ::1:53 :::* LISTEN 77017/named
tcp6 0 0 ::1:953 :::* LISTEN 77017/named
6.进入win10认证
7.下载httpd服务访问www.wudi.com
yum -y install httpd
[root@localhost ~]# systemctl start httpd
[root@localhost ~]#
[root@localhost ~]# netstat -antp | grep httpd
tcp6 0 0 :::80 :::* LISTEN 78019/httpd
[root@localhost ~]# cd /var/www/html
[root@localhost html]# ls
[root@localhost html]# vim index.html
8.进入win10访问验证
通过域名访问
通过IP地址访问
补充说明 添加别名泛域名邮件设置
vim /var/named/wudi.com.zone
systemctl start named
进入win10认证
三.反向解析
一般用于反垃圾邮件
1.yum -y install bind
2.vim /etc/named.conf
3.vim /etc/named.rfc1912.zones
4.cp -p /var/named/named.localhost /var/named/wudi.com.zone
5.vim /var/named/wudi.com.zone
6.重启服务查看服务
[root@localhost ~]# systemctl start named
[root@localhost html]# netstat -anpu | grep 53
udp 0 0 192.168.122.1:53 0.0.0.0:* 87532/named
udp 0 0 192.168.206.165:53 0.0.0.0:* 87532/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 87532/named
udp 0 0 192.168.122.1:53 0.0.0.0:* 7902/dnsmasq
udp 0 0 0.0.0.0:5353 0.0.0.0:* 6364/avahi-daemon:
udp6 0 0 ::1:53 :::* 87532/named
7.解析验证
进入win10 验证
linux验证
vim /etc/resolv.conf
[root@localhost ~]# host 192.168.206.129
129.206.168.192.in-addr.arpa domain name pointer www.wudi.com.
[root@localhost ~]# host 192.168.206.129 192.168.206.129
Using domain server:
Name: 192.168.206.129
Address: 192.168.206.129#53
Aliases:
129.206.168.192.in-addr.arpa domain name pointer www.wudi.com.
[root@localhost ~]# nslookup 192.168.206.129 192.168.206.129
129.206.168.192.in-addr.arpa name = www.wudi.com.
四.构建缓存域名服务器
需要3台虚拟机,一台linux作为dns服务器,一台linux作为dns缓存服务器,一台win10作为客户机验证
1.dns服务器配置正向解析
主要配置
vim /etc/named.conf
vim /etc/named.rfc1912.zones
cp -p /var/named/named.localhost /var/named/wudi.com.zone
vim /var/named/wudi.com.zone
systemctl start named
2.dns缓存服务器配置
(1)安装bind yum -y install bind
(2)vim /etc/named.conf
下面的全部删除
3.验证
(1)验证正向解析
(2)验证缓存
五.构建主从域名服务器
1.主域名服务器
特定DNS区域的权威服务器,具有唯一性
负责维护该区域内所有域名->IP地址的映射记录
需要自行建立所负责区域的地址数据文件
2.从域名服务器
也称为辅助域名服务器,是对主域名服务器的热备份
其维护的域名->IP地址记录来源于主域名服务器
需要从主域名服务器自动同步区域地址数据库
均是为了实现备份和冗余
3.配置
使用3台虚拟机,一台linux为主服务器,一台linux为从服务器,一台win10做客户机验证使用
(1)主域名服务器配置
主要配置
① ifconfig查看网卡ip
② 安装bind
③ vim /etc/named.conf
④ vim /etc/named.rfc1912.zones
⑤ cp -p /var/named/named.localhost /var/named/wudi.com.zone
⑥ vim /var/named/wudi.com.zone
⑦ systemctl start named
补充
重载dns的配置文件
[root@localhost ~]# rndc reload
server reload successful
(2)从域名服务器配置
主要配置
① ifconfig查看网卡ip
② 安装bind
③ vim /etc/named.conf
④ vim /etc/named.rfc1912.zones
⑤启动服务查看服务
(3)验证
如果要实现实时同步
需要添加2个设置
然后重载服务
六.构建分离解析域名服务器
1.实验环境:
网关服务器(DNS服务器):192.168.192.100(vmnet1)/12.0.0.1(vmnet2)
内网web服务器:192.168.192.211 网关:192.168.192.100 搭建httpd服务并启动
内网win7客户机:192.168.192.150 网关:192.168.192.100 DNS:192.168.192.100
外网win10客户机:12.0.0.2 网关:12.0.0.1 DNS:12.0.0.1
在网关服务器实现DNS分离解析技术,使局域网主机解析www.kgc.com为192.168.192.211,外网主机解析www.kgc.com为12.0.0.1。
在关机状态下添加一块网卡,并更改为仅主机模式,重启系统。
2.安装bind
yum -y install bind
3.修改网卡配置
vim /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=192.168.245.201
NETMASK=255.255.255.0
#GATEWAY=192.168.245.2 #他自己就是网关服务器所以不用在配置网关
#DNS1=114.114.114.114
cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens37
vim /etc/sysconfig/network-scripts/ifcfg-ens37
NAME=ens37
#UUID=73def3c3-ee97-4521-a9da-753a12ab19bb #一定别忘了注释UUID,因为这是ens33网卡复制过来的
DEVICE=ens37
IPADDR=12.0.0.1
NETMASK=255.255.255.0
4.修改主配置文件
vim /etc/named.conf
options {
listen-on port 53 { any; }; #设置监听地址为本机ip或者any
listen-on-v6 port 53 { ::1; };
allow-query { any; }; #设置允许谁来解析,设为any
vim /etc/named.rfc1912.zones
view "lan" { #定义内网view,view代表容器分割,名字随意,便于标识就好
match-clients { 192.168.192.0/24; }; #匹配内网访问的网段
zone "kgc.com" IN { #设置要解析的区域
type master;
file "kgc.com.zone.lan"; #数据配置文件名
};
zone "." IN { #将根域配置从主配置文件剪切过来
type hint; #hint是根区域类型
file "named.ca";
};
};
view "wan" { #定义外网view
match-clients { any; }; #匹配除了内网网段以外的任意地址,或者外网网段12.0.0.0
zone "kgc.com" IN {
type master;
file "kgc.com.zone.wan";
};
};
#注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下然后在named.conf中删除
cd /var/named
cp -p named.localhost kgc.com.zone.lan
cp -p named.localhost kgc.com.zone.wan
vim kgc.com.zone.lan
$TTL 1D
@ IN SOA kgc.com. admin.kgc.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS kgc.com.
A 192.168.192.211
www IN A 192.168.192.211
vim kgc.com.zone.wan
$TTL 1D
@ IN SOA kgc.com. admin.kgc.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS kgc.com.
A 12.0.0.1
www IN A 12.0.0.1 #解析成网关出接口ip地址
5.systemctl start named #启动服务
6.验证:
在内、外网客户端的域名解析配置文件中添加DNS服务器地址
在内、外网客户端上测试
nslookup www.kgc.com
如果要访问网页需要制定防火墙规则并且开启路由转发功能
vim /etc/sysctl.conf //配置内核参数开启路由转发,echo 1 > /proc/sys/net/ipv4/ip_forward为临时配置
net.ipv4.ip_forward=1
sysctl -p 从文件加载系统参数
iptables -L -t nat //查看nat表规则
iptables -t nat -A PREROUTING -d 12.0.0.1 -i ens37 -j DNAT --to-destination 192.168.192.211
以上是关于最全面的DNS域名解析服务!的主要内容,如果未能解决你的问题,请参考以下文章
DNS分离解析和智能解析 1构建DNS域名服务器的分离解析 DNS分离解析域名服务器概述 DNS分离解析域名服务器实际也是主域名DNS服务器,这里所说的分离解