网络抓包
一、抓包原理
在正常的情况下,一个网络接口只接收两种数据帧:
一种是与自己硬件地址(MAC)相匹配的数据帧
一种是发向所有机器的广播数据帧
如果把网卡置于“混杂”模式,就能接收所有通过它的数据, 而不管是不是发给它的。
在共享式的网络中,信息包是会广播到网络中所有主机的网络接口,只不过在没有使用网络抓包工具之前,主机的网络设备会判断该信息包是否应该接收,这样它就会抛弃不应该接收的信息包,网络抓包工具却使主机的网络设备接收所有到达的信息包,这样就达到了网络抓包目的。
二、抓包工具使用
1、把网卡置于混杂模式
2、设置滤波器
3、捕获数据包
4、
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
数据包
三、设置滤波器
在Ethereal中输入滤波器的命令与tcpdump(一种网 络分析工具)
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
达式类似,前面不要“#tcpdump” ,下面
世几个例子:
(1)想要截获所有210.27.48.1 的主机收到的和发出的所有的数据包:
host 210.27.48.1
(2) 想要截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信。
host 210.27.48.1 and (210.27.48.2 or
210.27.48.3)
(3) 如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包,使用命令:
ip host 210.27.48.1 and (! 210.27.48.2)
(4)如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令:
host 210.27.48.1 and tcp port 23
H323的信令(TCP包)和GK包(UDP)的 (5) 用Ethereal抓
滤波器设置命令:
host 目标机IP and (tcp or udp port GK端口号)
例子:目标机IP为:10.50.51.139;GK端口号:1719时,命令如下:
host 10.50.51.139 and (tcp or udp port 1719)
在表达式中一般如下几种类型的关键字:
一种是关于类型的关键字,主要包括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的包进行处理和分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,将会监听所有协议的信息包。
除了这三种类型的关键字之外,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是
这些关键字可以组合起来构成强大的组合'or' ,'||';
条件来满足人们的需要。
四、注意事项
1、 对于主机或服务器:只要安装了sniffer或ethereal
就可以直接用来抓获与这台机器相关的网络数据。对于
终端或其他独立设备: 终端和主机需要在同一个HUB上;
如果终端和主机如果在同一个switch上,那么主机端口
要能侦听到终端端口的数据,需要在switch上做相应设
置。所以一般对终端抓包需要用到HUB。
2、 有时候抓获不到数据包,可能是滤波器中的设置不对,
如IP地址是否正确等。
3、 网络上的数据量比较大,可以通过设置滤波器来抓获
所需要的数据包。
4、 ethereal的安装包括2部分:winPcap(UNIX下的
libpcap移植到windows下的产物)和ethereal。 5、 ethereal可以设置端口号(PORT),sniffer目前还不
能设置端口号(PORT),通过设置滤波器,ethereal抓包
更灵活些。