QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3234|回复: 0
打印 上一主题 下一主题

Tcpdump的使用

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-3-20 13:48 |只看该作者 |倒序浏览
|招呼Ta 关注Ta

作者:李国莉  来源:http://www.eviloctal.com/forum/

+ [9 o: T& r9 A4 f7 @

) Z( l; x9 L; w6 ? tcpdump采用命令行方式,它的命令格式为:/ l! J- B' u" K7 {* T# l5 d# E   tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]; v# _3 @0 [) l9 P; v: ]. \           [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]8 n. x* B J5 Y Q1 o           [ -T 类型 ] [ -w 文件名 ] [表达式 ]

/ v) D& ?9 z* X) v$ L

  1. tcpdump的选项介绍 ! i6 Y& H% N Y: \8 p   -a    将网络地址和广播地址转变成名字;9 R; e1 ]) c) ]# j$ ~9 V    -d    将匹配信息包的代码以人们能够理解的汇编格式给出;) ~3 a: C: d* ^4 H) f7 ]+ o    -dd    将匹配信息包的代码以c语言程序段的格式给出; 1 J3 A8 q1 G ?   -ddd    将匹配信息包的代码以十进制的形式给出; ( M, z# X+ ~6 P) n. W   -e    在输出行打印出数据链路层的头部信息;" K C, H* v% u9 M/ n0 D    -f    将外部的Internet地址以数字的形式打印出来;5 `+ L; R5 Y. }( C4 F6 [" w$ X    -l    使标准输出变为缓冲行形式;. ^1 X8 Z5 `2 T, c" @. \    -n    不把网络地址转换成名字;) ^1 O3 i6 p3 B* x0 a7 t: N    -t    在输出的每一行不打印时间戳; ; }6 i9 } M) r7 h" b: _6 s3 |& }& S   -v    输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息; * O3 X3 E& Q3 g Q   -vv    输出详细的报文信息;- m8 `7 b3 t, i& i    -c    在收到指定的包的数目后,tcpdump就会停止;3 ]! a+ O0 M: j: W4 |    -F    从指定的文件中读取表达式,忽略其它的表达式; * O9 c/ O: R: y   -i    指定监听的网络接口;; f. i; p1 ~. Q& w' _+ `" Z7 E4 p    -r    从指定的文件中读取包(这些包一般通过-w选项产生);" S" M9 C/ l# @; l% A* {    -w    直接将包写入文件中,并不分析和打印出来;/ j! j& a; q( K1 v+ h    -T    将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程- D& C( m8 C" \1 B9 M: }, M3 t 调用)和snmp(简单       网络管理协议;)

