TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 524
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 1028
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 1288
TCP 127.0.0.1:1049 0.0.0.0:0 LISTENING 3276
TCP 127.0.0.1:2656 127.0.0.1:2657 ESTABLISHED 3464
TCP 127.0.0.1:2657 127.0.0.1:2656 ESTABLISHED 3464
TCP 127.0.0.1:2660 127.0.0.1:2661 ESTABLISHED 3464
TCP 127.0.0.1:2661 127.0.0.1:2660 ESTABLISHED 3464
TCP 192.168.1.98:139 0.0.0.0:0 LISTENING 4
TCP 192.168.1.98:1472 202.111.148.133:80 CLOSE_WAIT 176
TCP 192.168.1.98:2822 60.28.250.204:80 TIME_WAIT 0
TCP 192.168.1.98:2831 60.28.250.204:80 TIME_WAIT 0
TCP 192.168.1.98:2838 60.28.250.204:80 ESTABLISHED 3464
TCP 192.168.1.98:2839 60.28.250.204:80 ESTABLISHED 3464
TCP 192.168.1.98:2843 74.125.165.37:80 ESTABLISHED 3464
UDP 0.0.0.0:445 *:* 4
UDP 0.0.0.0:500 *:* 804
UDP 0.0.0.0:1025 *:* 552
对上面的显示结果解释如下:
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 524
TCP表示使用的传输层协议是TCP;0.0.0.0:80表示本机上的任意地址,端口是80,即web server;0.0.0.0:0表示接受任意地址的连接,端口任意随机;LISTENING表示处于监听状态;524表示进程ID是524。这条结果就告诉我们,本地有web服务器程序在运行,其进程ID是524,在80端口上监听来自任意地址计算机的访问。由上面的结果显示本机有六个端口处于监听状态,它们分别是:80(Web Server)、135、139、445(Netbios Over TCP/IP)、3306(MySQL Server)、1049(Windows的alg进程),它们随时接受其它计算机建立连接、接受访问。
TCP 127.0.0.1:2656 127.0.0.1:2657 ESTABLISHED 3464
上面这条结果表示本机中的firefox(3464)进程建立了一个TCP连接。 ESTABLISHED表示已经建立了连接。
TCP 192.168.1.98:2838 60.28.250.204:80 ESTABLISHED 3464
上面这条结果表示本机(192.168.1.98)使用2838端口与远程web服务器(60.28.250.204)的80端口建立了连接,由进程ID 3464可以看出,这条连接是由Firefox(火狐浏览器)建立的。
TCP 192.168.1.98:2822 60.28.250.204:80 TIME_WAIT 0
上面这条结果表示本机(192.168.1.98) 在2MSL(4分钟)后拆除与远程(60.28.250.204)web服务器的连接。
关于tcp各状态的讲解参见优秀博文:http://my.oschina.net/guol/blog/48543 (TCP/IP协议状态学习)
二 traceroute 显示两个网络(或计算机)之间的真实路径,在网络管理中可以帮助我们判断网络链路状态
traceroute 202.108.22.43
1 1 ms <1 ms <1 ms 10.63.254.1
2 1 ms 2 ms 2 ms 10.56.1.25
3 1 ms 1 ms 1 ms 10.56.0.2
4 1 ms 1 ms 1 ms 10.56.0.9
5 1 ms 1 ms 1 ms pc0.zz.ha.cn [218.28.83.193]
6 1 ms 1 ms 1 ms pc165.zz.ha.cn [61.168.154.165]
7 6 ms 6 ms 6 ms pc137.zz.ha.cn [61.168.253.137]
8 20 ms 20 ms 21 ms hn.kd.smx.adsl [221.13.223.77]
9 25 ms 25 ms 25 ms 219.158.7.89
10 18 ms 18 ms 19 ms 123.126.0.162
11 25 ms 25 ms 25 ms bt-227-166.bta.net.cn [202.106.227.166]
12 25 ms 25 ms 25 ms 61.148.3.34
13 17 ms 18 ms 17 ms 202.106.43.174
14 24 ms 24 ms 24 ms xd-22-43-a8.bta.net.cn [202.108.22.43]
Trace complete.
上面这条命令显示出了10.63.254.0/24网段到主机202.108.22.43之间的真实路径。
解释:
当键入命令并回车后,本机会向目的地址202.108.22.43发送一个ICMP数据包 IP数据包头的TTL值为1,ICMP报头的 TYPE值为8,Code值为0,即这个ICMP数据包是Echo Request(回送请求),由于TTL值为1,这个ICMP数据包到达网关时,就会因TTL值为0而失效,不再向下一跳节点传输,并由网关向本机关发送一个ICMP数据包,告诉本机,数据包到达本节后TTL=0,不再向目的地传送,这个由网关回传的ICMP数据包中TYPE=11,CODE=0,并且包含了本机第一次发送的完整的ICMP数据包(回传的ICMP数据包的TTL恒为1,意思是我收到的这个数据包的TTL=1,减1后为0,生命周期结束,不能再向下传)。
然后主机尝试发送TTL=2的回送请求数据包,此包被10.56.1.25 接收并发送源地址为10.56.1.25的echo包。
继续递增TTL直到最终传送到202.108.22.43上,这样就可以得知本机到达202.108.22.43节点的实际路径。
所以打印出来的ip地址顺序是从近及远的。
关于命令的详细执行过程可使用wireshark分析, wireshark官方网站:http://www.wireshark.org/
三 ping
PING 是Packet Internetwork Groper缩写,中文意思是因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答,如每发送一个Echo请求,能及时地收到回答,这表明网络是通畅的,由于可以利用ping命令对计算机进行攻击,DOS(拒绝服务)攻击, 因此,防火墙会把ICMP Echo请求数据包丢弃掉,会收timeout(超时)的信息。(有时网络是通的,但是会timeout的原因吧)。
附:
windows 和 linux 上的命令总会有些区别,使用时注意去查看自带手册。