ESTABLISHED 和 LISTENING 的区别

use*_*143 15 networking nmap

我曾经Nmap -a在我的笔记本电脑上查看所有打开的端口。但是,我注意到州是不同的。有些已经建立,有些正在倾听,有些是无国籍的。他们的意思是什么?

Lui*_*ado 21

任何“ESTABLISHED”套接字意味着当前在那里建立了连接。

任何“LISTEN”表示套接字正在等待连接。

两者都是打开的端口,但一个正在等待建立连接,而另一个已经建立连接。

你可以这样想象:

HTTP 协议(​​通常是端口 80)处于 LISTEN 模式,直到有人真正访问服务器。当有人访问该页面时,它将处于 ESTABLISHED 模式。

这同样适用于 MySQL 3306。当没有人使用该服务时,它处于 LISTEN 模式。当有人实际使用它时,那一刻它将处于 ESTABLISHED 模式。

有关更多信息,这里有一些有用的手册页:

man nmap
man netstat
man arp
man lsof

基本上,您将看到端口如何工作,如何处理它们以及有关套接字及其状态的更多信息。是的,如前所述,ESTABLISHED 和 LISTEN 都是开放端口,但 ESTABLISHED 表示已连接,而 LISTEN 表示正在等待连接。

  • 所以“ESTABLISHED”和“LISTEN”都是开放端口,但区别在于一个正在等待连接而另一个已经有连接? (2认同)