1、DNS协议
1.1、概述
DNS是一个分层的DNS服务器实现的分布式数据库;是一个使主机能够查询分布式数据库的应用层协议 。DNS协议可以运行在UDP之上,也可以运行在TCP之上的,使用53端口。它不是一个独立的洗衣==协议,通常为其他应用层协议所使用,这些协议包括HTTP,SMTP和FTP,将用户提供的主机名解析为IP地址。
1.2、DNS系统结构

DNS使大多数域名都在本地解析,仅少量解析需要在因特网上通信,因此系统效率很高。
由于DNS是分布式系统,即使单个计算机出了故障,也不会妨碍整个系统的正常运行。
1.3、域名结构
- 域名的结构由若干个分量组成,各分量之间用"点"隔开,分别代表不同级别的域名。
- 每⼀级的域名都由英文字⺟和数字组成,不超过63个字符,不区分大小写字⺟。
- 级别最低的域名写在最左边,而级别最高的顶级域名写在最右边。
- 完整的域名不超过255个字符。

顶级域名(TLD)分三类:
- 国家顶级域名nTLD
- 通用顶级域名gTLD
- 反向域
二级域名分两类:
- 类别域名:共七个(ac(科研机构)、com⼯、商⾦融等企业)、edu(教育机构)、gov(政府
部门)、net(提供⽹络服务的机构)、mil(军事机构)和org(⾮营利性组织)) - 行政区域名

1.4、域名服务器
三种DNS服务器:根DNS服务器、顶级域DNS服务器和权威DNS服务器

1.4.1、根域名服务器
根域名服务器是最高层次的域名服务器。
每个根域名服务器都知道所有的顶级域名服务器的域名及其IP地址。
根域名服务器通常并不直接对域名进行解析,而是返回该域名所属顶级域名的顶级域名服务器的IP地址。
1.4.2、顶级域名服务器
顶级域名服务器负责管理在该顶级域名服务器注册的所有二级域名。
1.4.3、权威(限)域名服务器
权限域名服务器负责管理某个区的域名。
每个主机的域名都必须在某个权限域名服务器处注册登记。因此权限域名服务器知道其管辖的域名与IP地址的映射关系。
权限域名服务器还知道其下级域名服务器的地址。
1.4.4、本地域名服务器
本地域名服务器起着代理的作用,会将该报文转发到上述的域名服务器的等级结构中。
本地域名服务器不属于上述的域名服务器的等级结构。
当⼀个主机发出DNS请求报文时,这个报文就⾸先被送往该主机的本地域名服务器。
1.5、DNS查询步骤

通常情况下,DNS 的查找会经历下⾯这些步骤:
- 用户在浏览器中输⼊网址 www.example.com 并点击回⻋后,查询会进⼊网络,并且由 DNS 解析器进行接收。
- DNS 解析器会向根域名发起查询请求,要求返回顶级域名的地址。
- 根 DNS 服务器会注意到请求地址的前缀并向 DNS 解析器返回 com 的顶级域名服务器(TLD) 的 IP 地址列表。
- 然后,DNS 解析器会向 TLD 服务器发送查询报⽂
- TLD 服务器接收请求后,会根据域名的地址把权威 DNS 服务器的 IP 地址返回给 DNS 解析器。
- 最后,DNS 解析器将查询直接发送到权威 DNS 服务器
- 权威 DNS 服务器将 IP 地址返回给 DNS 解析器
- DNS 解析器将会使用 IP 地址响应 Web 浏览器
⼀旦 DNS 查找的步骤返回了 example.com 的 IP 地址,浏览器就可以请求网页了。
1.6、DNS查询类型
- 递归查询:在递归查询中,DNS 客户端要求 DNS 服务器(⼀般为 DNS 递归解析器)将使⽤所请求的资源记录响应客户端,或者如果解析器无法找到该记录,则返回错误消息。

- 迭代查询:在迭代查询中,如果所查询的 DNS 服务器与查询名称不匹配,则其将返回对较低级别域名空间具有权威性的 DNS 服务器的引用。然后,DNS 客户端将对引⽤地址进⾏查询。此过程继续使⽤查询链中的其他 DNS 服务器,直⾄发⽣错误或超时为止。

- 缓存查询:为了提高DNS的查询效率,并减轻根域名服务器的负荷和减少因特网上的DNS查询报文数量,在域名服务器中广泛地使用了高速缓存。高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。

2、DHCP协议
DHCP 的全称是 Dynamic Host Configuration Protocol 动态主机配置协议。使用 DHCP 就能实现自动设置 IP 地址、统⼀管理 IP 地址分配。
DHCP 与 IP 密切相关,它是 IP 网络上所使用的协议,DHCP 服务器会为设备分配⼀个唯⼀的 IP 地址。
2.1、DHCP服务器
由于 IP 地址是动态的(临时分配)而不是静态的(永久分配),因此不再使⽤的 IP 地址会自动返回 IP 地址池中进行重新分配。DHCP 服务器通常为每个客户端分配⼀个唯⼀的动态 IP 地址,当该 IP 地址的客户端租约到期时,该地址就会更改。动态主机配置协议,作用是自动给局域网内设备分配 IP 地址、子网掩码、网关、DNS,省去手动配 IP 的操作,基于 UDP 工作。
2.2、DHCP工作机制
DHCP DISCOVER :客户端开始 DHCP 过程发送的包,是 DHCP 协议的开始
DHCP OFFER :服务器接收到 DHCPDISCOVER 之后做出的响应,它包括了给予客户端的 IP 租约
过期时间、服务器的识别符以及其他信息
DHCP REQUEST :客户端对于服务器发出的 DHCPOFFER 所做出的响应。在续约租期的时候同
样会使⽤。
DHCP ACK :服务器在接收到客户端发来的 DHCPREQUEST 之后发出的成功确认的报⽂。在建⽴
连接的时候,客户端在接收到这个报⽂之后才会确认分配给它的 IP 和其他信息可以被允许使⽤。
DHCP NAK :DHCPACK 的相反的报⽂,表示服务器拒绝了客户端的请求。
DHCP RELEASE :⼀般出现在客户端关机、下线等状况。这个报⽂将会使 DHCP 服务器释放发出
此报⽂的客户端的 IP 地址
DHCP INFORM :客户端发出的向服务器请求⼀些信息的报⽂
DHCP DECLINE :当客户端发现服务器分配的 IP 地址⽆法使⽤(如 IP 地址冲突时),将发出此报
⽂,通知服务器禁⽌使⽤该 IP 地址。