计算机网络(2)--应用层协议DNS与DHCP协议

DNS域名系统

在两台主机进行通信的时候,需要知道对方的IP地址,但是对于用户来说,很难记住一长串的IP地址,为了便于记忆,就出现了域名系统,例如www.baidu.com 对应的ip地址为110.242.68.4。域名系统DNS就是把互联网上的主机名字转为IP地址,域名系统是一个分布式的数据库系统,域名到IP地址的解析是由分布在互联网上的许多域名服务器程序共通完成的

互联网的域名体系结构分为:顶级域名(.com)、二级域名(baidu)、三级域名(www)等等,虽然域名结构是这样划分的,但是DNS服务器的划分而是以"区"为单位,每一个域名服务器都只对域名体系中的一部分进行管辖,可以将域名服务器划分为以下四种不同类型:

  • 根域名服务器:根域名服务器是最高层次的DNS服务器,所有的根域名服务器都知道所有的顶级域名服务的域名和IP地址
  • 顶级域名服务器:管理二级域名
  • 权限域名服务器:负责一个区的域名
  • 本地域名服务器:查询首先到达的服务器

DNS解析过程

image-20210326115816290

如上图,假设主机m.xyz.com需要知道y.abc.com的ip地址,分析DNS的解析过程:

  • 首先,主机m.xyz.com先向本地域名服务器发起递归查询(相当于本地域名服务器给主机返回的就是ip或者报错)
  • 递归查询:递归查询的结果就是就是想要的ip地址,也就是相当于代理,总理了一整个查询
  • 迭代查询:查询结果返回的是下一个服务器的地址,也就是不是返回最终结果
  • 本地域名服务器采取迭代查询,先向根域名服务器进行查询
  • 根域名服务器告诉本地域名服务器,下一次查询的顶级域名服务器的位置
  • 顶级域名服务器告诉本地域名服务器,下一次查询的权限域名服务器的位置
  • 权限域名服务器告诉本地域名服务器,所需要的ip地址
  • 本地域名服务器最后把查询的结果告诉主机m.xyz.com

这些报文均采用UDP报文,并且为了提高DNS的查询效率,在本地浏览器上有缓存,在主机上也要缓存,同时在域名服务器上也使用了高速缓存

DHCP动态主机配置协议

DHCP是动态主机配置协议,是一个局域网的协议使用UDP进行工作,常用的2个端口:67(DHCP服务器端口),68(DHCP客户端端口),使用DHCP可以动态的获取到IP地址,管理地址等等,简单的说DHCP就是一个不需要账号密码,能够自动给内网分配IP地址等信息的协议

DHCP工作过程

  • 首先,DHCP客户端广播一个Discover报文,源地址为0.0.0.0:68,目的地址为225.225.225.225:67,如果客户端和DHCP服务端不在一个子网内,则需要中继
  • DHCP服务器收到Discover报文之后,发送Offer报文给客户端,该报文包含了客户端所需要的所有信息,因为DHCP服务器可能很多,对应客户端也会收到很多Offer,所以还需要客户端进行发送确定报文
  • DHCP客户端收到Offer报文之后,进行选择某个服务器的信息,并向其发送Request请求给DHCP服务器
    之后,进行选择某个服务器的信息,并向其发送Request请求给DHCP服务器
  • DHCP服务区发送ACK确认报文,则客户端可以使用提供给它的信息

猜你喜欢

转载自blog.csdn.net/weixin_44706647/article/details/115257740