服务端口的状态变化
先在本机(服务器端:IP地址为192.168.1.10)配置FTP服务,然后在其它计算机(客户端:IP地址为192.168.1.1)访问FTP服务,从TCPView看看端口的状态变化。
1. 服务器端的端口状态
1.1 LISTENING状态
-
State显示是LISTENING时表示处于侦听状态,就是说该端口是开放的,等待连接,但还没有被连接 。
-
从TCPView可以看出本机(服务器端)开放FTP的情况。它的意思是:程序inetinfo.exe开放了21端口(FTP默认的端口为21),即在本机(服务器端)开放了FTP服务 。 目前正处于侦听状态。
程序 | 协议 | 服务器端IP:Port | 客户端IP:Port | 状态 |
---|---|---|---|---|
inetinfo.exe:1260 | TCP | 0.0.0.0:21 | 0.0.0.0:0 | LISTENING |
1.2 ESTABLISHED状态
-
现在从(客户端)192.168.1.1这台计算机访问一下(服务器端)192.168.1.10的FTP服务。在本机(服务器端)的TCPView可以看出端口状态变为
ESTABLISHED
。 -
ESTABLISHED的意思是建立连接。表示两台机器正在通信。
下面显示的是本机的FTP服务正在被192.168.1.1这台计算机访问。
程序 | 协议 | 服务器端IP:Port | 客户端IP:Port | 状态 |
---|---|---|---|---|
inetinfo.exe:1260 | TCP | 192.168.1.10:21 | 192.168.1.1:3009 | ESTABLISHED |
注意:处于ESTABLISHED状态的连接一定要格外注意,因为它也许不是个正常连接。后面我们要讲到这个问题。
1.3 TIME_WAIT状态
-
现在从(客户端)192.168.1.1这台计算机结束访问(服务器端)192.168.1.10的FTP服务。在本机(服务器端)的TCPView可以看出端口状态变为TIME_WAIT。
-
TIME_WAIT的意思是结束了这次连接。说明21端口曾经有过访问,但访问结束了。
程序 | 协议 | 服务器端IP:Port | 客户端IP:Port | 状态 |
---|---|---|---|---|
[System Process]:0 | TCP | 192.168.1.10:21 | 192.168.1.1:3009 | TIME_WAIT |
2. 客户端口的状态变化
客户端口实际上就是从客户端访问其它计算机(服务器端)服务时打开的源端口,最多的应用是上网,下面就以访问www.baidu.com为例来看看端口开放以及状态的变化情况。
1. SYN_SENT状态
SYN_SENT状态表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现许多SYN_SENT的原因。
下面显示的是本机连接www.baidu.com网站时的开始状态,如果你的网络正常的,那很快就变为ESTABLISHED的连接状态。
IEXPLORE.EXE:2928 TCP 192.168.1.10:1035 202.108.250.249:80 SYN_SENT
2. ESTABLISHED状态
下面显示的是本机正在访问www.baidu.com网站。如果你访问的网站有许多内容比如访问www.yesky.com,那会发现一个地址有许多ESTABLISHED,这是正常的,网站中的每个内容比如图片、flash等都要单独建立一个连接。看ESTABLISHED状态时一定要注意是不是IEXPLORE.EXE程序(IE)发起的连接,如果是EXPLORE.EXE之类的程序发起的连接,那也许是你的计算机中了木马了。
程序 | 协议 | 客户端IP:Port | 服务器端IP:Port | 状态 |
---|---|---|---|---|
IEXPLORE.EXE:3120 | TCP | 192.168.1.10:1045 | 202.108.250.249:80 | ESTABLISHED |
3. TIME_WAIT状态
如果浏览网页完毕,那就变为TIME_WAIT状态。
程序 | 协议 | 客户端IP:Port | 服务器端IP:Port | 状态 |
---|---|---|---|---|
[System Process]:0 | TCP | 192.168.1.10:4259 | 202.108.250.249:80 | TIME_WAIT |
一般用户一定要熟悉:
- 服务端口重点要看的是LISTENING状态和ESTABLISHED状态,LISTENING是本机开了哪些端口,ESTABLISHED是谁在访问你的机器,从哪个地址访问的。
- 客户端口的SYN_SENT状态和ESTABLISHED状态,SYN_SENT是本机向其它计算机发出的连接请求,一般这个状态存在的时间很短,但如果本机发出了很多SYN_SENT,那可能就是中毒了。看ESTABLISHED状态是要发现本机正在和哪个机器传送数据,主要看是不是一个正常程序发起的。