您现在的位置是:百科 >>正文

21端口被占用解决办法

百科15748人已围观

简介打开命令行,输入 netstat -ano | findstr ":21",回车。屏幕上通常会跳出一行字,结尾那个四位或五位数,就是罪魁祸首的PID。我见过太多人卡在这一步,对着那一串数字发愣,然后跑 ...

打开命令行,端口输入 netstat -ano | findstr ":21",被占回车。用解屏幕上通常会跳出一行字,决办结尾那个四位或五位数,端口就是被占罪魁祸首的PID。我见过太多人卡在这一步,用解对着那一串数字发愣,决办然后跑来问我:“然后呢?端口我该杀谁?”

别急。先看看那个PID对应的被占是什么进程。打开任务管理器,用解切到“详细信息”标签页,决办点一下PID列排序,端口找到那个数字。被占如果它叫svchost.exe或者System,用解那你麻烦大了——这说明21端口被系统级的FTP服务占着,不是随便杀个进程就能解决的。如果是FileZilla Server.exe、Serv-U.exe这类第三方FTP软件,恭喜,问题简单得多。

我上个月刚帮一个同事处理过这事。他装了个老旧的IIS FTP服务,后来又想跑一个Python的FTP测试脚本,结果端口死活起不来。查了半天发现是IIS的FTP服务在后台偷偷运行,他压根忘了自己装过。这种“自己占自己”的案例,比想象中常见得多。解决办法也粗暴:services.msc打开服务管理器,找到FTP Publishing Service,右键停止,再把启动类型改成“禁用”。完事。

如果你确认没有系统服务占用,那就直接干掉那个进程。taskkill /PID 1234 /F,把1234换成你查到的数字。注意,这个命令是强杀,进程来不及保存任何数据。如果你跑着重要的FTP传输任务,先停掉再杀,别手滑。

还有一种情况,杀完进程端口还是被占。别慌,八成是TIME_WAIT状态在作祟。TCP连接关闭后,端口会进入TIME_WAIT状态,默认等两分钟才释放。你查netstat的时候会看到状态栏写着TIME_WAIT,而不是LISTENING。这种不是真占用,等一会儿就好。但如果你急,可以改注册表让系统快速回收端口:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters,新建一个DWORD,叫TcpTimedWaitDelay,值设成30(单位秒),重启生效。这招对频繁重启FTP服务的人特别管用,能少等不少时间。

说到底,21端口被占这件事,百分之八十是“你自己忘了自己装过什么”。剩下百分之二十,是某些软件强行绑定了端口不撒手。比如某些安全软件、某些下载工具的加速模块,它们不声不响就占了21。查的时候别只盯着FTP软件看,把系统里所有带“服务”字样的进程都扫一遍。我见过最离谱的一次,是某网盘的自动备份功能把21端口占了,用户死活想不到是它干的。

最后给个排查顺序吧:先看是不是系统FTP服务,再看第三方FTP工具,最后查TIME_WAIT。三步走完,百分之九十九的情况都能解决。剩下那百分之一,可能是你机器上跑着个虚拟机,虚拟机里的系统占了端口——这种时候别折腾了,改你应用的端口号,比跟虚拟机较劲省事得多。

Tags:

相关文章

  • 做渗透测试的第一步是

    百科

    做渗透测试的第一步是 不是开扫描器,不是查漏洞库,甚至不是打开Burp Suite。我第一次带新人时,他坐在工位上,手指悬在键盘上,问我“先扫哪个IP?”——我让他把电脑合上,去楼下咖啡厅买杯美式,顺 ...

    【百科】

    阅读更多
  • 谷歌手机无法验证

    百科

    去年冬天,我同事老张在王府井的谷歌体验店折腾了整整一个下午。新买的Pixel 9 Pro,插上国内SIM卡,设置向导走到“验证您的手机”那一步,屏幕上的转圈圈能转半小时。店员摊手:“这机器水土不服,您 ...

    【百科】

    阅读更多
  • 渗透树脂操作步骤图文

    百科

    渗透树脂操作前,你得先搞明白一件事:这东西不是万能的。它只对早期釉质龋就是那种白垩色、没形成洞的)和正畸后脱矿的白斑有效。已经成洞的、有龋坏腐质的,老老实实去备洞充填。别指望一瓶树脂解决所有问题。 第 ...

    【百科】

    阅读更多


友情链接