• netstat

显示各种网络相关信息,包括网络连接,路由表,接口统计信息,多播成员

 

可选参数:

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服務状态

-I  显示网路接口

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

可选的协议 --inet, --unix (-x), --ipx, --ax25, --netrom, and --ddp options.

 

网络状态:

LISTEN:侦听来自远方的TCP端口的连接请求

SYN-SENT:发送连接请求后等待匹配的连接请求

SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认

ESTABLISHED:代表一个打开的连接

FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认

FIN-WAIT-2:从远程TCP等待连接中断请求

CLOSE-WAIT:等待从本地用户发来的连接中断请求

CLOSING:等待远程TCP对连接中断的确认

LAST-ACK:等待原来的发向远程TCP的连接中断请求的确认

TIME-WAIT:等待足够的时间以确保远程TCP接收到连接中断请求的确认

CLOSED:没有任何连接状态

 

常用列:

recv-q 由用户进程连接到此socket的复制的总字节数

send-q 由远程主机传送过来的acknowledged总字节数

 

RX-OK 接收时,正确的数据包数。

RX-ERR 接收时,产生错误的数据包数。

RX-DRP 接收时,丢弃的数据包数。

RX-OVR 接收时,由于过速(在数据传输中,由于接收设备不能接收按照发送速率传送来的数据而使数据丢失)而丢失的数据包数。

TX-OK 发送时,正确的数据包数。

TX-ERR 发送时,产生错误的数据包数。

TX-DRP 发送时,丢弃的数据包数。

TX-OVR 发送时,由于过速而丢失的数据包数。

 

  • ifconfig

linux中用于显示或配置网络设备(网络接口卡)的命令

不带参数的ifconfig 命令可以显示当前启动的网络接口,通过此可以查看本机ip

其中以eth0 为首的部分是本机的以太网卡配置参数,,其中MAC 地址是生产厂家定的,每个网卡拥有的唯一地址。

 

  • Tcpdump

根据使用者的定义对网络上的数据包进行截获的包分析工具

 

参数:

-I  按照网络接口过滤:eth0

 关键字:

类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host.

 

传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。

 

协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定 的网络协议,实际上它是"ether"的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和 分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会监听所有协议的信息包。

 

其他重要的关键字如下:gateway, broadcast,less,greater,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是'or' ,'│';这些关键字可以组合起来构成强大的组合条件来满足人们的需要

 

eg:

截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信

tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \)

 

获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包

tcpdump ip host 210.27.48.1 and ! 210.27.48.2

 

获取主机210.27.48.1接收或发出的telnet包

tcpdump tcp port 23 host 210.27.48.1

 

截获主机hostname发送的所有数据

tcpdump -i eth0 src host hostname