×

linux查看端口 查看端口 端口

linux系统如何查看端口占用?linux下查看某一端口被哪个进程占用

admin admin 发表于2022-06-19 16:41:42 浏览112 评论0

抢沙发发表评论

linux系统如何查看端口占用


在linux系统查看端口占用,可以使用netstat命令查看,端口使用情况。
其中Local Address 有端口的表示本机启用的服务占用的端口,这些端口一直被服务占用。Foreign Address有端口的是外部程序连接本机服务,本机随机分配的端口,这些端口随着外包程序断开连接自动释放......

linux下查看某一端口被哪个进程占用


1)使用lsof命令
lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法:
lsof -i :port_number |grep “(LISTEN)“
-i是用来查找和网络相关的文件,“:“号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep “(LISTEN)“。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。
如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep “(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。
2)使用netstat 命令
大家一定对这个命令比较熟悉了,可能你从没有想到用到来查找哪一个程序的占用了指定的端口。但是netstat -an 的确提供了这种功能。所以有问题了一定要想到先去查找man手册,不过说实话,某些man手册写得让中国人看不懂,那没有办法了,就googe或者 baidu一下吧。
执行man netstat命令,你会发现netstat 提供了’-p’的选项,这个选项的功能是告诉你哪个程序占用了该端口,但是她提供的形式比较古怪是以pid/process_name提供的。pid当然 是进程id了,process_name是进程的命令,中间以’/’号分隔。
和上面的原因一样,我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。
下面以1521端口来看怎么查找到该程序,我们使用下面的命令:
netstat -lnp|awk ’BEGIN{prt=“:1521$“}{if ($4 ~ prt) print $0}’
在这里使用awk来匹配第4个字段的模式是为了避免误判。

ftp建立连接的随机端口通常是


FTP端口号是:21

默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。

但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。

扩展资料:

同大多数Internet服务一样,FTP也是一个客户/服务器系统。用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。

依照 FTP 协议提供服务,进行文件传送的计算机就是 FTP服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。

用户要连上FTP 服务器,就要用到 FTP 的客户端软件,通常 Windows自带“