2019年7月的6号,今天去章丘司法警官学院,那里有一个虚拟桌面项目没有做完,本来这个项目不是我做的,但是在公司里面呆着,又得给公司的商务们对标书,还不如跟着老哥们去做项目呢!正好虚拟桌面我也不太了解,就当是去长长见识了。
到了之后,发现全校师生全都是穿着警察样式的制服,真是奇怪的学校,司法警官学院接待我们的领导非常热情,正好赶上中午吃饭时间,就领我们进了老师的食堂,免费吃饭,老师的食堂像是自助餐形式的,味道还不错,好了,言归正传。在做完项目之后,我看到有一位李主任正在通过xshell登录机房里面一台linux服务器,结果界面就一直卡着,卡着足足有七八秒钟,老师嘴里还念叨:“每次都这样,不能痛快点吗?”,其实我们学linux都知道,它没有对sshd服务做优化,应该是Use DNS还在启用。
平时与我们对接的学校老师就是李主任,为让加深他对我们公司的信任,我决定出手帮他解决这个问题,展示一下公司的技术实力,可是怎样才能显得不那么唐突呢??灵机一动,计上心来!
我:“打扰了,李主任,我刚才我看到您在登录服务器的时候有些卡顿,我之前处理过类似的事情,我应该可以解决,您能让我看看吗?”
李主任:(李主任抬头看着我真诚的目光 )好吧,你来看看!
好了,下面就是我表演的时间,其实这个问题特别简单,只要关闭掉sshd服务的DNS反向解析就可以,但是为了让李主任看起来没有那么简单,我决定抓个包,炫一炫技,当着他的面分析分析。
我立马又打开一个终端 ,用tcpdump -i eth0 -w /tmp/test_sshd.cap,然后从另一个终端退出,之后,再重新登录,登录成功之后,结束抓包,tcpdump抓的包最好是用wireshark打开,但主任的电脑当中没有这个软件,我掏出我随身的U盘,找到这个软件安装上,将抓到的包从linux上下载下来,然后用wireshark打开,如下所示:
如上图所示,24号包和26号包足足卡了四秒,这个地方最卡,那么这个地方为什么这么卡呢?我们要分析一下,于是我将这两个地方中间的包都过滤出来,如下所示:
通过上图了解到我们服务器(192.168.80.200),竟然去找网关解析arp了,可是我们的终端和服务器一个网段,不应该找网关转发呀?再向上分析,看看是什么原因导致服务器要去找网关解析arp,也就要查找25号之前的包,如下所示:
通过上图我们发现,服务器是通过DNS的ptr记录,也就是反向解析去解析客户端的IP地址,是由于这个原因造成服务器要去做arp解析。
以上步骤,我一面做,一边给李主任讲解,直到我在sshd_config配置文件里面关了dns解析,再次尝试登录,果然快了很多。
李主任:”小伙子,可以呀!不错,不错“
事后,在我们将要离开学校回家的时候,李主任将我单独叫到办公室外询问了我的薪资水平和工作内容,透露出想让我来他们这工作的意愿……,这一刻,我知道我这次炫技的成功的,哈哈!