单怀军
摘要:本文选择DNS教学设计为例,来模拟DNS域名解析过程,并从分析DNs数据包方式来探讨其组织结构和工作过程,促进学生正确理解和应用。
关键词:计算机网络;DNs协议;模拟实验
对于计算机网络教学中的网络协议,由于其实践性强,常规课堂教学难以帮助学生正确理解和掌握。从目前实验教学应用现状来看,利用VMware虚拟软件来搭建网络服务平台,借助于仿真软件实现路由器、交换机的协议配置方法,让学生从中来理解计算机网络的基本原理,并为后期的网络服务配置技术打下操作基础。
一、DNS协议实验教学设计
在计算机网络分析技术实践中,DNS域名系统是用来标识终端IP地址的协议软件,由于在应用层软件中,主要采用间接方式与DNS域名系统发生联系,如浏览网页、收发邮件等。根据DNS报文格式,主要由12个字节首部和4个可变字段构成。其中标识信息占2个字节,通过客户程序来进行响应和查询匹配;标志信息占两个字节,其中QR位为查询/响应标志位,为1时代表响应,为0时代表查询;还有Opcode位,为0时代表标准查询,为1时代表响应,为2时代表服务器状态;以及AA位、TC位、RD位等等。对于四个可变字段,查询问题字段占两个字节,分别表示查询类型、查询类,以及查询问题所包含的条目数量;回答字段是对DNS报文的响应部分,既有资源数据,还有资源类型,以及资源类、数值和查询类值等,如生存时间记录资源的秒数,长度记录资源数据的数量:授权字段为响应报文所提供的授权内容,包括授权服务器信息等;额外信息附带DNS报文的其他信息,便于DNS域名解析时额外附加信息。
二、利用Wireshark软件进行DNS报文解析
(1)报文查询分析
利用Wireshark软件进行DNS报文过滤,首先进行DNS数据包抓取,来获取DNS报文信息。从查询结果来看,对于首部的第1,2字节,数据值为000e,表示由服务器返回用户程序的查询信息;第3,4字节为0100,对应的QR位为0,说明为查询报文,Opcode位为0,表示为标准查询方式,TC位、AA位为0,仅为响应报文有效;第5,6字节是查询问题类型、问题数据及记录数,第7,8,9,10,11,12字节与响应无关,不予考虑。
(2)报文响应分析
利用抓取软件对响应报文进行解析,获得标识字段为000e,标志字段为8180,问题记录字段为0001,应答字段为0003,授权字段为0005,附加字段为0005。对之进行解析可知,NO.213表示查询报文,NO.216表示为响应报文,对于标志位8180,可以进行二进制转换为100000011000000,其QR位为1,为响应报文,AA位0,为授权应答,Tc位0说明报文未被切割,RD位1,表示递归查询,AD位0,表示为服务器认证,CD为0表示其他数据为可接授的,Rcode为0表示无差错。
(3)模拟搭建DNS查询环境
通过搭建实验环境,利用虚拟主机发出DNS域名解析请求。首先在物理机上预装四台Windows 2003 server虚拟机和windows xp虚拟系统,通过Wireshark抓取软件来对域名解析服务进行实验。当虚拟机发出域名解析请求,分别由本地域名服务器进行反馈给根域名服务器、顶级域名服务器和权限域名服务器,最后将访问结果发送至请求主机。在这个过程中,各服务器通过对IP地址的响应,首先从域名服务器转向根域名服务器,再由根域名服务器转向顶级服务器,由顶级域名服务器返回Ip地址给权限域名服务器,在多次转发配置过程中,从请求到返回再到请求,再到返回,我们可以捕捉到整个DNs报文的查询过程。从中可知,对于客户请求端,发出的192.168.88.88地址,首先要查询根服务器的WWW.S.abc.com,通过递归查询获得本地域名服务器地址为192.168.88.10,再经由本地域名服务器,利用递归查询向根服务器请求,得到192.168.88.20的查询信息,再由顶级域名服务器转向权限域名服务器得到192.168.88.40,最后从权限域名服务器获得www.s.abc.com~IP地址为192.168.88.110。经过上述查询后,最后由权限域名服务器,逐级返回给访问主机,获得本地域名服务器地址。
三、结语
在计算机网络协议课程教学中,通过采用虚拟机软件来构建实验教学环境,通过实验过程操作来为学生呈现网络协议的原理和运行规则,引导学生从分析数据包的过程中,了解协议的工作过程,为后期学习及实践操作奠定基础。