关于DNS
Posted plutozzl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于DNS相关的知识,希望对你有一定的参考价值。
网络服务——DNS域名系统服务
- DNS介绍
1.1 什么是域名?
域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的,在互联网中来标识某一台计算机或者计算组的名称,用于在数据传输时标识计算机的电子方位。具有独一无二,不可以重复的特性。
IP地址难以记忆,为了方便记忆。域名与IP一一对应的映射关系。
1.2 什么是DNS?
域名系统(Domain Name System,缩写为DNS)是互联网的一项服务。将域名与IP地址间的映射关系做一个记录,以及查询的功能。域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便的访问到网站的一种服务。IP地址是网络上表示站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程,域名解析工作由DNS服务器来完成,可以理解为DNS就是翻译官。
正向解析: 域名 ---> IP地址
反向解析: IP地址 ---> 域名(过滤邮件会用到)
1.3 域名的组成与分类
常见格式:www.baidu.com (浏览器会默认补成完整格式)
完整格式:www.baidu.com.
. :称为根域,可以省略不写,是域名的起始点。主根,辅根,镜像根
com : 顶级域,由ICANN组织指定管理的。分类:国家地区域名:cn(中国)、hk(香港)、sg(新加坡)等。
通用顶级域名:com(商业机构)、org(非营利组织)、edu(教育机构)等。
新通用顶级域名:red(红色,热情) top(顶级的高端的)
baidu :二级域(注册域),可由个人或组织申请注册。
www :三级域(子域),服务器网站名代表。
主机名 : s1.www.baidu.com 中的s1就是主机名,用来表示具体的一台主机。
- 域名解析过程
1) 客户端访问www.baidu.com.:80(浏览器自动补齐:80 对应web服务器对应的端口。)
2) 客户端首先先查询自己的host文件,查看该文件内是否有www.baidu.com 的解析记录。这个文件优先级更高相比DNS。如果有则直接返回给浏览器。
3) 在本机中没有,客户端继续在本机内查询DNS的解析缓存,若有缓存则直接返回给浏览器。
4) 上述两个地方都找不到,客户端查看网卡上设置的DNS服务器地址,访问DNS服务器,查询域名的解析结果。若DNS服务器有解析记录则将IP地址返回给客户机
- 详细过程:
1) 客户机首先查看本地hosts文件,如果有则返回,否则进行下一步。
2) 客户机查看本地缓存,是否存在本条目的缓存,有则直接返回,否则进行下一步
3) 将请求转发给指向的DNS服务器
4) 查看域名是否本地解析(本地有解析库,DNS的缓存是指不在解析库中的域名IP解析,是解析库之外的。解析库权威性高于缓存),是则本地解析返回,否则进行下一步。
5) 本地DNS服务器,变成寻找域名的发起者,访问根域,顶级域,二级域寻找对应域名。本地DNS服务器在访问自己未访问过得域名时会将记录保存在缓存中,下次访问更快。
递归查询: 客户端与本地DNS服务器之间的查询
迭代查询: 客户端是本地的DNS服务器 查询目标是根域,顶级域等服务器之间的查询
- DNS--分布式DNS模型
1) 分布式DNS服务器:根域中保存所有顶级域的IP地址
顶级域中保存所有二级域的IP地址
二级域中记录所有三级域的IP地址
而单个DNS服务器与上述体系没有直接关系,他先访问根域找到顶级域进而依次查找。
2) 同一个任务由不同步骤共同完成的过程叫分布式(例如,生产车间中某一条流水线,流水线上有很多的步骤,不同步骤之间称为分布式)
3) 负载均衡: 客户机连接DNS负载均衡服务器,进而分发任务给多个DNS服务器,然后DNS对数据进行解析。将用户的请求分配到多个功能相同的服务器上(类似于,一个生产车间中的多条相同功能的流水线)
2.DNS服务器不可以随便部署,需要授权(ICAN)。一个虚假的DNS服务器会将域名解析为错误危险的IP。运维常用,个人网站的解析以及负载均衡的应用。
开始配置:
1. 安装
[root@dhcp ~]# yum install -y dhcp
[root@dhcp ~]# rpm -ql dhcp
/etc/dhcp/dhcpd.conf IPV4配置文件(点分十进制)
/etc/dhcp/dhcpd6.conf IPV6配置文件(:分十六进制)
/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
/usr/share/doc/dhcp-4.2.5/dhcpd6.conf.example
配置文件的帮助
/usr/share/man/man5/dhcpd.conf.5.gz
/usr/share/man/man5/dhcpd.leases.5.gz
man手册
/var/lib/dhcpd/dhcpd.leases
/var/lib/dhcpd/dhcpd6.leases
租约文件
租约:当C使用S的IP,达到租约时间的时候,如果能和S通信,那么继续使用S分配的IP;如果不能和S通信,那么C断开与原S的连接,继续在局域网发广播请求IP,如果找不到相应的S,
那么就会配置一个 169.254.x.x IP(B类)。
2. 配置
[root@dhcp /etc/dhcp]# vim dhcpd.conf 配置文件
subnet 172.16.0.0 netmask 255.255.0.0
##网段和子网掩码
range 172.16.0.100 172.16.0.200;
##IP地址池
option domain-name-servers 211.137.32.178;
##DNS-server
option routers 172.16.0.254;
##网关
default-lease-time 600;
##默认租约时间,秒
max-lease-time 7200;
##最大租约时间,秒
[root@dhcp ~]# vim /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example 样板
3. 启动
[root@dhcp ~]# systemctl start dhcpd
[root@dhcp ~]# systemctl enable dhcpd
[root@dhcp ~]# netstat -anupl | grep dhcp
udp 0 0 0.0.0.0:67 0.0.0.0:* 2540/dhcpd
[root@dhcp ~]# vim /etc/services
bootps 67/tcp # BOOTP server
bootps 67/udp
bootpc 68/tcp dhcpc # BOOTP client
bootpc 68/udp dhcpc
dhcp-server: udp/67
dhcp-client: udp/68
S 一个端口服务固定 C 端口不固定
- 测试
客户端修改IP地址的获取方式
[root@centos7 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
BOOTPROTO=dhcp #<--
[root@centos7 ~]# /etc/init.d/network restart
[root@centos7 ~]# ifconfig
ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.0.107 netmask 255.255.0.0 broadcast 172.16.255.255
[root@centos7 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.254 0.0.0.0 UG 100 0 0 ens32
[root@centos7 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 211.137.32.178
服务端查看日志:
[root@dhcp ~]# tail -0f /var/log/messages
Aug 13 13:58:11 dhcp dhcpd: DHCPDISCOVER from 00:0c:29:38:78:64 (centos7) via ens32
Aug 13 13:58:12 dhcp dhcpd: DHCPOFFER on 172.16.0.107 to 00:0c:29:38:78:64 (centos7) via ens32
Aug 13 13:58:12 dhcp dhcpd: DHCPREQUEST for 172.16.0.107 (172.16.0.21) from 00:0c:29:38:78:64 (centos7) via ens32
Aug 13 13:58:12 dhcp dhcpd: DHCPACK on 172.16.0.107 to 00:0c:29:38:78:64 (centos7) via ens32
服务端查看租约文件:
[root@dhcp ~]# less /var/lib/dhcpd/dhcpd.leases
以上是关于关于DNS的主要内容,如果未能解决你的问题,请参考以下文章