如图所示,现考虑主机H4向DNS查询域名www.abc.xyz.com的IP地址。
第一步:在主机位置处,经过传输层组织UDP报文段,经过网络层组织IP分组并将本主机IP(192.168.3.252)和目的IP(201.1.1.1)填入IP分组的头部,经过数据链路层组织MAC帧将本主机的MAC地址和路由器R2的E1接口网卡处的MAC地址填入帧的头部。
第二步:已经组织好的MAC帧经过100BASE-T电缆发送到交换机处,交换机再根据MAC地址将MAC帧发送到路由器的E1接口。
第三步:此时已经到了路由器,开始解封装,将IP分组抽取出来,如果下面是内部网,则根据NAT地址转换协议将内部IP地址转换成全球IP地址,下一步就要根据ARP地址解析协议查询下一步要去的地址的MAC地址,也就是DNS服务的MAC地址,并进行封装。
第四步:查询路由表,将相应的IP分组转发到相应的端口处进行转发,转发之前要将IP分组进行封装,封装成MAC帧,帧的首部是路由器E0接口处的MAC地址和DNS服务器的网卡的MAC地址,然后根据MAC地址进行转发。
第五步:此时MAC帧到达了DNS服务器,下一步就要解封装,直至UDP报文,查找相应的端口,相应的进程运行,如果DNS服务器有所要的目的地址的IP地址,则经过相反的过程发送给H4主机,如果没有相应的IP地址,则DNS服务器采用递归与迭代相结合的方式依次查询本地域名服务器、根域名服务器、顶级域名服务器、权限域名服务器,查询到域名www.abc.xyz.com的IP地址之后,按照相反的方向以相同的方式将IP地址发送给H4主机。