|
作者:蓝色烟火 转自黑基bbs原创作品版
& |1 T6 l: q( z9 f q" H版权归黑客基地所有, 转载请注明出处 : G. x8 L; T. ~* p$ O2 z; H4 x: N
网络简介
1 _% L6 ~& S4 M5 D+ e6 m# v) D! ?/ S; u" G! o. S
$ J7 g" I* Z9 ]+ n4 ~1 y 作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。
1 K! C8 s! `! W% {5 _ S
5 m" O0 J, ]5 ?+ R+ q/ Z+ p. }7 S5 `1 d1 x, G& Y
9 S; `7 s& T) F7 C 问题的提出
3 b- Z3 F1 Q2 m" N4 I0 R& F' P4 j8 N+ w8 V) Z
+ |, j4 U0 U. c8 J 我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。
8 Q% `2 T$ ]7 B. M
( B c. |" \# p; `1 }4 ?* | S, W3 @1 Q. U/ B' I4 E
9 z7 S; e. C) z( \( s- v
分析原因
8 N1 q# U7 m4 O5 J* i! s0 z
& i- g& \- I1 a* X8 y" O
9 t# b* d6 c8 ^* ^4 S; h5 [( ^) }, c, n
出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。 ' C7 j4 |( S, s, Z M
0 t- U- J/ R8 `) Q0 d5 A t0 X2 z7 w, Z4 M$ f3 O3 c
( J9 P/ i0 `$ U! x% h 1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。
$ V6 U0 {3 |) p1 y' H0 d. K7 i5 R: v c. ? r* f5 b" S
' e& x& J$ Y V
) `0 D+ i3 s# J: U 解决方法
9 V- b& ^/ y" _* }4 m6 w7 e0 t* x& m y7 b5 [2 x! m- s5 L
3 P" q' ~# `+ @5 s- [% P
' U. [; O* ]0 y# f! D) t; c& e 接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。
" b9 r$ Y" P! w, T8 Q: e; {
1 a8 r* ?5 ^4 l' U# A3 ?; c0 h3 }% D2 I0 H; ^
0 K/ `% V0 t; D0 D! \; v& ^
首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。 ; B3 Y! g! R$ e1 L- H
" L J6 C" N1 H0 s. w" }
F# P% O+ Q1 m( \ m
' l: P; }8 {8 E C:\WIDOWS\〉ping 10.119.40.40 ' r7 D/ W# Q$ Y" n
7 t$ g5 E$ ^% ~# ~; q
$ s2 N+ N" t( t, Q/ `+ P
K5 Z+ x- z) Y1 }, z
Request timed out
8 J" F' K/ F* b& |- _; H. I" B7 ~; o5 F V' q
, @! X- ~) L& U, Y: k' ?+ h7 @4 t" s( L9 e
Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略 3 p- q6 @/ m* D5 O) M6 I% f
j1 g% l, ]0 J3 F6 E
4 v) |% \+ h0 m( r& \1 H8 n# E9 p8 W
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。 " d8 C# A( k: x. x/ T
) e, Q; w: M: ?' s
& w* D# T! m' g6 r
: H! d$ A7 @1 V5 _& s! o C:\WIDOWS\〉arp -a
& \3 v0 ]9 y; V4 n# U& Z. O+ j7 h, x5 D
4 V& C: {, m) f5 k% c
6 e; D2 X. O# }7 Q9 G! P
Interface: ...... on Inerface ......
0 S! B) e/ E) p: c5 N/ O _3 \6 R+ a& n
+ Z. U) L2 `, e; Q( H8 \4 v
5 H: O7 l" z+ u9 w/ _
Internet Address/Physical Address/Type 2 ^$ m+ P c1 r- \1 m M
, D- K+ O0 k( D* n% f) L0 Q9 c9 ]7 c
* r) y4 x" ^' K
10.119.40.40/00-00-21-34-63-56/ dynamic 以下略
2 ?4 V' F( V7 b! H
* G6 R: U0 \; @/ k
4 V& K& ~5 ~8 a6 I3 z2 K0 k: ^$ l. G0 b( K# X
以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。 ) ^9 z" I1 O% d6 A! a
2 Y& `3 w2 C5 Q
6 w9 h- X* S2 x$ x* v
2 ~ {- E9 b6 z* [2 |/ }) ^3 t9 { 网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。
7 c8 z# w8 R% d) ^+ o U3 z8 J/ y) S: {9 h
6 Q0 _% V% Q7 v2 Y% p% f+ Z* U _5 b" E, p+ v2 k( q7 u8 a
在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。
% q, l3 F9 |2 L- s2 \: ~; v3 v% A1 e
3 [) c) y( z! M! c
6 q; w3 [+ F- I) d7 x% e1 k0 \
* 在网管员的机器上启动浏览器 8 v5 i0 |. ?# @5 c
1 F3 ]) u7 i4 Z* f. [+ z
4 ^7 z! X% H$ e7 @: t
q) f3 n- J% F; G6 }" h * 键入交换机的IP地址 # m& j/ B, P; S7 G8 a
9 w. B0 @& I8 F/ ^6 i
% A1 |* ] N7 T; ~! w- k
* F$ Z" s2 a1 o! n5 t+ F * 提示登陆信息后输入用户名和密码
: w% f; Z; ~! ~9 O
# A# z/ V, W, j, t7 N3 Y" Y( w) I2 @; h9 e. `8 c% K( D
8 q& e$ k. U3 d, X9 A; R
* 进入“MAC Address Table”选项 5 G' n3 M' B; P; \
9 J* w* w0 f6 A: y) A7 k0 S6 d
$ V" i4 k2 T3 b1 S% @( Y
2 }+ m2 @/ f( C4 w
显示表格如下: ; q0 E# `6 p8 X, Q. { x/ G# P
2 H) @8 O5 [* ]- y2 J( n. c* o/ v
' f* ^. B6 }) Q' _* _- d! g: Z$ h9 ~% w
Index/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 17 r/ p, e5 I* d) G, K1 P1 O
0 t6 ?9 b6 U$ l$ p& j( [00:00:21:34:63:56
1 l( U9 w ~! [( }$ E6 X g- ], y
13; n& D6 [0 \+ N5 z' d" n
- q$ f" v/ E5 y, b& g) DDynamic% B1 s+ n9 f. a* i3 m; ?% j% A+ V
) a6 V& q Y* |# t7 B
No
o" Z8 O) x4 ]$ b8 Z+ O# @+ x
6 y- m3 ` }4 b: k$ l Y3 J( y0 D5 {% ^- t8 |
! W: g+ z4 I( d' A8 U! g
20 p5 q0 I/ p: w
/ c0 D( {* x. y- ]4 S
00:00:81:65:c3:a0
8 ]% {# @: J2 h% L a
$ ^$ _" T1 C) rN/A# ?/ ^% F3 J2 S) V+ {( V( Y
: q0 s! W! A3 Q: J
Static
5 S0 @! N& f1 t
3 m/ ^* _. q& v/ ]0 H4 R5 c4 \+ RNo
" L5 v! E" Q+ a# \! w- k0 c6 m; b: h* g5 R
+ j, l6 J. O) T+ x5 f
; }. r% l c f7 z& e9 a
3 {% @0 I% C- @9 h
7 \2 `- w' J' t6 S- F) B3 N00:00:a2:f7:c3:e41 Z( }* M8 b# _# ]- ^3 `$ L
* J& q7 f! M; E0 G25; F9 e" y: L1 n4 K$ L1 m7 l. }
/ H) a& B/ ]& bDynamic
9 z% G( B4 |, E5 F* [. Z7 K2 l
3 b- b$ w, ~8 G) GNo
: o) @! C( ~+ [$ I- T2 z4 A4 J5 t$ b& Y( }% Z) E1 j% z4 b2 E
* N, d8 j3 V( ^/ j
, D2 W# A( k; R& _. c4
0 S% M H0 D; E2 q
3 I, B; U( N6 ]" q6 t. C1 c00:00:21:34:63:56
. k! T4 @4 s1 d: M* o8 @5 e6 k# [! D: u" [' x& _$ A9 u! l3 V7 T
2 c- C" }& m7 |7 P6 C
- W8 a X) y* xDynamic1 W# t' Y- C, G
. b; G0 @& U! ~7 \# uNo
/ z9 U' p$ K5 S, \+ P0 S3 O
+ Q/ ]1 k; d0 C( x7 G ]4 Q) Z' i# t
* |8 [! J& w6 R; c% y
2 \/ I* g' X2 H0 j: x" \
1 G: r% {2 e {1 C- J, D3 n4 R1 K+ m- ?6 M
以下略。
7 s9 G$ \5 e% Y1 B4 Y. G- k& b% ~! y* `7 O; b9 [
此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。 ( N! e& i7 G$ v n: |) b% ^5 f; r1 o
! e1 O/ T! x4 T4 s" E3 O8 ~
/ V, V6 C( h" b! V) y
w* W, ~( b& Y& L0 E- e 对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。
5 I8 G5 i- f1 M: _& p
# m5 i& {" z* R8 ?. ~ P
; G: m3 b% W( h( D: B( [
" J: O8 ?0 |0 T1 k" R- w8 q 管理策略 - ]! B7 G- u0 `4 e9 B
$ Z1 t2 Y" W7 a( L( d8 W/ I9 G$ ]
, z6 G9 B: c2 Q4 e8 o% A5 U; T
6 M6 Z. t1 X. s4 {% a! p 对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 , m9 _& T! K* j# U8 W
! A4 H& {) G, Y
: {5 g' x/ c; T
. v8 @3 P# ?$ S t! k( B% N% x' L 用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。 . @0 e, Q5 s7 V3 G0 C! A
) _1 Y7 s( {2 E
% P7 M# R# d; U) p
+ ~% L$ `- W! r3 S9 C 使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。
: W+ Q. N/ u" F3 O
1 ]( K* N& p8 x( n& O9 j% z7 m
; N) t$ `" Z- c8 y
在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。
% Q! \7 L5 V2 s( a 9 x( }7 D) o- S2 s" k
编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论& ~) V6 }; C! e
学习, 交流, 进步才是最重要的! |