Linux查看端口的方法

netstat查监听端口,简洁。

ss比netstat快,处理多连接。

lsof找进程,定位端口占用。

nmap扫端口,远程主机用。

iptables看防火墙,开放端口规则查。

linux如何查看网络端口

你这说的倒是头头是道,我当年刚接触Linux那会儿,可没你这么系统。

我跟你讲,当年我第一次给公司服务器查问题,一个客户投诉说访问不了网站。
我急得满头大汗,打开终端,啥也不懂,就瞎试。
最后发现是8 0端口没开,用netstat -tuln看到了,吓我一跳,赶紧开了,问题解决。

后来又遇到过一次,一个应用跑起来后,占用了不该占的端口,导致系统卡死。
那会儿ss -tuln刚出来,比netstat快多了,我就用它查,一下子就定位到是哪个进程干的,咔咔几个命令,问题解决。
这ss命令,现在用得越来越多了。

至于lsof,这个我也常用。
比如有一次,系统突然没响应了,我怀疑是不是哪个进程占用了所有资源。
我就用lsof -i :8 0查,一看,嚯,一个老的测试进程没关,占满了端口。
直接杀掉进程,系统就好使了。

nmap这个,我碰得少。
不过有一次,隔壁机房的服务器出问题了,他们说不确定端口是不是被占了。
我就用nmap -p 8 0 1 9 2 .1 6 8 .1 .1 00扫了一下他们的服务器,发现8 0端口是开放的,没问题。
这命令确实牛。

你说的这些方法,我都用过。
不过现在我用得最多的还是ss和lsof。
netstat老同志了,啥都能干,就是慢点。
nmap适合扫大范围,或者别人服务器的事。

记住啊,工具是死的,人是活的。
哪个命令好用,得看情况。
有时候简单的一个netstat -tuln | grep 8 0比啥都强,直接明了。
你把这些命令都练熟了,遇到问题心里就有底了。

linux怎么查看端口号

哎,这Linux看端口的事儿,我当年真是踩了不少坑。
给你讲讲我碰到的几个真实场景。

比如有一年,我帮朋友修服务器,他抱怨说SSH连不上了。
我上去一看,发现端口2 2 根本没监听。
当时我手头就有netstat,就敲了 netstat -tuln。
结果屏幕一晃,啥也没有!后来才知道,他那个服务器用的不是传统系统,netstat得加个 -a 才行。
你看,参数用不对,就白忙活。

还有一次,公司在用Nginx做网站,突然访问就卡。
我上去用 netstat -tuln 看端口,发现8 0端口明明在监听啊,可就是不接连接。
那会儿我还不熟练,直接就重启服务了,结果没毛病,卡得更厉害。
后来我换了个招,用 lsof -i:8 0。
这一看,嚯!发现是个旧版本的Nginx进程占用了端口,跟新装的版本冲突了。
用 lsof 就能直接看到是哪个进程,这比netstat强多了。

最逗的是有一次,我租了个云服务器,系统更新完,某个端口突然关了。
我手头有 ss -tuln,就随手敲了。
发现 ss 显示比 netstat 详细多了,直接告诉我哪个进程的哪个文件描述符在用这个端口。
省得我再一个一个 ps 过去比对,省了不少事儿。

所以啊,看端口这事儿,你得根据情况来:
想快速看哪个端口在监听,用 ss -tuln 最快。
这玩意儿现在新系统都推荐用,比netstat快。
碰到端口开了但服务没反应,或者想看具体哪个进程占着,用 lsof -i:端口号 最准。
我上次帮隔壁公司定位一个慢SQL,就是靠这个看到的哪个进程在查数据库占用了端口。
要是系统太老了,或者想看内核级别的原始数据,比如 /proc/net/tcp 这种,那得用 grep 搜,但得记住十六进制转换。
我当年看一个特别罕见的网络问题,就是靠这个找到线索的。
不过这招比较少用,一般人搞不懂。

你记住了,别光记命令,得知道啥时候用对。
我以前就犯过错误,把 netstat 当成了万能药,结果有时候看不明白。
现在啊,我一般先用 ss,不行再用 lsof,最后才考虑 grep。
你看,我踩过的坑,你就不必再踩了。