" D c( o* G1 N6 d. i

  2. tcpdump的表达式介绍 * c7 @' C. C' W   表达式是一个正则表达式,tcpdump利用它作为过滤报文的条件,如果一个报文满足表 8 L0 {# x5 Y7 g1 q0 ^达式的条件,则这个报文将会被捕获。如果没有给出任何条件,则网络上所有的信息包将会 ) `( p- { b0 {+ C5 w6 ]被截获。 % J) M g9 a# H! [/ \; {' [* B& v   在表达式中一般如下几种类型的关键字,一种是关于类型的关键字,主要包括host,5 N7 ^( `8 ], y0 e! | net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 ! u- g7 b0 `- M% C7 ~% H202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是; E2 E( P$ T1 d* [% w/ I host. . F7 i! ?. g/ _% V/ g! A% N# ^   第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,- k( Q: t( k& ^; T6 [+ y 这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27. 0 c( ?& x s8 K8 Y48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则& g! ^% x2 V9 O& Y+ ~2 |/ _2 u 缺省是src or dst关键字。/ b6 |- a& b" u& c: i) w. G    第三种是协议的关键字,主要包括fddi,ip ,arp,rarp,tcp,udp等类型。Fddi指明是在& D+ U) X5 w) ] FDDI(分布式光纤数据接口网络)上的特定的网络协议,实际上它是"ether"的别名,fddi和e+ W5 h. |0 z [. h8 C( Y: e3 S" h! P4 X ther具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和分析。$ W% F; M* h* T" l( X# f 其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会 ; H( r7 P. D9 N5 E) R监听所有协议的信息包。9 H5 ^3 E9 c8 B$ |    除了这三种类型的关键字之外,其他重要的关键字如下:gateway, broadcast,less, $ m+ S: k& T) Q+ o. Wgreater,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是'o , {: u, R. ]& Tr' ,'||'; . x! r* `+ t1 g, O' Q   这些关键字可以组合起来构成强大的组合条件来满足人们的需要,下面举几个例子来. [* K8 R6 d4 y 说明。 * o2 J, H1 }, S6 H8 i% y   (1)想要截获所有210.27.48.1 的主机收到的和发出的所有的数据包: + ]- {4 \) A1 o, L! A4 q    #tcpdump host 210.27.48.1 : {; T% `9 a: A w2 D    (2) 想要截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信,使用命令5 E* O) v" n% {" [; O1 D& ?# B :(在命令行中适用   括号时,一定要# N( l9 g+ P2 v5 y8 K$ f     #tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \) ) t: t; P* y$ Y2 _3 C: [; F! W   (3) 如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包$ ? Q' U. y0 ?$ m2 v ,使用命令:6 N8 v- N, D2 ]2 _     #tcpdump ip host 210.27.48.1 and ! 210.27.48.2 $ l2 J) A+ M5 f; f3 A3 Q   (4)如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令:$ Z) P- ?8 x' E. A( p     #tcpdump tcp port 23 host 210.27.48.1

3 a- D" F$ N5 F% H% y o

  3. tcpdump 的输出结果介绍 1 v& X5 ?1 W/ t! n! e+ ?9 y   下面我们介绍几种典型的tcpdump命令的输出信息 - ]/ s) H9 S2 P3 {* b   (1) 数据链路层头信息4 Q9 W+ E6 {/ R    使用命令#tcpdump --e host ice 5 R% }+ }/ F; U- z9 `   ice 是一台装有linux的主机,她的MAC地址是0:90:27:58:AF:1A 1 G' Q: F4 C( l" f4 J# [) ^   H219是一台装有SOLARIC的SUN工作站,它的MAC地址是8:0:20:79:5B:46;上一条 0 u1 s4 M3 k% b+ p7 b) m' f命令的输出结果如下所示:" o R+ Y8 r5 u( _4 d, k' ` 21:50:12.847509 eth0 < 8:0:20:79:5b:46 0:90:27:58:af:1a ip 60: h219.33357 > ice.0 y3 ?" z' w% ^) N telne2 j3 V% P) M6 | t 0:0(0) ack 22535 win 8760 (DF)$ w2 q( `; F( K3 G   分析:21:50:12是显示的时间, 847509是ID号,eth0 <表示从网络接口eth0 接受该 3 h8 L6 ?: `$ G1 X3 N* ?7 @, S0 h9 g* g数据包,eth0 >表示从网络接口设备发送数据包, 8:0:20:79:5b:46是主机H219的MAC地址,它 ' `* ]. H$ e1 B表明是从源地址H219发来的数据包. 0:90:27:58:af:1a是主机ICE的MAC地址,表示该数据包的) U0 ?9 e8 ]: M9 f. S7 ~/ b 目的地址是ICE . ip 是表明该数据包是IP数据包,60 是数据包的长度, h219.33357 > ice. & y5 j6 q) W4 ]: i Wtelnet 表明该数据包是从主机H219的33357端口发往主机ICE的TELNET(23)端口. ack 22535 5 f( R: [2 C4 p' j- r表明对序列号是222535的包进行响应. win 8760表明发送窗口的大小是8760.

u/ O( @' {$ ~" j. J% n/ q

  (2) ARP包的TCPDUMP输出信息 2 S( x4 M' B) |   使用命令#tcpdump arp ( y8 z7 z7 m5 X* `( h    得到的输出结果是: 2 W5 V' \* E, X) m  22:32:42.802509 eth0 > arp who-has route tell ice (0:90:27:58:af:1a)6 O# \4 Z! f! g& p# M: C   22:32:42.802902 eth0 < arp reply route is-at 0:90:27:12:10:66 (0:90:27:58:af4 I8 I- b' U1 }: [0 m- x1 C :1a)% R3 K* z- l" A A7 o% e5 G2 [   分析: 22:32:42是时间戳, 802509是ID号, eth0 >表明从主机发出该数据包, arp表明是! m8 p7 ^5 S* g" b6 ` ARP请求包, who-has route tell ice表明是主机ICE请求主机ROUTE的MAC地址。 0:90:27:5 , v# t8 k C% o+ j9 A7 a4 q# D2 a9 f8:af:1a是主机ICE的MAC地址。

1 o+ i. Z& O3 u) A

  (3) TCP包的输出信息4 V6 a2 E) R% Z! l- | U    用TCPDUMP捕获的TCP包的一般输出信息是: $ u4 Z: H; m. J  src > dst: flags data-seqno ack window urgent options 3 D; ~$ n' B+ b8 `& E% p' Z  src > dst:表明从源地址到目的地址, flags是TCP包中的标志信息,S 是SYN标志, F (F) i: D; Q9 P8 p( V IN), P (PUSH) , R (RST) "." (没有标记); data-seqno是数据包中的数据的顺序号, ack是( P; [6 ]; X$ `3 B0 |/ B8 f 下次期望的顺序号, window是接收缓存的窗口大小, urgent表明数据包中是否有紧急指针. - V% ?% t# P: Z/ Y _" j, i8 ?# z Options是选项.

% O3 R$ S; l( c2 ~. c7 r2 \

  (4) UDP包的输出信息; l. U( q/ I: p( l N$ m/ Z    用TCPDUMP捕获的UDP包的一般输出信息是:5 C! n+ q% {9 Q   route.port1 > ice.port2: udp lenth * g8 @! Z6 S5 V0 [  UDP十分简单,上面的输出行表明从主机ROUTE的port1端口发出的一个UDP数据包到主机 7 L* {# N/ K! i7 W6 hICE的port2端口,类型是UDP, 包的长度是lenth ' z% m3 \; p% Q2 {! K % y( S E( {+ E; y, Y0 v G

5 X# H$ o! o/ P/ _6 W

^& W. e, R# ?& H

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-20 12:42 , Processed in 0.397731 second(s), 52 queries .

回顶部