BIND域名服务基础
DNS系统的作用及类型
DNS系统的作用
正向解析:通过域名查找ip
方向解析:通过ip查找域名
DNS系统分布式数据结构
根. : 根域。
.com :顶级域。
.com.cn :二级域
.zol.com.cn .sina.com.cn:三级域,子域
www ,mail,news…: 主机
DNS系统类型
主域名服务器:请求映射记录,维护本地映射记录
从域名服务器:跟主域名服务器同步。通常用于主域名服务器的热备份。
缓存域名服务器:维护本地的映射记录。只提供域名解析结果的缓存功能。
**客户端访问服务器过程 **
- 查自己缓存。如果有对应网站的IP直接访问。没有就跳下一级。
- 查看hosts文件,如果有对应网站的IP直接访问。没有就跳下一级。
1,2为DNS的递归查询 - 找DNS服务器
- DNS找自己缓存
- DNS服务器访问根域,根域返回信息。
2-6为迭代查询
1.递归查询:查客户端,域名服务器
2.迭代查询:从域名服务器查根,顶级域…
区别:递归查询可以通过客户端,域名服务器直接查询。迭代查询,一层一层查询。
BIND的安装和配置文件
BIND的安装
正向解析
BIND
- BIND是应用最广泛的DNS服务程序
- 官方站点:https://www.isc.org
Linux下载:
[root@localhost ~]# yum -y install bind
查看BIND的配置文件
[root@localhost ~]# rpm -qc bind
/etc/logrotate.d/named
/etc/named.conf
/etc/named.iscdlv.key
/etc/named.rfc1912.zones
/etc/named.root.key
/etc/rndc.conf
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback
1.主配置文件
/etc/named.conf :
[root@localhost ~]# vim /etc/named.conf
options {
listen-on port 53 { any; }; #监听地址和端口 any表示所有
listen-on-v6 port 53 { ::1; };
directory "/var/named"; #区域数据文件的默认存放位置
dump-file "/var/named/data/cache_dump.db";#设置域名缓存数据库文件位置
statistics-file "/var/named/data/named_stats.txt";#设置状态统计文件位置
memstatistics-file "/var/named/data/named_mem_stats.txt";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; }; #允许使用本DNS服务的网段
2.区域配置部分
[root@localhost ~]# vim /etc/named.rfc1912.zones
省略部分
......
zone "xzw.com" IN { #正向‘hello.com区域’
type master; #类型为主区域
file "xzw.com.zone"; #区域数据文件为hello.com.zone
allow-update { none; }; #允许更新选定数据
};
省略部分
......
复制/var/named/named.localhost到hello.com.zone
[root@localhost ~]# cp -p /var/named/named.localhost /var/named/xzw.com.zone
[root@localhost ~]# vim /var/named/xzw.com.zone
$TTL 1D #有效解析记录的生存周期
@ IN SOA @ rname.invalid. ( #SOA标记,域名,管理邮箱
0 ; serial #更新序列号
1D ; refresh #刷新时间
1H ; retry #重试时间
1W ; expire #失效时间
3H ) ; minimum #无效解析记录的生存周期
NS @
A 127.0.0.1
www A 192.168.108.4
ftp IN CNAME www
地址解析部分
NS域名服务器:记录当前区域的DNS服务器的主机地址
A地址:记录正向解析跳舞。例如,www IN A 192.168.233.13 表示域名www.hello.com对应的IP地址是192.168.233.13
CNAME:记录某一个正向解析条目的其他名称。例如: ftp IN CNAME www 表示域名ftp.hello.com 是www.hello.com的别名
4.启动named,并查看状态
[root@localhost ~]# systemctl start named
[root@localhost ~]# netstat -antp | grep named
tcp 0 0 192.168.108.4:53 0.0.0.0:* LISTEN 5644/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 5644/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 5644/named
tcp6 0 0 ::1:53 :::* LISTEN 5644/named
tcp6 0 0 ::1:953 :::* LISTEN 5644/named
打开PC
打开IPV4并修改
nslookup解析域名
注意:
Linux和win10需关闭防火墙:
[root@localhost ~]# systemctl stop firewalld.service
拓展:win10访问网页
所需工具:httpd软件。
配置文件地址:/var/www/html/
- 启动httpd,并查看httpd状态
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# netstat -antp | grep httpd
tcp6 0 0 :::80 :::* LISTEN 5906/httpd
- 编辑html文件:
[root@localhost ~]# vim /var/www/html/index.html
hello world
~
- win10访问www.xzw.com