|
作者:蓝色烟火 转自黑基bbs原创作品版, _8 d7 \, Z" J9 ~* A
版权归黑客基地所有, 转载请注明出处 5 H* \, B" o1 [6 F1 L
网络简介
& R6 L3 h* w" h" M& H7 L1 D8 v$ x i P" O1 ^
8 C- Z T6 Z0 t
作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。 $ ?) q, ]- y4 h
9 _3 H' G8 X' Z) ?3 S V
( @1 }- U; q* E3 m4 v
& E6 W5 J, N/ f 问题的提出
4 U- ]) G" J" Y/ V$ A! {0 A, U4 J, d- L, S1 u% |0 F1 ]& G' a' i: p
1 p; ^+ W) H' B9 x* e2 S
我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。
! y3 K/ `4 B3 K8 E/ G: o! M* y
8 H; z. P8 J. N8 O$ M( `; n' B
# |& |9 O4 ^: q; l) C# E& y
. V, q i- Q( b- h/ E 分析原因
& w3 y" u" S% w! U
+ \: _; G# y- N# z4 i: {7 Q' E) k
, M4 k6 _6 q! [2 R3 g" |. V2 e( O
出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。
5 Z' G4 _: e+ y$ n( a
+ J- Z7 B9 `9 D7 W3 W; {+ L1 J8 ~& j6 y' [9 Y9 p
0 ?/ g/ ^, J7 T
1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。 % j6 H" \% V: a# A
+ U. E# x# D- T# ~+ L- T% n; z) b, _
6 h7 H5 t; p& V5 \, w
解决方法 6 r, V6 v/ o" W* h' y. \ D
; _4 i3 X7 C8 g+ M8 L/ K; g6 {& }) g9 r% n0 Q% \ x, _
5 d& O% Q- F; b, Y 接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。
; A# g/ u* O! _1 n. d$ D) `( O' k! t \$ I$ @8 M+ z3 {
: I! `: `/ [1 ^9 s4 i3 e9 g
- q! g6 Y4 L2 V 首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。 $ z- w- `! ~! \* ]; n
. ^* k5 q" A" m: R9 K
5 `! f4 ?# ?/ W. ]% G
/ Z: N# o9 P% n! s! j8 N3 P4 g C:\WIDOWS\〉ping 10.119.40.40 % J( i/ G! w m% s o/ `
|0 U, q0 `. b% M7 H* h) |; V! R, a
0 C1 G* W+ H0 O, g. P8 [- s Request timed out 9 N9 p3 u+ \- T6 J
) G5 v3 N, T$ r* `* s
4 w% @, u. {4 {! h" g! K& E" _4 h/ d, R
Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略
4 a2 A; W9 A2 x2 b, E* y( N- {9 X1 j0 ~; \
5 D6 ]/ O4 H; D
7 M8 M& B* P$ P
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。 / Y, k5 c0 a0 @) W6 ?
1 Q ?% r" [( }2 k' }* v. ]: d/ f, P$ n7 Q, A" {7 q
( v( J8 v3 }8 F9 L
C:\WIDOWS\〉arp -a ( t3 z/ r$ w2 b0 Y7 B
1 m: h) _" B) d. L, a$ B+ ?" A5 B. g2 U
. k' w& k/ D( m
Interface: ...... on Inerface ...... 0 x. E9 q' Y+ m/ Z2 q, F" Y
3 E# E' c$ j4 u8 p; \7 }
5 R( R8 B6 k. O1 n
, e( e- w p! L$ @ Internet Address/Physical Address/Type
' I: @" z) c2 c; ~- Z. j- |6 K; t* ?2 K& U/ j
/ m7 U) l; Q2 T W2 q: l. {& f
/ O2 C6 m1 ~" ]& ?1 h/ D. P5 f
10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 3 J9 I4 R; m5 R5 g j6 m
* A4 O v1 R2 Y2 g/ `7 Y7 g+ x/ j/ `; P
) g1 D2 ~3 ]5 m7 y( ~. A K/ U 以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。 8 x/ A4 T1 n! p) O4 _3 C2 ~8 `
/ [* s) k/ L, x, u9 T+ |7 M! q' C
4 m& E6 V% x3 u; i9 E. m/ {' p
+ V/ n1 d* }& @# x
网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。 ' k C0 ]8 M) y
0 C4 b1 o. c+ ?/ m+ ~% W3 m
0 a: P! o2 O+ Q: `
L5 ?5 g. n* n6 z 在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。
& e% r5 ?, l T6 n g( ^
/ r' a, p# ^: }* C$ G: c; d% A& v- [/ d+ s
% M8 L0 b% E; x% y9 Y, j) A9 w3 |
* 在网管员的机器上启动浏览器
& u" {' F. i2 e9 d) k/ v$ _1 z
( u j* A% C7 m
% u0 I6 M/ w$ H3 r
4 v. V y/ }- \( } i * 键入交换机的IP地址
( x9 p9 y2 ^3 K9 \% |9 D1 Q; ]! D
J: B% s+ N/ d2 \+ {" \) S8 H2 O8 a+ Y# u
, W# g% }( m* P4 d+ T6 q- N2 P' s * 提示登陆信息后输入用户名和密码 & F& f& E! g7 }
$ Q) ~8 J. i' _6 ?2 z& s" {9 z" @$ @4 O6 I" I; `
( j) \$ q. N( v+ X) {: `
* 进入“MAC Address Table”选项
& x5 o; e" M- ~8 d0 G* g B
5 P4 d. a! j$ w6 l; J8 Z! U5 \% V3 B8 W# y% o1 \6 _
+ V! I9 z' h$ B
显示表格如下: 8 h, a% z r5 h# C
3 f s1 I$ ~) A6 y9 x. D: W
3 t3 _/ @3 i7 n9 j8 Z' c
" q/ s; a2 u/ F/ K6 g7 aIndex/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 1
f& a+ b$ f* ]# _/ D3 j2 T% {/ D
( ~6 m& W: G) @+ y9 C0 s00:00:21:34:63:56$ h4 |8 H2 }! U
9 e+ Y) y0 Z. ~1 d, k- J135 v1 |9 ~- A3 u0 U4 k% u
2 U$ j) k7 g$ c( h7 M0 SDynamic
. o/ D, b1 N- L( q* ^
" G1 t( l; V( l1 HNo
( F7 c7 a8 X% L: H; ^; n/ e/ e. ?+ x4 r1 H2 H7 ^( m
2 J$ @- r/ |& Q# n" o! f" w
+ g4 y$ e; `8 K* L" {2
- L y6 Q* c/ b* ?8 I+ Z B1 w, ~' } S6 [7 {
00:00:81:65:c3:a09 S+ A- h% D( Z: m5 w o; Z
# S, L( P7 y4 `2 J5 Q0 ]; cN/A6 v& c/ F0 X5 N/ F8 U4 e
0 q# Y5 ?5 k& O: l: G& z' p
Static
6 f; |/ Y. A1 w4 g: I: T3 o# C" \* ?* W; i' k/ D6 n6 S
No
* e# E. Y8 W! B+ B# j4 X% R# p3 O! ^) u4 S6 K
! J* O# r) J1 U1 J" w# T
. U8 D1 ~% V6 E3 r! B1 l6 i; z6 e3& W% W3 A9 C& }' A
' @; x' L7 x- H) |' x: ~9 r& e
00:00:a2:f7:c3:e4
) \/ v& j$ y' y% A0 y
+ \8 I3 \9 \7 K& Z& H$ Y' z8 @25: C* G2 \( ?) n$ T. j9 J2 v/ k
) F! r+ }' Z& O2 J. UDynamic; i: W' X* w) i2 W+ G
/ }! Z' P# W: SNo ]5 T4 z, V1 ]: }
& {3 m/ B# a3 p' E& I, Z2 B/ i
. p9 `7 G* s1 B& D5 L; G: R/ w4 m) R+ H/ }9 n; M; s( [: F+ Q3 f
4/ l, c0 ~# y/ i( M! [
7 I2 U. d5 U$ ^
00:00:21:34:63:56- R! j! {! S6 r# F% B# J
4 W. N- R: J- b* D
2
# S& A: Q# F" |4 G$ ~7 x% s
6 x# T5 a+ \! W, DDynamic
7 H8 E% K8 e- [. k7 C4 _& U3 c& \$ _$ ~ _
No
6 _6 v% l" R/ ^8 S [
9 v( e0 F( P% t
4 s) W$ j% Z7 O( ~/ h( [& ?% Y2 U- P F9 q$ q3 y
, C, P9 W) W3 P9 Q! l! S
: `! g# o1 o1 Z9 k7 n% v
以下略。0 A2 Q6 s( a/ C5 W( D. p, M+ B
; A: C6 W; U ~0 y8 J. a) T8 x) ]
此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。
+ n8 {% q2 @1 E9 k4 K. I' U* X, W k1 ^0 ]
* `9 S1 i- q! ?' B {: E/ E" c9 L b& Y2 U- K0 O( X+ x/ \
对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。
6 F5 a8 w' B1 g/ x! F \$ M) w: e% h6 P$ [$ ?, {9 @" A/ X
7 Y% x6 C: U! Z: h: K% C1 w/ V8 z9 {/ ]- _+ l: @
管理策略 & A) V3 g5 B+ q. [( k* u0 p1 R
( C8 g, E: E R' w/ ?2 r
' W# a. p* p# C6 m# u7 ~- @1 e& V \
对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 $ i, y: R, n( i, c& D9 O
, @) d# E- d0 `) o1 i2 f3 f& ~7 U2 f& F3 T2 A
6 f7 ^. u. c( m2 Q# ? 用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。
/ {; ?/ I7 L- B9 [0 P. a5 j* j. \, m; `# w) G4 ^2 z
7 c( ?- a. ?; I% T6 N/ R# M! h$ Y( k- W3 D" {7 F7 v
使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。 ! ~( U ?( z/ c1 Y9 W3 y
1 Y7 h1 N I; }3 q5 R9 C6 U, p% y4 [& O1 q J
/ m' W& W' ]) x1 g
在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。/ ], l. Y3 h t! g% E
9 f2 j1 R6 \ m# J编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论& J: z( K- v" n" Z& A
学习, 交流, 进步才是最重要的! |