DNS
DNS(Domain Name Service)域名解析服务,就是将域名和ip之间作相应的转换,利用TCP和UDP的53号端口。
DNS系统的作用:
- 正向解析:根据域名查找对应的ip地址
- 反向解析:根据ip地址查找对应的域名
DNS服务器的分类:
- 主要名称服务器:存放该区域中相关设置的DNS服务器,其存放的是区域文件的正本数据
- 辅助名称服务器:从其他服务器中复制数据,数据为副本无法修改
- 主控名称服务器:提供趋于数据复制的DNS服务器
- 缓存域名服务器:通过向根或其他服务器查询获得域名到ip的解析关系,将查询结果缓存到本地,提高查找速度
域名空间结构
根域(.)
顶级域(顶级域包括组织域和国家/地区顶级域)
net、edu、com、gov、mail、org、cn、uk…
- 组织顶级域(net、edu、com、gov、mail、org…)
- 国家、地区顶级域(cn、uk…)
二级域名(baidu、taobao…)
三级域名(www、mail…)
DNS域名解析过程:
1.客户端访问域名,先查看自己主机的 DNS缓存(有时间限制),如果主机缓存有,则直接访问对应IP
2.若主机 DNS 缓存没有,则查看主机的 hosts 文件,如果有,直接访问对应 IP
3.若 hosts 文件没有,则将该请求发送给主机指定的域名服务器
4.域名服务器收到请求后,先查询本地的缓存,若有该记录项,则域名服务器就直接把查询的结果返回。
5.若本地缓存中没有该记录,则域名服务器把请求发送给根域名服务器,根域名服务器返回给域名服务器一个所查询域(根的子域)的主域名服务器的地址。
6.本地服务器向上一步返回的主域名服务器发送请求,接受请求的服务器查询自己的缓存,若没有该记录,则返回相关的下级域名服务器的地址。
7.一直重复上一步,直到找到访问域名所对应的ip地址,然后DNS服务器把域名对应的ip地址发送给主机,同时DNS服务器本地保存起来。
顺序:本地DNS缓存 > hosts文件 > DNS服务器
各种解析记录
类型 | 说明 |
---|---|
A | 主机记录,记录域名对应IP |
PTR | 反向地址解析记录,记录IP对应的域名 |
CNAME | 别名记录 |
MX | 邮箱交换记录 |
NS | 服务器记录 |
SOA | 权威记录 |
AAAA | ipv6地址记录 |
SRV | 列出了正在提供特定服务的服务器 |
TXT | 记录说明 |
A记录
A (Address) 记录也叫主机记录,是用来指定域名对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的网页服务器(web server)上。同时也可以设置域名的子域名。通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当输入域名的时候给你引导向设置在DNS的A记录所对应的服务器。在命令行下可以通过 nslookup -qt=a www.baidu.com来查看A记录。
一.高速缓存DNS的安装部署
yum install bind -y
vim /etc/named
ed
systemctl restart named
在另外一台主机:
正向解析:
正向解析(论叫机制)
注意:dig haha.westos.com两次,两次解析到不同的地址有变化
反向解析
cp -p /var/named/named.loopback /var/named/172.25.254.ptr
vim /var/named/172.25.254.ptr
dig -x 172.25.254.111
多向解析
vim /etc/named.conf
view localnet {
match-clients { localhost; }; ##172.25.254.0/24
}
view internet {
match-clients { any; };
}
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.inter.zones
vim /etc/named.rfc1912.inter.zones
cp -p /var/named/westos.zone /var/named/westos.inter.zone
vim /var/named/westos.inter.zone
检测:
本机 dig bbs.westos.com
另外一台
vim /etc/named/westos.com.inter
DNS集群
另外一台虚拟机配置dns 作为 辅助dns
vim /etc/resolv.conf
nameserver 172.25.254.240 自身
vim /etc/named.conf
vim /etc/named.rfc1912.zones
type slave;
masters { 172.25.254.140; };
file "slaves/westos.com.zone";
vim /var/named/westos.com.zone
主
vim /etc/named.rfc1912.zones
also-notify { 172.25.254.240;}
allow-transfer { 172.25.254.240;};
修改主NDS的域名对应 IP
配置辅助DNS
vim /etc/named.rfc1912.zones
vim /etc/named.conf
远程更新
cp /var/named/westos.com.zone /opt
vim /etc/named.rfc1912.zones
allow-update {172.25.254.140;}
nsupdate
server 172.25.254.140
update add test.westos.com 86400 A 172.25.254.111 ##update delete test.westos.com
send
quit
dig test.westos.com
远程更新加密
rm -fr westos.com.zone* 删除上一个实验建立配置的文件
cp -p /mnt/westos.com.zone . 重新带权限复制
cd /mnt 移动到/mnt下(实验环境)
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos 生成加密钥匙(-a 加密方式 -b 密码大小bits -n nametype域名解析) Kwestos.+157+02732
cp /etc/rndc.key /etc/westos.key -p 编辑密钥文件
vim /etc/westos.key
key "westos" { algorithm hmac-md5; secret "wLb7wlj95YfZFUK8nZ1Oqw=="; };
vim /etc/named.conf
添加一行
include "/etc/westos.key"; 新增密钥文件
vim /etc/named.rfc1912.zones
23行 allow-update { key westos; };
systemctl restart named 重启服务
ddns动态域名解析(花生壳)
yum install dhcp -y ##安装dhcp服务
rm -fr westos.com.zone* ##删除文件,还原实验内容
cp -p /mnt/westos.com.zone .
systemctl restart named ##重启服务
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp: overwrite ‘/etc/dhcp/dhcpd.conf’? y ####有覆盖提示,说明文件正确
cat /etc/westos.key ##把文件复制到下一个文件内
vim /etc/dhcp/dhcpd.conf ##编辑配置文件
7 option domain-name "westos.com";
8 option domain-name-servers 172.25.254.120; ##destop虚拟机IP
14 ddns-update-style interim;
##删除27.28行,34行后面所有
30 subnet 172.25.254.0 netmask 255.255.255.0 { ##子网、子网掩码
31 range 172.25.254.80 172.25.254.90; ##动态IP网段(自己设置)
32 option routers 172.25.254.120; ##destop虚拟机IP
33 }
34 key westos {
35 algorithm hmac-md5; ##key的加密方式
36 secret wLb7wlj95YfZJ/dxCNgOZQ==; ##key的密码
37 };
38 zone westos.com. {
39 primary 127.0.0.1; ##主机内部回环接口
40 key westos; ##读取的加密文件为westos
41 }
systemctl restart dhcpd ##重启dhcpd服务
另外一台虚拟机上:
hostnamectl set-hostname linux.westos.com ##修改名称
hostname ##查看名称
linux.westos.com
vim /etc/sysconfig/network-scripts/ifcfg-eth0 ##修改网络为动态
systemctl restart network ##重启不起来
dig linux.westos.com
;; ANSWER SECTION:
linux.westos.com. 300 IN A 172.25.254.86