|
作者:蓝色烟火 转自黑基bbs原创作品版
& B) T7 x$ `* T版权归黑客基地所有, 转载请注明出处
4 u+ h* ~. O8 J7 c2 j; E! |+ M# y 网络简介
8 A( H# f! b* `% ? M2 x) b7 G, V0 J( S8 Q' T7 g; ~ a
- b( A/ ]( f# C' O 作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。 ) [5 N) f3 a# f1 n& @: O7 I
( h; H7 m$ } J, A" t6 l8 L" \1 \% {% u4 u; Y
0 s2 k i4 Y) E! f
问题的提出 . f1 b+ e; e! b9 j; h/ b
* O. c& |# O# o/ x
+ Z/ v3 y+ g4 S5 v, `; @3 O 我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。 2 I1 L1 }+ b1 G6 P6 K5 _
- F4 s. j) |% @( } h+ |
: ^2 v; {/ m# ]1 o3 z& Z0 K
( [2 f, }4 u; I9 \ 分析原因 ( a1 C4 F) E) g% R1 _& j
+ \7 y! e2 V6 { J% m% F$ w3 t, Y: y; Y3 O; F! J/ _' J3 p
/ H- e) H2 y$ N; l 出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。
. |+ v7 @* d8 J+ ?9 u
7 {. |2 }* M, N; q- l
* b4 d0 b- `! S/ s& G: v
' h4 A9 @% `$ T: \4 _# v 1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。
! ~* I' A+ H. r3 n9 s% k
2 o* F9 i% E" I6 D# J' A" Y
! j5 u8 w6 T; l2 R7 l! |; ~" E2 L+ x- p9 ?# L& ?# m Q6 Z" ^
解决方法
7 d" f3 m5 t( p4 C+ r# r0 o! O1 D4 O" G% z$ O" q
$ e C# M0 ^! |0 t- P7 P. T" z
6 E( b+ s) Y! |, f, d 接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。 $ O* [& N# H; s) g7 }4 T
. p( L7 J4 u, n) G) W/ J2 b+ }
1 O8 I- ?* r. D6 W
5 C# W; C$ e: ~8 q) Z 首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。 ; O" U$ ?7 s- s4 q) z
: C5 j* T) G+ ?& b! f0 w4 o
$ ]# n5 }7 D g" R
( B8 r6 j+ ?) |; w. R7 n1 M8 A% t C:\WIDOWS\〉ping 10.119.40.40 2 K; m& _: j7 x: m( W5 r8 Q- j
l& N m& q) j) c1 r4 ~) Y
/ {3 q$ G' R' C
, S" d' x4 W3 M& |* w; E! G5 G# k3 I Request timed out / \/ n8 ?; \# H, c* m2 p0 ]6 ^& r
5 i; I. P4 y, J4 z5 ^: T' E2 j
' T. \2 ?+ d' p) m
8 b z9 {' m4 d! m Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略 % S S& j" m1 w; |! I$ X8 l
5 [' L* }' g Q) C+ D; W
) q) z$ v3 t! U! B; k8 U/ K, r& h1 P2 a* V3 n4 N, e+ E
我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。
$ m8 V7 w# T$ w, D, k9 |" N; ?/ k, R1 `7 W! N+ n
6 a% p$ N: `) b, b/ s2 n( [% |: f0 m8 c- T8 N" _9 b4 }+ c& C P
C:\WIDOWS\〉arp -a 0 X2 Q6 o; X) b
+ S2 q* c4 b5 y' i: y) p% K6 L8 ?8 ^- U# v5 I; t7 h' N6 {8 A
' W y* z# `. g* N
Interface: ...... on Inerface ...... * c4 f& k4 s% M
# |) Z1 w% G: s. X* R+ q# c) c
) e& r* ]8 h3 K7 ]6 m# _% Q8 n2 U
0 Q' y4 t1 H& A4 {7 D1 m6 U Internet Address/Physical Address/Type
- F: _) r' c& c( ^6 D: M! E+ w) I% X6 a( k( H; w+ R6 n
. ]2 ^: ]2 o: u( ]- x
4 m6 U# d/ ?8 T8 f# ] 10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 / p2 x8 G1 x/ b i; c
. z [6 S3 O, H2 s) e7 |1 f) N2 V/ E9 f; F% R
& x. P+ i; N9 {; O( g, I7 e 以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。 3 E6 K8 ^" ~$ \! }1 p
# _7 t' F$ `0 t& q) S- m( A4 g5 O6 j* R; T: I. E2 ~
' `0 n8 D* @. T5 Y8 m 网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。 ) D. r5 {! g& X- J
/ K1 m- Z9 _# p& [4 I2 Q8 ^6 j) O
0 R1 a8 W( {; ?: H$ A! O2 V8 p6 l
在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。
2 I3 c1 K% ?) X0 F J& d m0 G% k- A' G; v/ J7 T7 M* w$ `
& n2 T) b/ r: N$ x" U% @1 f8 Z8 }5 R$ d' q
* 在网管员的机器上启动浏览器
0 R Q( G7 |+ d; N d& i+ J# n4 W. m0 F% _- M- ^. W5 Z
0 w2 P- V$ m1 T1 P$ n$ C# z& A1 w8 M$ ~ t: }
* 键入交换机的IP地址 2 ^$ Q/ ~" h9 \, k
" h$ B3 K. M7 U" {" k: u1 Z
2 t& _( u1 }7 j/ T/ B
/ F0 q' I/ P4 [2 B. B5 U3 L8 a * 提示登陆信息后输入用户名和密码 3 ]3 ?; c5 d1 b
8 Q- d9 x# [, W, ^& V9 n4 U4 w6 k+ C1 f- y' C3 J7 X
% A5 i, @& f4 T, O* C' a * 进入“MAC Address Table”选项 ' @* q. o3 n/ c$ U
0 T( V; G' M1 K* A2 X2 X
0 r( W6 K! _1 q( _/ B: T: x5 S& g2 b0 N: {. j, K+ ` N
显示表格如下:
: b8 Z+ F& |9 L' ]( X0 E7 ]8 r8 `' I
8 t9 P6 [5 K( Q) T% ^. M2 i6 k
3 c( V/ J9 z" E' |3 A6 l
Index/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 1
7 Q! Y! ~( }+ y! v& U8 E# Q: R) g& h+ E/ u- k
00:00:21:34:63:56! z, M9 r! M, ?$ V9 Z* D/ O
( a2 j* {+ j- }# j2 I" t7 g7 }
13, R7 {. O4 e7 |, j/ z& c
1 P& D# k7 x2 R% zDynamic
o7 t$ t q/ G% k5 Z, V, J/ g/ w9 k. L. z! g
No! X# l! l" t2 ~( ?" ~
; [* x8 L8 m" u( P3 P( r8 [( b! H+ a$ b2 D3 q
) c) \3 E+ |' y/ W- c2
7 e/ n& n C4 ?1 l: l+ F
9 t3 w: B% u7 @* n6 {7 g: h, f00:00:81:65:c3:a0
, S0 l0 m; L# o% I5 e
6 t' y8 K" `" t4 Y1 @5 ]) o( R" SN/A6 P" y* B7 x1 \1 G
6 w: v1 I1 v! S. Y
Static8 K) `7 V6 X4 M3 N% q3 C7 X1 {
6 w$ P# P! b* s! {/ L
No' H% _2 ^( k! }, h4 c3 U' @% I
) x& \% h. {" P. J9 Y! W* f9 V% q4 \5 v
" L7 K- T/ F. [0 Z# D- g0 v3
$ C0 P) E; f6 L ^( ^3 Z/ e6 q! C# i
00:00:a2:f7:c3:e4* G4 J/ Y5 m# ]5 w2 l4 I9 Z: E( b) D, W
6 Y* {; `5 e8 _: m( j+ D/ u25
' ^- R2 J: U$ J( E+ r: X3 y l! @7 Y6 i1 b
Dynamic
* g6 q' p3 z! ~' R/ u4 ]. T, B- u* x. I3 A# K P% s! b
No* d/ w% v' \! s9 g( [* A
% m2 b; X! E1 E7 `9 I
- X3 ^/ y7 P1 `+ W
: i2 L- u' ?0 d6 r$ A45 U: m- @# L2 {& S1 f0 B, h
9 V1 }; s" \: O% ?& X- g00:00:21:34:63:56, g9 m! c' M( U
+ d, a. W# i, y/ a" k+ ^4 X: U2; Z& Q2 C7 h* V! Z4 ]2 {9 T
6 P9 f* d. F' K: v: J ], }Dynamic8 S4 ~) U p* A2 K% U- i( q( J/ k
* Z( e% y9 L/ ~! g$ ^
No h% b6 C7 b: M* b
; P3 _! h. p) @' a4 P) G) a- r5 x( P' f7 N, p% R, W+ k0 x
9 W/ [) o) I! G# @0 P) \6 Z+ |
, y0 E, g* B" I. e/ S3 v& F+ M E9 P5 j; l% N
以下略。
+ o0 k* f% l# l" n9 X: s
) b8 V. f0 e; u3 |# O6 r& b1 x# f 此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。 3 B) R6 P8 r# }7 m6 q/ e, D
# _3 m" I* p$ \) P
* t [ P% S' m: B* ^1 c4 P; S" v. O- y5 Y' F: E" Q( D
对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。
% H7 B" _$ `! K2 D1 D' i8 ^8 U, s
0 X4 p4 N( D9 H! u% P
% @& Z+ x" H; }7 n# q* Z9 R
: @+ Y3 i( P5 e; B2 M; G0 ~1 ]1 p; D 管理策略 - ^$ l$ B0 O0 Z% ?: q
: G4 ~( g& Y, z+ j7 e2 d# i8 n( w
2 y1 G: M% W- _& I
6 X+ S1 a! C8 n6 c
对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。
7 P) t, ~0 b8 V; t$ m6 I( W5 T( l) J) n5 G) |1 Z4 S
& w) o6 c8 I' n; L* k
0 N! V) [. t3 n* m( u* y9 N 用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。
) j$ l5 F9 } L7 J5 I l$ @/ i& C) v+ g4 E6 n/ i1 s0 R
0 ?6 R3 P) w1 V+ h/ U% H" G1 x- V
3 m2 g( c- R- \" e! G! R$ L 使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。
0 B, H2 _' \% ^3 \" M- T: Y8 O% [. I9 d9 d
7 }0 j- z% I! O. F2 o% @. D8 c8 W
) y6 V% q" H9 E9 T# V 在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。6 W& p! n# g+ u( v# [" q
, g( b: I# L$ O+ {& t编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论
( F3 D5 t7 Y5 `4 ?# i! C( q学习, 交流, 进步才是最重要的! |