Linux为什么卡住了? 您所在的位置:网站首页 linux打开浏览器就卡住 Linux为什么卡住了?

Linux为什么卡住了?

#Linux为什么卡住了? | 来源: 网络整理| 查看: 265

本文由LinuxProbe.Com团队成员岳国帅整理发布,原文来自:Linux就该这么学。

导读 通过SSH登录Linux服务器时,输完用户名就卡住了,要等待10秒钟才提示密码输入。这究竟是什么原因导致的呢?

10秒钟的时间并不算长,吃个薯片喝口咖啡就过去了。但是作为强迫症患者,我还是容不得它的存在,因此便决定写篇文章,向大家演示一下怎样用Wireshark一步步解决这个问题。

ssh_linux_01

首先是抓包,步骤如下 在Linux服务器上启动抓包。 从笔记本SSH到Linux服务器,输入用户名并回车。 等待10秒左右,直到登录界面提示输入密码。 停止抓包。

这样就可以得到一个涵盖该现象的网络包了。一般在实验室中没有干扰流量,不用过滤也可以分析,不过我们最好在做实验时就养成过滤的习惯,以适应生产环境中抓到的包。因为我们是通过SSH协议登录的,所以可以直接用“ssh”来过滤,如图所示。SSH包都是加密了的,因此我们看不出每个包代表了什么意思,不过这并不影响分析。从图2中可以看到,21号包和25号包之间恰好就相隔10秒。

ssh_linux_02

这两个包之间所发生的事件,可能就是导致这个现象的原因。于是我再用“frame.number> 21 && frame.number< 25”过滤,结果如图所示。

ssh_linux_03

分析

从图中可以看到,Linux服务器当时正忙着向DNS服务器查询10.32.200.23的PTR记录(即反向解析),试图获得这个IP地址所对应的域名。该IP属于我们测试所用的笔记本,但由于DNS服务器上没有它的PTR记录,所以两次查询都等了5秒钟还没结果,总共浪费了10秒钟。

我们由此可以推出,这台Linux服务器在收到SSH访问请求时,会先查询该客户端IP所对应的PTR记录。假如经过5秒钟还没有收到回复,就再发一次查询。如果第二次查询还是等了5秒还没回复,就彻底放弃查询。我们甚至可以进一步猜测,如果DNS查询能成功,就不用白等那10秒钟了。

为了验证这个猜测,我在DNS服务器中添加了10.32.200.23的PTR记录,如图所示,然后再次登录。

ssh_linux_04

这一次果然立即登录进去了。从图的Wireshark截屏可见,DNS查询是成功的,所以21号包和26号包之间几乎是没有时间停顿的。

ssh_linux_05

结果

明白了DNS查询就是问题的起因,接下来就知道怎么进一步研究了。只要在Google搜索“ssh dns”,第一页出来的链接都是关于这个问题的。随便挑几篇阅读一下,就连我这样的Linux初学者都能把这个问题研究透了。原来这个行为是定义在“/etc/ssh/sshd_config”文件中的,默认配置是这样的:

[root@Linux_Server ~]# cat /etc/ssh/sshd_config |grep -i usedns #UseDNS yes

改成下面这样就可以解决了,不用去动DNS服务器上的配置:

[root@Linux_Server~]# cat /etc/ssh/sshd_config |grep -i usedns UseDNS no

本文地址:https://www.linuxprobe.com/linux-connect-slowly.html编辑:岳国帅,审核员:逄增宝

本文原创地址:https://www.linuxprobe.com/linux-connect-slowly.html编辑:逄增宝,审核员:暂无

为您推荐一些与本文相关的文章:今年,已有3320名开发者为Linux内核贡献了225000行代码无码编程:无代码软件开发大行其道为什么程序员却不是工作经验越久越吃香,?国产计算机操作系统“深度20.2.2”版本正式发布如何在Linux下编译安装OpenCV大神推荐Redis集群迁移工具:redis-migrate-tool《量化投资:交易模型开发与数据挖掘》pdf电子书免费下载Linux学习教程-Linux下文件内容操作Linux Mint致力提高Cinnamon性能加入阿里一个月,考拉迎来大爆发 相关文章[点此投稿] 使用 APT-mirror 四步配置 Ubuntu 本地软件仓库 使用 APT-mirror 四步配置 Ubuntu 本地软件仓库 2017-01-17 0 个评论 linux基本命令——mv详解 linux基本命令——mv详解 2017-12-29 0 个评论 如何使用awk处理文本内容 如何使用awk处理文本内容 2020-10-17 0 个评论 Linux执行shell脚本完成任务计划是以秒为单位 Linux执行shell脚本完成任务计划是以秒为单位 2019-12-11 0 个评论 网页设计之字体和 CSS 调整 网页设计之字体和 CSS 调整 2018-11-26 0 个评论

转载必需保留本文链接: https://www.linuxprobe.com/linux-connect-slowly.html

本文依据CC-BY-NC-SA 3.0协议发布,竭诚为读者提供Linux视频教程、Linux学习资料以及红帽考试资料等优质学习资源。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有