linux下怎么查看程序使用的端口号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下怎么查看程序使用的端口号相关的知识,希望对你有一定的参考价值。

使用lsof命令

具体方法:
lsof -i :port_number |grep "(LISTEN)"
-i是用来查找和网络相关的文件,":"号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。
如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep "(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。
参考技术A 查看端口使用情况,使用netstat命令。

查看已经连接的服务端口(ESTABLISHED

netstat -a

查看所有的服务端口(LISTEN,ESTABLISHED)

netstat -ap

查看8080端口,则可以结合grep命令:netstat -ap | grep 8080

如查看8888端口,则在终端中输入:lsof -i:8888

TFTP的端口号是多少?

参考技术A TFTP 的端口号是69 port
读取和写入请求
RRQ (read request)
WRQ (write request)
皆采用 69 port

需要注意的是,传送档案时并不是用69 port
回应ACK时使用Ephemeral port(1024~5000 port)
正式开始传送档案时则会继续使用不久前随机选择的Ephemeral port

关於Ephemeral port,不同的作业系统会有不同的分配方式,举例而言:
美国IANA建议使用49152~65535
Linux 32768~61000
Windows 1025~5000
4.6版本以前的BSD系统port范围等同Windows
自从4.6版本开始,FreeBSD系统则完全采用IANA建议范围

可参考RFC 1350 "THE TFTP PROTOCOL (REVISION 2)"

以上是关于linux下怎么查看程序使用的端口号的主要内容,如果未能解决你的问题,请参考以下文章

怎么查看电脑的端口号

linux下怎么根据端口号杀死进程?

ubuntu下怎么查看已打开的端口号?怎么打开关闭指定端口?

如何查看url的端口号

idea 中怎么修改jetty的端口号

如何查看自己数据库的端口号