Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

       netstat所用的命令参数可由“netstat /?"得到,这里就不再赘述。常用的命令是”netstat -an“,"-a"选项意在显示所有连接,当不附加"-n"选项时,它显示的是本地计算机的netbios名字+端口号。而加了"-n"选项后,它显示的是本地IP地址+端口号。

For example:
           [netstat -a]
           TCP HHB:ftp HHB:0 LISTENING
             [netstat -an]
             TCP 0.0.0.0:21 0.0.0.0:0 LISTENINGnetstat结果信息的结构
     TCP    0.0.0.0:21             0.0.0.0:0              LISTENING
     针对这个子项:
     TCP:所用协议,传输控制协议。
     0.0.0.0:21:0.0.0.0是表示本机ip,如果是动态端口的话通常用本地ip表示而不是全0
         21表示本机上该服务分配的端口号
     0.0.0.0:0:表示外部任何主机的任何端口
     LISTENING:表示该服务处于监听状态。

     对于netstat -a的结果,通常是用服务名来代替其端口,如:
     TCP    HHB:ftp              HHB:0                LISTENING
     这里HHB替代了0.0.0.0,ftp替代了端口21常见状态
          即连接状态。在原模式中没有状态,在用户数据报协议中也经常没有状态,于是状态列可以空出来。若有状态,通常取值为:[4] 
 LISTEN
          侦听来自远方的TCP端口的连接请求[4] 
 SYN-SENT
          在发送连接请求后等待匹配的连接请求[4] 
 SYN-RECEIVED
         在收到和发送一个连接请求后等待对方对连接请求的确认[4] 
 ESTABLISHED
        代表一个打开的连接[4] 
 FIN-WAIT-1
        等待远程TCP连接中断请求,或先前的连接中断请求的确认[4] 
 FIN-WAIT-2
        从远程TCP等待连接中断请求[4] 
 CLOSE-WAIT
         等待从本地用户发来的连接中断请求[4] 
 CLOSING
        等待远程TCP对连接中断的确认[4] 
 LAST-ACK
        等待原来的发向远程TCP的连接中断请求的确认[4] 
 TIME-WAIT
        等待足够的时间以确保远程TCP接收到连接中断请求的确认[4] 
 CLOSED
        没有任何连接状态