1、DNS服务器端软件
DNS 的==域名解析==都是 ==udp/53== . 主从之间的==数据传输==默认使⽤==tcp/53==DNS服务器端软件:==Bind==是⼀款开放源码的DNS服务器软件,Bind由美国加州⼤学Berkeley(伯克利)分校开发和维护的,全名为Berkeley Internet Name Domain它是⽬前世界上使⽤最为⼴泛的DNS服务器软件,⽀持各种unix平台和windows平台。BIND现在由互联⽹系统协会(Internet Systems Consortium)负责开发与维护 。
2、DNS服务器搭建
☆ 第⼀步:环境准备
编号 | 主机名称 | ip地址 | 备注信息 |
1 | client | x.x.x.x | client客户端。用于测试 |
2 | dns | x.x.x.x | dns服务器,用于实现域名解析 |
3 | web | x.x.x.x | web服务器,用于搭建内部web服务 |
① 更改主机名称与IP地址
# hostnamectl set-hostname client
# hostnamectl set-hostname dns
# hostnamectl set-hostname web
# su
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.1.1.11/10.1.1.12/10.1.1.13
更改UUID编号的后3位,必须是唯⼀的
② 使⽤MX进⾏连接
③ 关闭防⽕墙与SELinux
# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
# vim /etc/selinux/config
SELINUX=disabled
④ 配置YUM源(有⽹配置公⽹YUM源、⽆⽹就配置光盘或⾃建YUM源)
# yum clean all
# yum makecache
☆ 第⼆步:安装DNS软件
DNS服务器:
# yum install bind -y
安装完毕后,可以使⽤rpm -q查询是否安装成功:
# rpm -q bind
# rpm -ql bind
# ⽇志轮转⽂件
/etc/logrotate.d/named
# 配置⽂件⽬录
/etc/named
# 主配置⽂件
/etc/named.conf
# zone⽂件,定义域
/etc/named.rfc1912.zones
# 服务管理脚本
/usr/lib/systemd/system/named.service
# ⼆进制程序⽂件
/usr/sbin/named
# 检测配置⽂件
/usr/sbin/named-checkconf
# 检测域⽂件
/usr/sbin/named-checkzone
# 根域服务器
/var/named/named.ca
# 正向解析区域⽂件模板
/var/named/named.localhost
# 反向解析区域⽂件模板
/var/named/named.loopback
# dns服务器下载⽂件的默认路径
/var/named/slaves
# 进程pid
/var/rum/named
find主要⽤来搜索计算机中的⽂件,rpm主要⽤来检查计算机中是否安装过
某个软件
☆ 第三步:DNS正向解析配置(域名=>IP)
/etc/named.conf主要配置访问权限控制(哪些IP或哪些主机可以访问DNS服务器)
/etc/named.rfc1912.zones主要定义域名如何解析(正向解析),解析到具体哪个IP
地址
① 对named.conf以及named.rfc1912.zones进⾏备份
cp /etc/named.conf /etc/named.conf.bak
cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak
② named.conf主配置⽂件详解(访问权限控制)
添加任何主机都可以访问的权限:
# vim /etc/named.conf
③ zones⼦配置⽂件详解(域名应该指向哪个IP地址)
# vim /etc/named.rfc1912.zones
...
zone "zhangmin" IN {
type master;
file "zhangmin.zone";
allow-update { none; };
};
扩展 => vim => :19,23 co 42,把19-23⾏,copy到42⾏的后⾯
④ 在/var/named⽬录创建itcast.cluster.zone⽂件定义正向解析
# cd /var/named
# cp -p named.localhost itcast.cluster.zone
扩展:-p代表复制⽂件时保留⽂件的原有属性
⑤ 编辑itcast.cluster.zone⽂件,定义域名的指向
# vim itcast.cluster.zone
扩展:zone⽂件的格式说明
zone⽂件详解
# $TTL 缓存的⽣存周期
# @ = zonename = itcast.com 当前域
# IN 互联⽹
# SOA 开始授权
# NS dns服务端 nameserver
# A ipv4 正向
# AAAA IPV6
# CNAME 别名
# MX 邮件交互记录 5 数字代表优先级 数字越⼩优先级越⾼
# 0 ; serial 更新序列号
# 1D ; refresh 更新间隔(从服务器下载数据)
# 1H ; retry 失败重试
# 1W ; expire 区域⽂件的过期时间
# 3H ) ; minimum 缓存的最⼩⽣存周期
# D Day、H Hour、W Week
☆ 第四步:检查named.conf与zones⽂件
# named-checkconf /etc/named.conf
# named-checkconf /etc/named.rfc1912.zones
检查itcast.cluster.zone⽂件
# cd /var/named
# named-checkzone itcast.cluster.zone itcast.cluster.zone
☆ 第五步:启动DNS服务(named)
# systemctl restart named
# netstat -tnlp |grep named
3、Web服务搭建
# yum install httpd -y
# systemctl start httpd
# echo 'DNS Test ...' > /var/www/html/index.html
4、测试DNS服务器的正向解析
Client:客户端服务器操作
☆ 添加DNS服务器
# 临时
echo 'nameserver 10.1.1.12' > /etc/resolv.conf
注:电脑重启,⽹络刷新restart network,VMware挂起,临时DNS都会失效
# 永久添加
vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS=10.1.1.12
☆ 使⽤nslookup检测正向解析是否⽣效
# nslookup www.itcast.cluster
☆ 使⽤elinks命令⾏浏览器或curl来实现访问
# yum install elinks -y
# elinks
输⼊www.itcast.cluster
# curl http://www.itcast.cluster