通过wireshark这个抓包工具抓取udp协议的报文进行详细的分析。dns默认是基于udp协议的。 访问一个域名的过程中,其实就是会做一个域名解析。域名解析用到的就是dns协议(应用层协议)。
下面就触发dns的流量,抓取报文看下udp协议的实现:
ping一个域名,解析成ip地址,这个过程就会调用dns协议。
下面就是抓包抓到的dns协议:
首先发了个这样的域名请求,然后网关承担域名解析的作用,回应一个这个域名对应的ip地址是什么。
1.双击打开第一个报文:
dns协议的默认端口是53端口,源端口是随机的。这个里面没有序号、确认号和标志位都没有。这就是udp协议。
基于udp协议之上的是dns协议:
2.下面是网关给我回了一个域名解析:
双击第二个报文,查看详情:
也是基于一个udp协议的,因为是网关给我回的,所以源目ip和源目端口都给我调换过来了,其它的是没有变的。
dns协议的内容:
响应消息里面有一个Answers,就是我给你的一个答案。
Answers里面的内容:
从报文可看出进行了一级一级的查找,终于获取到了ip地址。把ip地址告诉了客户端,客户端经过这样的一个过程,客户端得到了ip地址。客户端去ping,都是和ip地址进行的交互。
除标明“图片来自网络”的图片,其它文章中的图片皆为本人所画,计算机知识都一样,如有雷同,纯属巧合。
公众号 清菡软件测试 首发,更多原创文章:清菡软件测试 170+ 原创文章,欢迎关注、交流,禁止第三方擅自转载。如有转载,请标明出处。