高速缓存DNS
来源:互联网 发布:js中的选择器 编辑:程序博客网 时间:2024/05/29 04:01
################高速缓存DNS###############
DNS -权威名称服务器
– 存储并提供某区域 ( 整个DNS域或DNS域的一部分)的实际数据。权威名称服务器的类型包括:
Master : 包含原始区域数据。有时称作“ 主要”名称服务器
Slave : 备份服务器 , 通过区域传送从Master服务器获得的区域数据的副本。有时称作“次要” 名称服务
器
非权威 /递归名称服务器
– 客户端通过其查找来自权威名称服务器的数据。递归名称服务器的类型包括仅缓存名称服务器:仅用于查找,对于非重要数据之外的任何内容都不具有权威性
DNS 查找
–客户端上的Stub解析器 将查询发送至/etc/resolv.conf中的名称服务器
如果名称服务器对于请求的信息具有权威性 ,会将权威答案发送至客户端
否则 ,如果名称服务器在其缓存中有请求的信息,则会将非权威答案发送至客户端
如果缓存只能该没有信息 ,名称服务器将搜索权威名称服务器以查找信息,从根区域开始,按照
DNS 层次结构向下搜素 , 直至对于信息具有权威性的名称服务器,以此为客户端获得答案。在此情况中
, 名 ch称服务器将信息传递至客户端并在自己的缓存中保留一个副本,以备以后查找www.westos.orgDNS资源记录
• DNS 区域采用资源记录的形式存储信息。每条资源记录均具有一个类型, 表明其保留的数据类型
– A : 名称至 IPv4 地址
– AAAA : 名称至 IPv6 地址
– CNAME : 名称至 ” 规范名称“ (包含A/AAAA记录的另
一个名称 )
– PTR : IPv4/IPv6地址至名称
– MX : 用于名称的邮件交换器( 向何处发送其电子邮件)
– NS : 域名的名称服务器
– SOA :” 授权起始 “ , DNS 区域的信息(管理信息)
www.westos.orgDNS排错
• 它显示来自 DNS 查找的详细信息,其中包括
为什么查询失败 :
– NOERROR : 查询成功
– NXDOMAIN : DNS服务器提示不存在这样的名称
– SERVFAIL : DNS服务器停机或DNSSEC响应
验证失败
– REFUSED : DNS服务器拒绝回答( 也许是出于
访问控制原因 )
www.westos.orgdig输出的部分内容
• 标题指出关于查询和答案的信息, 其中包括
响应状态和设置的任何特殊标记 ( aa表示
权威答案 ,等等)
– QUESTION : 提出实际的DNS 查询
– ANSWER : 响应 ( 如果有)
– AUTHORITY : 负责域/ 区域的名称服务器
– ADDITIONAL : 提供的其他信息 , 通常是关于名称服务器
– 底部的注释指出发送查询的递归名称服务器以及获得响应所花费的时间
www.westos.org缓存DNS服务器
BIND 是最广泛使用的开源名称服务器。在RHEL 中,通过bind软件包提供
防火墙开启端口 53/TCP和53/UDP
BIND 的主配置文件是 /etc/named.conf
/var/named 目录包含名称服务器所使用的其他数据文件
www.westos.org/etc/named.conf的语法
• // 或 #至行末尾是注释;/*与*/ 之间的文本也是注释( 可以跨越多行)
• 指令以分号结束 (;)
• 许多指令认为地址匹配列表放在大括号中、以CIDR表示法表示的IP地址或子网列表中,或者命名的ACL中(例如 any; [所有主机 ]和none; [无主机] )
• 文件以 options块开始,其中包含控制named
如何运作的指令
• zone 块控制 named 如何查对于其具有权威性的
根名称服务器和区域
www.westos.org一些重要的options指令
•listen-on 控制 named 侦听的IPv4地址
•listen-on-v6 控制named 侦听的IPv6地址
•allow-query 控制哪些客户端可以向DNS 服务器询问信息
•forwarders 包含 DNS 查询将转发至的名称服务器的列表
( 而不是直接联系外部名称服务器; 在设有防火 墙的情况中
很有用 )
• 所有这些指令会将打括号中以分号分隔的元素视为地址匹配
列表 .如
– listen-on { any; };
– allow-query { 127.0.0.1; 10.0.0.0/8 };
www.westos.org配置名称服务器
• 安装 bind软件包
– yum install -y bind
• 编辑 /etc/named.conf
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query { any; };
forwarders { 172.25.254.254; };
• 启动并启用 DNS 服务器
• systemctl start named
• systemctl enable named
• 从 desktopX进行测试
– dig classroom.example.com
1.配置dns服务
服务端
[root@dns-server ~]# yum install bind -y
[root@dns-server ~]# systemctl restart named
[root@dns-server ~]# systemctl stop firewalld
[root@dns-server ~]# vim /etc/named.conf ##主配置文件
[root@dns-server ~]# systemctl restart named
[root@dns-server ~]# cat /etc/named.conf
options {
listen-onport 53 { any; }; ##访问主机的53端口
listen-on-v6port 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";
allow-query { any; }; ##允许任何地址来访问
forwarders { 172.25.254.250;}; ##访问250服务器解析域名
dnssec-enableyes;
dnssec-validationno;
客户端
[root@dns-client ~]# yum install bind -y
[root@dns-client ~]# systemctl stop firewalld
[root@dns-client ~]# systemctl start named
[root@dns-client ~]# vim /etc/resolv.conf
[root@dns-client ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search example.com
nameserver 172.25.254.200
[root@dns-client ~]# dig www.baidu.com ##查询百度的ip
; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 4729
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.INA
;; Query time: 4010 msec
;; SERVER: 172.25.254.200#53(172.25.254.200)
;; WHEN: Tue May 09 08:57:42 EDT 2017
;; MSG SIZE rcvd: 42
2.dns解析
(1)正向解析
服务端
[root@dns-server ~]# vim /etc/named.rfc1912.zones
[root@dns-server ~]# cat /etc/named.rfc1912.zones
zone "westos.com" IN {
type master;
file"westos.com.zone";
allow-update{ none; };
[root@dns-server named]# cd /var/named
[root@dns-server named]# cp -p named.localhost westo.com.zone
[root@dns-server named]# vim westos.com.zone
[root@dns-server named]# cat westos.com.zone
$TTL 1D
@ IN SOA dns.westos.com. rootwestos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H) ; minimum
NS dns.westos.com.
dns A 172.25.254.200 ##dns服务器
www A 172.25.254.100 ##指定www.westos.com的ip
music CNAME music.a.westos.com ##域名规范
music.a A 172.25.254.200
music.a A 172.25.254.100
westos.com. MX 1 172.25.254.100 ##邮件dns,MX1为邮件等级
[root@dns-server named]# systemctl restart named
客户端
[root@dns-client ~]# dig www.westos.com
; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> www.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21788
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.westos.com.INA
;; ANSWER SECTION:
www.westos.com.86400INA172.25.254.100
;; AUTHORITY SECTION:
westos.com.86400INNSdns.westos.com.
;; ADDITIONAL SECTION:
dns.westos.com.86400INA172.25.254.200
;; Query time: 1 msec
;; SERVER: 172.25.254.200#53(172.25.254.200)
;; WHEN: Tue May 09 09:55:38 EDT 2017
;; MSG SIZE rcvd: 93
dig -t mx westos.com ##查看邮件接收方的ip
mail root@westos.com ##给westos.com 发送邮件
ctrl+d ##结束
mailq ##查看邮件发送状态
*)多项解析dns服务器:(不同网段的客户机解析出的IP也不同)
服务端:给server虚拟机增加一块网卡eth1,ip为172.25.2.11
systemctl restart network
cd /var/named
cp -p westos.com.zonewestos.com.inter
vim westos.com.inter
$TTL 1D
@ IN SOA dns.westos.com. root.westos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.2.200
www A 172.25.2.100
music CNAME music.a.westos.com.
music.a A 172.25.2.100
music.a A 172.25.2.200
westos.com. MX 1 172.25.2.100
vim /etc/named.conf ##主配置文件将原来的zone"."那一段注释掉,添加以下内容:
view localnet {
match-clients {172.25.254.0/24; }; ##254网段
zone "." IN {
type hint;
file "named.ca";
};
include"/etc/named.rfc1912.zones";
};
view inter {
match-clients {172.25.2.0/24; }; ##2网段
zone "." IN {
type hint;
file"named.ca";
};
include"/etc/named.rfc1912.inter";
};
测试:
nameserver 172.25.254.200
vim /etc/resolv.conf
nameserver 172.25.2.11
(2)反向解析
服务端
[root@dns-server named]# vim /etc/named.rfc1912.zones
50
51 zone "254.25.172.in-addr.arpa" IN { ##反向地址
52 type master;
53 file "westos.com.ptr";
54 allow-update { none; };
55 };
[root@dns-server named]# cd /var/named
[root@dns-server named]# ls
data named.ca named.localhost slaves westos.com.zone
dynamic named.empty named.loopback westos.com.inter
[root@dns-server named]# cp -p named.loopback westos.com.ptr
[root@dns-server named]# vim westos.com.ptr
$TTL 1D
@ IN SOA dns.westos.com. root.westos.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.westos.com.
dns A 172.25.254.200
111 PTR www.westos.com.
[root@dns-server named]# systemctl restart named
客户端
[root@dns-client ~]# dig -x 172.25.254.111
; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> -x 172.25.254.111
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39026
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;111.254.25.172.in-addr.arpa.INPTR
;; ANSWER SECTION:
111.254.25.172.in-addr.arpa. 86400 INPTRwww.westos.com.
;; AUTHORITY SECTION:
254.25.172.in-addr.arpa. 86400INNSdns.westos.com.
;; ADDITIONAL SECTION:
dns.westos.com.86400INA172.25.254.200
;; Query time: 1 msec
;; SERVER: 172.25.254.200#53(172.25.254.200)
;; WHEN: Tue May 09 11:08:08 EDT 2017
;; MSG SIZE rcvd: 118
3. dns更新
*)[root@dns-server named]# cp -p /var/named/westos.com.zone /mnt ##备份源文件
[root@dns-server named]# vim /etc/named.rfc1912.zones
25
26 zone "westos.com" IN {
27 type master;
28 file "westos.com.zone";
29 allow-update { 172.25.254.100; }; ##允许100这台主机更新
30 };
[root@dns-server named]# chmod 770 /var/named ##给用户和组77权限
[root@dns-server named]# setsebool -p named_write_master_zones 1 ##允许写入
*)Check
[root@dns-client ~]# nsupdate
> server 172.25.254.200
> update add hello.westos.com 86400 A 172.25.254.222 ##增加域名 >update delete ##删除域名
> send
>
*)测试
[root@dns-server named]# vim /etc/resolv.conf
[root@dns-server named]# systemctl restart network
[root@dns-server named]# dig hello.westos.com
; <<>> DiG 9.9.4-RedHat-9.9.4-14.el7 <<>> hello.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1759
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;hello.westos.com.INA
;; ANSWER SECTION:
hello.westos.com.86400INA172.25.254.222 ##证明已更新
;; AUTHORITY SECTION:
westos.com.86400INNSdns.westos.com.
;; ADDITIONAL SECTION:
dns.westos.com.86400INA172.25.254.200
;; Query time: 0 msec
;; SERVER: 172.25.254.200#53(172.25.254.200)
;; WHEN: Tue May 09 11:31:27 EDT 2017
;; MSG SIZE rcvd: 95
systemctl restart named
vim /var/named/westos.com.zone ##可看到更新同步
4. dnskey 更新
*)mk kilefile ##制作钥匙
[root@dns-server named]# dnssec-keygen -a HMAC-MD5 -b 256 -n HOST westoskey ##需要在server主机无规则敲击命令生成密码 256个字符
Kwestoskey.+157+35861
[root@dns-server named]# ls
data named.empty westos.com.ptr
dynamic named.localhost westos.com.zone
Kwestoskey.+157+35861.key named.loopback westos.com.zone.jnl
Kwestoskey.+157+35861.private slaves
named.ca westos.com.inter
[root@dns-server named]# cat Kwestoskey.+157+35861.private
Private-key-format: v1.3
Algorithm: 157 (HMAC_MD5)
Key: Bl+NYzpuHiiWcSBzZHnBw74uaBvQdew22jYYiiEDxkI=
Bits: AAA=
Created: 20170509154111
Publish: 20170509154111
Activate: 20170509154111
*)mk key configfile
[root@dns-server named]# cp -p /etc/rndc.key /etc/westos.key
[root@dns-server named]# vim /etc/westos.key
1 key "westoskey" { ##钥匙名
2 algorithm hmac-md5;
3 secret "Bl+NYzpuHiiWcSBzZHnBw74uaBvQdew22jYYiiEDxkI="; ##钥匙
4 };
*)config dns
Vim /etc/named.conf
43 include "/etc/westos.key"; ##添加此行
Vim /etc/named.rfc1912.zones
26 zone "westos.com" IN {
27 type master;
28 file "westos.com.zone";
29 allow-update { key westoskey; }; ##允许密钥更新
30 };
*)check
[root@dns-server named]# scp Kwestoskey.+157+35861.*root@172.25.254.100:/mnt
[root@dns-client mnt]# ls
Kwestoskey.+157+35861.key Kwestoskey.+157+35861.private
[root@dns-client mnt]# nsupdate -k /mnt/Kwestoskey.+157+35861.private
> server 172.25.254.200
> update add hello.westos.com 86400 A 172.25.254.111
> send
5.dhcpd自动解析
服务端
[root@dns-server ~]#yum install dhcp -y
[root@dns-server ~]#cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp: overwrite‘/etc/dhcp/dhcpd.conf’? y
[root@dns-server ~]#vim /etc/dhcp/dhcpd.conf
7 option domain-name"westos.com"; ##域名
8 optiondomain-name-servers 172.25.254.200; ##dns服务器
30 subnet 172.25.254.0netmask 255.255.255.0 {
31 range172.25.254.188 172.25.254.199; ##ip池,任意分配
32 option routers172.25.254.254; ##网关
14 ddns-update-styleinterim; ##允许钥匙更新
34 key westos {
35 algorithm hmac-md5;
36 secret Bl+NYzpuHiiWcSBzZHnBw74uaBvQdew22jYYiiEDxkI=;
37 };
38
39 zone westos.com.{
40 primary 127.0.0.1; ##回环接口ip
41 key westos;
42 }
[root@dns-server ~]#systemctl restart dhcpd
[root@dns-server ~]#systemctl restart named
[root@dns-server ~]#systemctl restart dhcpd
客户端
[root@dns-client mnt]#hostnamectl set-hostname test.westos.com
[root@hhh ~]# vim/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
[root@dns-client mnt]# systemctl restart network
[root@dns-client mnt]# ifconfig
eth0:flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet172.25.254.188 netmask 255.255.255.0 broadcast 172.25.254.255
inet6fe80::5054:ff:fe00:2a0b prefixlen 64 scopeid 0x20<link>
ether52:54:00:00:2a:0b txqueuelen 1000 (Ethernet)
RXpackets 6519 bytes 3169691 (3.0 MiB)
RXerrors 0 dropped 0 overruns 0 frame 0
TXpackets 2478 bytes 299400 (292.3 KiB)
TXerrors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo:flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet127.0.0.1 netmask 255.0.0.0
inet6::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RXpackets 1575 bytes 136754 (133.5 KiB)
RXerrors 0 dropped 0 overruns 0 frame 0
TXpackets 1575 bytes 136754 (133.5 KiB)
TXerrors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@dns-client mnt]# digserver.westos.com
; <<>> DiG9.9.4-RedHat-9.9.4-14.el7 <<>> server.westos.com
;; global options: +cmd
;; Got answer:
;;->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36128
;; flags: qr aa rd ra;QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0,flags:; udp: 4096
;; QUESTION SECTION:
;test.westos.com. INA
;; ANSWER SECTION:
test.westos.com. 300IN A 172.25.254.188
;; AUTHORITY SECTION:
westos.com. 86400 IN NSdns.westos.com.
;; ADDITIONAL SECTION:
dns.westos.com. 86400IN A172.25.254.200
;; Query time: 1 msec
;; SERVER:172.25.254.200#53(172.25.254.200)
;; WHEN: Tue May 09 11:58:27 EDT 2017
;; MSG SIZE rcvd:96
- dns高速缓存
- 高速缓存DNS
- 高速缓存DNS
- 高速缓存DNS
- 高速缓存DNS
- 高速缓存dns
- 高速缓存DNS
- 高速缓存dns
- DNS高速缓存服务器
- 高速缓存区dns
- Linux系统DNS高速缓存
- linux的dns高速缓存
- dns高速缓存服务器
- 手动清空DNS高速缓存
- linux基础3.3高速缓存DNS
- 高速缓存服务器——dns
- Linux——高速缓存dns
- Linux——dns高速缓存
- ds 线性表 原地置换
- UGUI 自定义 美术字
- Android中实现SQLite数据库CRUD操作的两种方式
- Promise对象
- JavaWeb 03 HTTP协议
- 高速缓存DNS
- JavaWeb 04 解决中文乱码问题
- MVC间的通信(附代码)
- tensorflow自学之前的bigpicture
- Android应用程序管理系列(一)——管理对象封装概述
- TensorFlow实战
- JavaWeb 05 Web应用路径问题【绝对路径和相对路径】
- LeetCode 16. 3Sum Closest
- [人工智能技术]技术实战札记