|
作者:蓝色烟火 转自黑基bbs原创作品版& ?4 H, b, C, x. v2 u0 o0 I' N
版权归黑客基地所有, 转载请注明出处
4 m1 g9 }; O5 { }* @ 网络简介 , l8 r$ G$ q s
/ S2 d& S" L8 O1 {3 J4 t, o
7 H4 h0 Z" U, Q+ Z 作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。
: p, g. ^( f2 }* Q5 s# b) u& u5 \9 z- n( Y) c. W, l6 _5 g: f
: y7 J' v# a- Q: G3 a4 ?/ ]5 X" H _
问题的提出 # b, J/ x; p( ^! [
& f2 S$ t9 ^1 B/ b2 O
5 }9 @4 D! p- t( E( H 我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。
. K0 S" F4 T' ?/ i9 d
( k# W1 n2 Q! {$ K
N6 K% X- R4 ^/ a9 e7 P9 n: k, N! P1 N5 K9 @
分析原因
( y) x5 ^+ ]9 c# l6 X* x8 s% F# n' L, u
1 ^" }3 j7 ?5 W+ J- t8 r
- a5 k: Z( [& w( ~( S/ s" g" q) ~2 a 出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。
; r7 `/ R% I; N, C; L% w% F: g. r9 f) V
: Y" ]/ k3 S; p& i. Y2 C! F8 u( S" C0 P* t# F0 a( x
: }4 m, G: X$ v+ `! v
1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。 # W- J8 Y7 H# } k' w: |
) |. [% w. d7 u
" |) i8 ^5 I8 D. J9 G
) K" Q( A. _+ X0 v/ d 解决方法 " h( f0 V$ }2 U1 o6 C4 h0 @
, W' O5 W; G! I4 ^2 U% g
2 O+ s% n4 X, k2 [8 G
8 ]9 N% q: ~: y! G0 i- E) Q% k% [ 接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。 . d, F4 E8 o' }$ M/ X" E; r
, \; R$ g3 X8 p$ X }- q# a) Q* ^: e
7 o: e/ J' ]" p4 C9 q6 B 首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。 + K) o% e, g2 [7 x0 X8 I7 y
+ A3 ]) m) {+ ~9 m+ f7 I$ Z+ K
. k$ b9 ^, {' ?. F5 | Y: f+ I
o, u/ M; a+ f5 S, S; q. n0 c C:\WIDOWS\〉ping 10.119.40.40
( ^# E9 W- M+ Z" e: M! v# p5 G. x( d4 S2 i- M* k0 v. e, A3 Z
9 J1 t" R$ `( n3 |2 i, t' T4 _9 J" M7 O6 Y& u; c5 ~' l0 M, r% L6 Q
Request timed out " y3 f I C% R# h0 {
, Y3 A- J6 t* v( U! I7 Y* |8 I
) `8 R/ u# P# S+ L7 r. t/ V1 o$ x3 e6 q- e
Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略
4 h3 Q' Y; g6 c5 `' g! D& d! s
. v2 q' \" f2 U4 @/ Y% `2 ?) G# D9 Z8 M) P% l3 ^; g. C7 R9 ]
7 V+ i( Z( W9 o3 b% [4 d& a8 |
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。 0 q2 F) k) k2 ~. C/ \$ S. t
b: G. F* r# p5 c5 I. c, t# O* g0 e$ b
* D. { |+ `( Z: u6 U" g7 w" E, c
C:\WIDOWS\〉arp -a
: ]4 W V& c" C( P5 D$ P I& I; E0 L: @1 ?% r. ]4 O) _
3 V, e4 j/ i1 Y" u P6 F+ p/ w' x6 J! C% t) S* w# |
Interface: ...... on Inerface ......
4 K) X: R+ F: H- e: {2 }. a$ R5 i/ Q$ Z8 x9 o: Y* R% t
0 Z2 Q) t0 C$ l+ T) Y
9 g1 \/ `6 V$ c
Internet Address/Physical Address/Type
# k4 V& V( {, F+ G' l3 J8 {- ~' A
7 P, Y. M8 a0 E b* Y w7 h
! x- p0 i' t& i$ L8 r) }" H7 Y! M
10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 ; L H% k6 a3 d( n' d. f
. C5 O! ~% a7 _- I
n- ^* v$ G) D
) @, H# X) ^ a. ~3 h6 `
以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。
9 I( L7 v, o3 @
: Z/ n9 p$ z* T% m* y' y; e1 F3 J% A) e% Y5 f/ q
, d% p3 O4 J. [/ D
网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。 , M* q( }% |" x
) n( T2 n" w% N( z1 G- j5 t" |; d) O* }# I1 J4 w1 Q
5 A/ f( n, W+ R& j% E8 ~* w8 C+ J
在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。
6 ~7 O7 F# E6 v& D. J; W1 u% ^9 ]5 O
6 k* K* F; A p* Q4 d& F2 M0 Z$ h- F0 g" ^
* 在网管员的机器上启动浏览器
: Q( H! b% ?" _# { y: ?2 L0 T5 n" h S1 Q# f
l5 g- ^' D* o+ M* F
_" r; t; s& T6 Q+ e/ S
* 键入交换机的IP地址
9 A( p0 W* n7 \7 C
* X2 W* h$ }5 `1 g, t2 R `( e% M3 X9 R. f9 K! h& z. o
9 e; b: j5 |8 W- }" d * 提示登陆信息后输入用户名和密码 8 x- @9 G! O& r3 J
6 _9 g( x/ U5 j$ q# f/ A. k3 }. C& s8 L# M* V. G/ W- H; A& r9 s
# V' d* }1 d% h * 进入“MAC Address Table”选项 5 t ~# c- ~' n; I5 Q: e2 d
' l/ P( H% a* I$ }% d
7 [, o, A, {4 ?" ]" g- b1 K$ P5 e9 Z) A- c+ F
显示表格如下: * f. W$ e/ ~* c& K7 u( g2 d
\ b; X# V3 R- W* Z) J# t
/ P( e! V; k+ b0 o2 g8 d. B
J5 U! {0 [" c8 J* @; mIndex/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 1
: D4 y8 S) o8 g; t4 m& X, T: W) }+ b5 G
00:00:21:34:63:56
1 f* d4 i; n% f( l O0 @9 @
/ X+ L6 ?% \0 N) g! n13
& ?. Y! U1 r8 `8 I& a) {9 u8 s6 [/ W9 n4 E0 n
Dynamic1 k# m! Z6 n! j! W" L
7 y7 Q. K+ @2 ]3 K& H @% z
No2 ?0 r ]: Q! [3 N+ J; N& e) P0 W
; x3 S6 \- A# y9 D9 q
7 u3 B: e( V' M( S. _9 w; e: q1 Q
6 k5 `% e: P' ?, y; L6 T. ?2: d7 l, @: M4 T; U b
: P( P3 `7 C) S# x) H r2 r( N9 \
00:00:81:65:c3:a06 H+ `3 y, Y- ]1 C8 R: U3 ]
& g; X1 ]6 ?; qN/A5 a' S8 T$ f N0 k1 W
& E8 o% G7 j4 t: q
Static
. z! U' x3 V/ y& J4 a: |6 ^/ g! B. l+ t/ p; S' E: v
No
6 l: B% H; t& E; a% }
7 O+ o; j1 p L' ~4 S5 e3 Y/ \* J+ `: }
; D; f z7 _2 h) @3 T5 ?0 p* ^3
# w& K$ g: m U7 s3 G9 J+ e
1 E1 b* v }0 p5 |# v6 B7 q00:00:a2:f7:c3:e4+ Y4 u w6 f+ j8 H7 C4 u" h
* n4 o- B) I( }( f, S2 R2 t
25% _- Z; o; J/ \5 ^; k! k& |
8 E' \" F+ ?, z7 LDynamic% o9 I5 w, U4 ^ ]3 \4 A" \0 \
6 H K& }& S$ T8 F! K
No: _& j9 X, `" _$ n% ]0 q
: ^3 R: v' v5 q# e4 c- `1 S) T5 v" a, X r( }
9 X% e# M7 P) ~$ N# h+ z) G- C* H4' p! [5 j, p& J$ m/ [3 y7 o) {& T
9 l8 C) K( V% A- \2 X% ?' B00:00:21:34:63:565 [$ k" U7 [$ J& H2 t W
% r* i t0 H j, W- L9 T2
, y% S; K& o' B% c1 B4 i. o' K) L& U. k7 n$ t" V
Dynamic$ V2 U3 s( w. e( v2 n! p
1 X7 ]* C' H! t# ^" H g' K
No+ v1 [6 q) q$ x! _$ ^
6 S$ b+ R: \ C1 S0 Z) G( C" Z
1 x6 S: w/ H0 f) ]! V
]3 J# A. W5 R }$ u& S0 O
" w- s& } F- z6 m
2 ]& j; X( D8 A7 g( E
以下略。
~5 E# J8 \0 H( Y+ E, I0 M2 E* }4 G5 x9 Z# } o1 U/ n
此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。
, t- H* ?( f. _( R9 B0 G9 w5 o! S/ e/ p) d/ @9 z
' f' Z' B) z; y! ]% D" |3 v* ~
4 m' G. _7 _3 E8 F0 k( @
对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。 / Y- X6 N8 s! ], q, C% I/ w% M
. ]* h) P L3 M4 p- U$ [0 @
) M( [8 G: m. J# o9 Y/ u7 N0 V/ A: @1 e i
管理策略
8 C! D9 j) ~. q2 i6 b. Y9 E4 [! R. C* @) z4 W
* t; [ W" o6 l$ k$ }6 V" y! a2 I
0 u% B1 f' a% u( j# a, s 对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 1 \4 J7 p8 {& a4 I& `
; _0 k8 W9 Y. n5 I" b! R, O! j
6 H* W2 z. S) |0 |0 F b2 _' X" ?# I" r& d' D. Z0 `- W
用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。 2 r6 a) e/ \+ c4 f }
- ?; s# x' i- \. @$ s4 A" N
7 v% h- R$ b: ^# d U
8 W1 B8 n- R0 n* D9 H0 N7 | 使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。
1 e# R: C1 `8 y; x* \+ Z' H5 M! Z9 q8 K2 `5 g9 D+ N
0 ^" b, b9 k5 W& h- F4 R
$ U- }$ Z/ @ `; L% Z( F9 f 在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。
' l' k9 U1 {+ i' e c
. @- E \1 M" i8 U编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论
" {2 v3 @, r% c6 l/ I6 X" A学习, 交流, 进步才是最重要的! |