|
作者:蓝色烟火 转自黑基bbs原创作品版 `+ g0 ^4 U5 X- [" {
版权归黑客基地所有, 转载请注明出处 5 W {5 [3 t7 m7 o- h
网络简介 # ]" x+ b( E( f! `+ o
; A. x- b8 j4 p0 w7 z! c
6 D5 y9 S/ {+ i
作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。
6 d( V. c9 e5 p
# o; ?2 F9 l( |5 x, }, |# @1 P9 F( u# _/ n, e* {2 w: ^, q
; ?- ]8 H" v6 c/ z 问题的提出 / G: S6 u# t: M
5 a$ h, r! E, {2 ^9 j
; s0 n( l0 M B; M7 _) p8 Y. E 我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。
/ ?" n, P; u* c. x- n5 }6 u& t; ]# u$ C) d/ _, Y
/ ?! u3 Q" Q9 ?5 H- f
4 r" J8 I! T! d5 b( S; K 分析原因 0 K+ w; l3 w/ {" f
9 c; ]" P$ ^) G" f5 X( [1 }
2 L2 P! `+ d% O' W
" \1 |. M$ I: [ 出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。 ; U% w6 |: B2 z" d# M
- V4 Y( |" o" b6 o7 R
( U# o% e! F/ s7 m: A0 s9 h) y( p- S9 U* {$ n% N$ c- S) S0 E t8 L- }
1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。
$ _) y4 e! X7 b: w% k' `: P" A
( L \, x% G; R! c" _
! L2 b" A* ]9 O+ o 解决方法 , \3 C* O6 }$ U1 V
# |) l0 e* o* f
+ u$ J2 v# o# q# r: a" d% T3 Q9 ]
7 ~- b3 N5 \1 O 接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。 3 N8 k# J5 R" n
7 i- r% E$ l2 b
3 m( m# V0 ]4 M
5 O, C) S3 v8 l+ J- {: {
首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。
7 i' v7 N9 f/ j3 W, v0 q3 y t; K @3 I2 o4 c) m" j4 T8 Z! u
/ m, X# j; G4 X" n6 s( o% K* |- c! s2 f' U( F
C:\WIDOWS\〉ping 10.119.40.40 % s) _" {1 M" F5 h- c
* ^2 x# I6 J5 o4 S
" X9 k$ {2 m, O9 x4 j
. A# z2 B6 C. ? Request timed out ) O' i/ k8 u6 h/ ?3 | g7 S
' E3 Q3 J- P2 \8 a: u
3 h4 O5 p6 b( `, M" @1 ?. _! N3 h
4 W. q" A! z- [5 H! u Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略
, v& ^) v: q" R# y x
. {+ X" n+ S2 R5 R! a8 E6 i5 @3 a, |+ b l- U- U/ i
) a1 Y5 ]8 r9 n( T! k* X# l9 @ 我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。
1 k$ u# R$ }2 d9 a: T3 {
! Y) P: ^. ?3 m7 h z! D! I# g2 E
1 X& ?' q8 t% C
& K7 ]* v3 z" o( q! P C:\WIDOWS\〉arp -a
8 o1 o* p$ P1 b7 v W+ T" d1 p$ z' w+ q. `. n; m8 w" Y8 Y5 m4 }5 d
5 @: S5 W. [9 |5 |
% Z8 u$ s5 k: m7 |. @# n- e b4 C Interface: ...... on Inerface ......
4 [8 b& G/ r" e# D, u Z, B2 Y) N! S; X: a1 I
1 T' ~3 R& }8 [/ E( ~, V2 {
/ {+ P- Q0 e" s% l5 d/ X
Internet Address/Physical Address/Type , H( `( }" e) D; F/ I4 g
" E9 X t5 U: j6 M: ^$ P
' C+ n1 t9 |/ V5 _+ ]* \
9 E( }* ]8 I# g' o! A 10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 , ` `+ f! s% k6 Q w8 ~8 X
& k9 C- W$ ~( n. ~; M
( _' h! a+ r( f4 R* l1 R8 [
D' y' w( j2 G6 G
以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。
. s4 o5 n) t7 k
$ ]- u+ z t. h! V1 V3 d. W( ~ c, W+ ]
' G! d" C4 V- o4 R# l3 { 网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。
8 Q5 x9 h9 {5 P7 G R# E. t0 M, s# f, T
! m5 c6 z! K2 a; ]
9 _# m" k5 J8 T' e B; J
在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。 & I+ f% ]+ b# i( P9 C$ r+ Z
2 I4 C h w9 ?2 j6 g1 }6 n2 g
% D$ Z1 l4 q. u- p
: Z5 Q% q( `2 h/ U" f1 [4 X * 在网管员的机器上启动浏览器 0 n% k1 N2 ?1 A9 `- s" s
: ?! C1 P0 O- y& K, j
9 e/ _+ X( J- ~4 _3 ~& [2 F Z/ w" ~) F/ p( C, ^) j
* 键入交换机的IP地址 - C: p& \' Y/ c/ a2 S3 ]
6 ?2 `0 h# ^: M( W) K
9 z, T. f. @" _- F
# v5 @6 l! L* c& p& P" z. I% ^: S
* 提示登陆信息后输入用户名和密码
/ H- u5 H1 ^; N5 I3 J5 @3 \4 Z/ o) @$ s+ t
1 K: h3 h, [' g$ L& u
* O, ~6 b7 }4 a* b F
* 进入“MAC Address Table”选项
2 k1 K$ e/ P$ k) h# a% m2 u( \# d) G- j0 q2 g7 J
( I. y) \ J; E3 ~; u# y% N5 e5 C5 Q
1 V+ v& H4 A% i1 S; u* L 显示表格如下:
2 ^& q9 y; X3 ]' k' A; a! O
7 z5 j' b8 `" F' Y9 f/ Z2 A/ m) n
+ X N9 e: A2 G( g! g8 R3 v* m/ m% y; r$ x- n D0 D8 P) w
Index/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 1
5 b5 T7 L( c6 ~" z i
" n# |3 ^* }+ [; l' x4 f00:00:21:34:63:56
* J$ c% `+ t# P9 d
% j0 M6 a( P B, E2 ~( i13' W6 ^# }' K1 H. V3 x$ X( @$ R9 @
0 m" O* ]4 x: h) H# c1 e4 cDynamic) i: e8 \! ~9 L4 `. q& h. e
$ i# _; d, T" Q
No+ Y( ]" l7 Q+ V+ u e) S4 a
. G& F9 D( v+ Q% \6 ?% U7 m
7 ~/ V) D9 |. h: j) e Q* a
0 u* @+ Z1 n4 i: G0 O
2
! {1 h# l/ C" f6 S, r8 Y' F6 E% v0 h+ B2 ?
00:00:81:65:c3:a0& p) h3 M/ F) a+ P7 w
% Y1 I$ z/ p. a7 U! S
N/A
0 Q3 ~" ^' E- w0 o9 S W; {4 u; g6 s3 v# b4 x6 G3 q+ o
Static
& H& w+ s9 y: T! u7 j, C4 B$ {- f7 B; l$ z
No3 U6 d3 s* j: X5 B2 d, R v
- l; C! l3 G) p ~1 l# \* t, C4 C0 Y4 g, j: l
; m, I: V2 ~4 {0 L
3
/ R% ^: H4 K P3 d8 E. Y" ^0 }2 r) c( j i9 p! b: C
00:00:a2:f7:c3:e4/ z% ^2 _7 P9 p \1 N( ^/ O
7 _6 p5 E6 W) ?* _/ W M252 i8 B) J7 X. ?( t
' b. s$ W9 q- B& x! v9 y: EDynamic
. f# O; j1 Q7 C
& A* {$ L: v6 e3 kNo
& M: H8 o4 H. T( @7 U R4 m0 k; [2 |3 j, o0 ^' o0 b
2 q9 R+ R+ A) {8 Q- w
, \; V9 Z4 L6 s b) E( p3 W* C$ y4# U+ ]8 P6 {) l) P- Q0 T, U0 J$ y9 a
+ J) _/ V, j' d: a00:00:21:34:63:56+ [7 Y! }& ~# q9 @
: U! @. C: S2 t; I: {& k2
9 N. r7 V: U- |+ j9 S2 B4 R& D+ V: y4 x' R. Y4 m6 G
Dynamic
7 I9 T4 s1 b+ O; e; d( K- N
( F3 D- c0 ]. aNo# o9 w, K) f* H% `
|# I7 M$ R* P5 g3 X4 j% T' h) m
8 C* T' d5 V; u3 D0 E8 }' _. v0 K6 X0 D7 \ F) y
/ j! R( U7 T* U9 p$ ?7 B1 S以下略。& Q0 Y6 Z: L4 Z4 D
% M7 w7 q, W% @2 y: U8 ~
此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。 . E0 z8 r$ a$ z
1 ?1 @+ g, g5 { Q/ a% j: t
! N( g" \4 A8 Z1 g y) G/ S
$ i+ W7 j2 W0 j5 Z t: P- ?( c0 O% R
对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。
" K( [7 Z8 N( n6 K" v
3 G! ~( N" U+ t2 a& \5 L. C
; p( |; G9 U9 v7 `" I# ~ A$ A" G( o( ~! N, M/ o' [ I* l. g1 u2 `& E; h: m
管理策略
0 }. D# P O$ E) P3 t
, X$ @' i0 u/ z/ h- o- }9 q7 l+ l9 C2 z9 L u1 d& S4 F) ~ T
* L V) H! z* C: C4 u0 J; n
对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 2 B* w: |; O7 J6 ]
1 \+ t. |4 o2 B }/ [' P" a9 X8 _9 Y# u7 P
/ q5 ~6 R: E+ J6 ]0 D, e/ _
用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。 + X+ z! ]; C) u' G) C4 [
1 X, v1 y* k+ ^8 m! Y6 i0 N8 a2 V& s3 s
) d( ^, ?1 e0 \+ _( h9 R2 F+ ~3 _ 使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。 7 C. B* m% Z b2 |% I7 k
, I. @$ J% Y. O2 B) a: r6 G8 z0 h: p- L5 w" g# S e% o: T
- B7 a: L6 N7 |+ j6 u
在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。
) \5 p: e6 O7 k w
& a" W- z! v2 I6 G6 E编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论7 e5 _$ @. G1 |6 n
学习, 交流, 进步才是最重要的! |