|
作者:蓝色烟火 转自黑基bbs原创作品版! B2 {, v: [0 {
版权归黑客基地所有, 转载请注明出处 + m# B4 h- B d( i
网络简介
\8 i8 Z* S7 z; N, i
) r. @+ M; |6 \! r; B7 r. v' a" E% z7 B3 K8 S/ A! ^: ~1 W' ~
作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。 ! F( @( ^7 S" A! O5 ]/ `7 W7 S J1 K) w
7 L5 r' t: \/ u$ ~$ y7 L8 y
& I% n+ R- N: ?( R7 V
* \4 ^ k, z+ K/ r
问题的提出 5 x. o" z% U' H. m# ?* c+ }
( L, b) ]5 j; Y1 x$ z3 a+ c A$ }/ Q! ^ L
我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。 0 n* }# k7 l# c" |% s% P9 x
7 ?2 ~, Q; x8 r7 v; _& |) L: b2 K
5 {3 M: o2 A# E- m/ u$ _$ J4 E+ c. u- a' @+ g7 J8 d! s1 p/ o
分析原因 - _. D0 B9 l8 A, I- v, g: f8 b
3 o5 d6 ]$ Y3 [
, r6 B- ]. A5 l; _+ b/ W. u" `- E; V) e2 F4 M |. Z4 j- \% W8 ^
出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。
_* T% A4 ^( w- ^: S4 C4 B9 V- p; B/ s( u
% o0 q( d2 x3 ~5 v9 o2 Y! Y J
* E; W; X) T5 G2 w# v
1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。 4 X: n3 u6 t0 L$ u' s
& \$ z( ^# O% P6 ]5 V o* f
* [0 L5 ~- D3 D% F9 O3 W- ?* U
; b0 `" r$ A/ } 解决方法 % ~1 y; |# P( Z% D- }
c' Z# K7 ^! w
; p2 A1 c: U; e0 I) Q' L
( T/ w' B9 ?: ^3 N1 W$ X% l! B$ p
接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。
! {7 z* m; F" B4 b8 K0 @% j; | |* X
O3 N5 l1 I; E* a
, M, R. F1 x- H6 W: i1 t 首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。
) R8 Z" u" r4 V1 i _7 \. T/ ?6 W3 @8 a* Z
% m$ X( F* P3 W) `: H; l1 L
( i8 K0 t- ^5 ` C:\WIDOWS\〉ping 10.119.40.40
3 d9 |" V+ g1 F* y+ N1 j! Q7 a0 @& h8 N, O+ R( Q
; u& Q$ n2 f8 G% ^* Z
, i+ p6 @* d0 y- N Request timed out
; Q* a b- \3 Z H/ Z+ i' x+ q ~; g7 u# ] f( t, B0 [# N# r2 G0 O
% D* b; N: j: E- o3 L
3 g" g. t! |2 a7 ] k Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略 " G1 V: S, {2 j" O1 {
) F+ ^2 T4 L/ a- E
" p9 ]* Y) ]. U' E( \6 c
* N5 C8 h3 U3 S6 q8 e* g
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。
9 [2 f% n+ c& _4 t* g- ]' e
; P8 _- f: f8 p8 ^* |( Y' C2 }& h) E- y5 d
$ z* I" l( } B7 c! u# F* B8 | C:\WIDOWS\〉arp -a
& O, F+ b/ `0 v& I6 n# T+ M5 ]! o* a1 S0 i$ f- J" g1 ^. u
) [# Y y' E% F* _
) f/ J, h: }/ _1 J, n- c. m Interface: ...... on Inerface ...... $ J1 ~2 D% h; s& a+ z& u, H
p& H0 V' ]! T- ?
8 D# O9 x0 ?+ `0 s0 P5 Y
' l* }: a8 T1 k4 V- C( t
Internet Address/Physical Address/Type
, Y3 P8 S1 f9 o9 ?6 g: L9 ?2 U2 z) r: F. m" k& A7 R
' G1 y& ]; ?6 @$ V5 k2 _( F1 b- m: x
10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 7 r" k# L3 L: v% d3 V( L3 I. R
* V# P3 c0 U! C! T
: `* G/ }8 x$ A$ D
% C. r# _8 U9 v0 b$ M P6 F; ? 以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。 ; _3 J6 W! d! x, p
. K" K4 k3 s7 J
0 Z% b' q. D9 m! D" \ l1 F7 S- \( b6 Z6 U9 R3 P r- D& w
网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。
. g8 m0 w, ~5 }2 l4 \& f- J; ^) Q& V
7 X# _% v6 U1 z: q+ b% e- S6 A' D: m) m h
- z; S+ S/ F( [" P$ U! I
在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。
; | V5 A9 ? q4 F' V6 x7 ~
+ T! w/ b2 b( I1 R4 H) U+ W! }6 ~# R8 v- l7 k3 @
- d; Q# x6 a p- e! z
* 在网管员的机器上启动浏览器
' N0 K' ^" u8 R
$ w" o: h& Y' }) ]
1 ]" a0 j" v9 G* }4 j
3 q# g% u i9 y% } * 键入交换机的IP地址
' A* l$ d$ Q8 P! Y: }5 A$ I6 A; `9 p8 \& [# q
" p, \/ I z' _" s8 i& F
4 d8 b2 l" \; V- s1 [ * 提示登陆信息后输入用户名和密码
v! e4 x& [ Q6 R2 t5 z
v& H- ]5 z6 T. J" d) x' u$ s' ?6 A2 c$ [3 ]8 q0 D5 ]* u
: P5 c6 ?, B/ r" P0 ~6 X& \, U * 进入“MAC Address Table”选项
8 Q- Z/ l# ?4 Z: p, @! B7 K4 s& F( T8 _
8 Q7 S; s% D% G8 z+ b& O2 E& B2 T' f. b: V, `# A, y5 B
显示表格如下: 4 J# x w) m: y; ?
$ B6 @' Y! D6 k) K( T' V3 a
$ L$ e7 P3 S6 ]) q3 K. M+ t8 P) j! ], c6 y9 e
Index/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 1
* x0 P2 I! r Q2 x9 I* A. V' u. d
& X; {9 L: s2 u& w. G$ T00:00:21:34:63:56# z6 f# N7 T, p8 ~; z
- t6 H9 ^- U) `( v
13- C8 \- b. W: L6 b: Q; z: e; f
9 @7 o% P7 t x/ S; j8 nDynamic+ R/ O4 D) p5 m0 N) n7 ` j) C
; ^$ c3 t8 r# u h. a
No- c6 x* x# C+ w4 j% N! X* {
; E& p& @: `! G3 \( J- v9 v5 {+ @0 l
6 ^1 z R' v$ f+ w$ Z* N4 C" T6 g23 C# H" H" { ], g
$ F0 v+ i0 @# o" [: X0 R- t: M4 y00:00:81:65:c3:a0& j' T6 [: q3 p( L$ d& G* R/ m7 ? k
; G+ B" ], ~2 c9 \ {: H4 SN/A
: M1 j+ S6 s. p3 x" v( A4 y/ [! g9 X% L3 A+ K; j& N
Static$ v8 |) B* A8 h3 v1 }6 ~ F5 i( a9 o
+ C Y# d; c+ G M5 [7 sNo
8 M8 |1 f# q3 J/ ?
+ t/ f0 D x" n/ f2 [
! \/ n( [2 O* l7 F; C
- Y. y3 b* v9 R; ^% e3
; t+ G( | b5 l, b% f, {5 I& [! c; B4 ~4 n& p
00:00:a2:f7:c3:e4: w o4 {/ V8 V
( z* V; S. M+ H$ N25
, L$ s* T5 Z' V7 p% n# r5 k3 |# A4 @& f$ c' H" ]2 D3 m8 M
Dynamic
t2 i1 c" U7 t) |; Q
4 w* m. ?! I! TNo
0 Q! z2 q9 p! v7 \% W$ J+ a% Z: v! X2 C+ y
! w$ h9 h& K6 z3 V2 i6 I# k$ i- L& Q% B% a' E
4
! Y5 e0 P y7 @$ P
' c& B6 M7 R, u! w) ?6 r00:00:21:34:63:56
/ d% L6 E9 X7 i- l! v
2 A& }- u; c$ n4 f4 z3 r8 R2" ]6 y( H: S" x! i- B
# {+ l; C2 M7 m v; Q
Dynamic- j: s' _& a# r. O0 O
' m( S; F, l+ Y5 T
No
$ N6 k/ P( w( T9 M$ X' M0 q' q. }' x0 x1 v* Z$ d
0 G9 M/ z8 X7 h8 _, a* p! c
- d; W, [3 j- V# }$ ~- W( q- g( {: N( ?& G b9 C
( s) Y/ a3 u& `8 v% B' q以下略。3 H0 N' n5 C, t# }* R
" ~6 k7 Q5 u8 Z( ]
此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。
/ ^. w8 K6 d) q _- Z4 i) `5 K# r% Q9 L8 n" }& L6 N& q
! X& [+ o8 c) n% l
' Q+ M( Y5 L6 T' ?& {( _' Z 对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。 : | X$ ^+ {# }" M; P- M( n# e/ T
. @% d P0 v: W4 b" a- ]7 |8 O* h. {
. x @ H7 d$ {% A4 f+ Q { 管理策略
2 j4 S" I, `* F/ K' Y5 e" P" L- d& r9 u
) x5 q- l! e* r% X! R1 D' C: B4 Z
: |7 t" N# X+ G- Y3 B [ 对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 1 P, u7 ^; k7 e" Z6 G e3 x" Q
2 O, k( m0 i; _; \
' _ W- k: u' |0 e. A/ A, `: U! b/ r5 P9 F8 e5 V
用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。 / s; y7 ^2 r% x _0 J Z
! f& u( U' I7 Y# K' p* N- }. K; X
+ c) r! v, c( U( [/ A, `
% F/ A9 N0 n" B1 l+ @. S; _
使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。 9 C" R9 J& ]5 x1 {7 `8 ^6 ^. x$ n
) R9 _/ k+ W; V: h' W. o) V6 x
$ Y4 O: y- A3 Z% W' X
' L2 P, ?1 \4 Y' b& }+ F 在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。
5 O- H0 v, N; I9 e+ x' Y7 m m
; w& N/ q# l( Z编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论
; P6 _' m9 `! g$ Q [. V: U+ l学习, 交流, 进步才是最重要的! |