DNS解析异常判断
<h2>【问题背景】</h2>
<p>该问题产生的背景主要有两个
1、aTrust设备无法解析认证服务器域名,导致网络请求超时;
2、aTrust设备无法连通认证服务器,可能是tcp三次握手不通,也可能是aTrust跟认证服务器http/https交互不通
具体的下面会进行阐述。</p>
<h2>【判断方法】</h2>
<p>该帖只讲dns解析失败的判断方法和解决方案,下一个帖子再讲无法连通认证服务器的判断方法和解决方案</p>
<p>1、aTrust设备上使用<code>nslookup -d 认证域名</code>,查看解析结果是否正常,如下第一个就是正常nslookup解析结果,第二个是无法解析的返回结果:<code>** server can&#039;t find aa.xx.com: NXDOMAIN</code>,通过这个方式能初步看设备是否能解析这个域名</p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=432f43db6bfda42e5e8c7e1f3e9a8b97&amp;file=file.png" alt="" /></p>
<p>2、如果第1点判断无法解析域名,需要看下设备网口dns配置的是什么,为什么这个dns无法解析域名,<strong>需客户侧自行排查</strong>,最快的解决方法就是在设备上写一个域名对应IP的host记录,先考虑解决问题,再去查原因!
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=550a9cb3ff450277521c5876b5bc3322&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=cddb44b7b6c677b741d73551f485e425&amp;file=file.png" alt="" /></p>
<p>3、如果nslookup解析域名正常,但是依旧怀疑是dns解析问题,可以抓包看下,后续排查一定会用到dns解析包,做一步这个操作,利于后续大佬们排查,下面提供一份抓包命令(命令输入完之后,一定要复现,在停止抓包),停止后可以在<code>文件管理</code>处下载数据包</p>
<pre><code class="language-javascript">tcpdump -i any port 53 -nnv -s0 -w dns.pcap</code></pre>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=4285fe749464cd7f35b72248f49a2840&amp;file=file.png" alt="" /></p>
<p>4、正常域名解析成功的数据包有A记录的请求和响应,使用wireshark打开数据包后,右键对应的A记录数据包,然后追踪udp数据流,可以看到有response响应,说明域名请求有正常回复,解析没问题</p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=a578d7f4412b0c6162d772face01ccea&amp;file=file.png" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=77620b3a9701fa550fa2bf1011f3b25e&amp;file=file.png" alt="" /></p>
<p>5、如果看到只有A记录的请求,没有任何response回复,说明对方的dns服务器没有返回结果,需要找对方或者排查中间的网络环境,非我司设备能解决,提供数据包结论,让客户自行排查即可!
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=1fd9e3da4920508eab1188ae2dce292a&amp;file=file.png" alt="" /></p>