DNS正向解析的小实验
模拟实验
背景
1)准备3台虚拟机,一台Windows虚拟机PC1(不限制win7或者win10)、一台Linux服务器server1(IP是172.16.100.100/24)和一台空虚拟机server2。虚拟机网络使用仅主机模式。
2)server1提供DHCP服务给PC1和server2分配对应网段的IP地址。
虚拟网络用vnet1,且切换成仅主机模式。
win10的虚拟机启用DHCP且能自动获取IP地址
1. 开启httpd服务,httpd服务适用于域名的,开启了才能用网址
操作具体命令
yum install -y httpd
systemctl start httpd.service
具体操作步骤:
2.安装bind包
操作具体命令:
yum -y install bind #安装bind
具体操作步骤:
3.查看需要修改的配置文件所在路径
具体操作所需要
rpm -qc bind #查询bind软件配置文件所在路径
/etc/named.conf #主配置文件
/etc/named.rfc1912.zones #区域配置文件
/var/named/named.localhost #区域数据配置文件
具体实验步骤:
3.配置主配置文件
操作具体命令
vim /etc/named.conf
options {
listen-on port 53 {
172.16.100.100; }; #监听53端口,ip地址使用提供服务的本地IP,也可用any表示所有
#listen-on-v6 port 53 {
::1; }; #ipv6行如不使用可以注释掉或者删除
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"; #内存统计文件的位置
allow-query {
any; }; #允许使用本DNS解析服务的网段,也可用any代表所有
……
}
zone "." IN {
#正向解析“.”根区域
type hint; #类型为根区域
file "named.ca"; #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};
include "/etc/named.rfc1912.zones"; #包含区域配置文件里的所有配置
具体操作步骤:
4.配置区域配置文件
操作具体命令
vim /etc/named.rfc1912.zones #可在文件里有模版,可复制粘贴后修改
zone "rain1215.com" IN {
#正向解析“rain1215.com”区域
type master; #类型为主区域
file "rain1215.com.zone"; #指定区域数据文件为rain1215.com.zone
allow-update {
none; }; #忽略,可不用配置,默认就好
};
具体操作步骤:
5.正向区域数据配置文件
操作具体命令
cd /var/named/
cp -p named.localhost rain1215.com.zone #保留源文件的权限和属主的属性复制
vim /var/named/rain1215.com.zone
$TTL 1D #设置缓存解析结果的有效时间
@ IN SOA rain1215.com. admin.rain1215.com. ( #邮件和域名后面的“.”不能忘
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS rain1215.com. #记录当前区域的DNS服务器的名称(必不可少)
А 172.16.100.100 #记录主机IP地址(必不可少)
IN MX 10 mail.rain1215.com. #MX为邮件交换记录,数字越大优先级越低
www IN A 172.16.100.100 #记录正向解析www.rain1215.com对应的IP
mail IN A 172.16.100.100 #邮箱的正向解析地址
ftp IN CNAME www #CNAME使用别名, ftp是www的别名
* IN A 172.16.100.100 #泛域名解析, "*" 代表任意主机名
具体操作步骤:
6.重启服务并且关闭防火墙
操作具体命令
systemctl start named
systemctl stop firewalld
setenforce 0
#如果服务启动失败,可以查看日志文件来排查错误
tail -f /var/log/messages
#如果服务启动卡住,可以执行下面命令解决
rndc-confgen -r /dev/urandom -a
具体操作步骤:
7.修改网卡DNS服务器地址
操作具体命令
vim /etc/resolv.conf #修改完后立即生效
nameserver 172.16.100.100
systemctl restart network
具体操作步骤:
8.DNS检验
操作具体命令
host www.rain1215.com
nslookup www.rain1215.com
具体操作步骤:
去WIN10虚拟机上实验