数学建模社区-数学中国

标题: 如何解决局域网IP冲突问题 [打印本页]

作者: 韩冰    时间: 2004-10-4 11:58
标题: 如何解决局域网IP冲突问题

作者:蓝色烟火 转自黑基bbs原创作品版 ( s6 t, ^& Z- q$ M$ K' W版权归黑客基地所有, 转载请注明出处

6 A: x B, i2 C. @

网络简介 ; \( ~5 l, C4 y, F5 W 5 l: _9 l7 Z; P6 g9 f ; J$ ?" H9 r; r0 [8 _8 b  作为典型的企业网架构,本单位网络拓扑结构大致分为三级,并全部采用北电产品。第一级由ATM交换机组成,网络服务器、多媒体工作站等工作在主干网络上,第二级由大量的以太网交换机构成,对第三级桌面提供高密度端口。并根据划分出的VLAN(Vitual Local Area Network)提供实际的VLAN端口。网络协议采用TCP/IP,IP地址规划使用静态IP地址分配,由网管员统一规划。 " t# S+ V; G' @- \. F! z( b9 h) ~4 A9 n- o # W# w# K1 W5 S( Y B2 J E ; c* A; _- B# T( h  问题的提出 / X+ F0 T4 i: n ) |& d/ A- X! p( C* I4 W / J$ W% j, W/ H( ]4 b9 S  我们知道,对于在Internet和Intranet网络上,使用TCP/IP协议时每台主机必须具有独立的IP地址,有了IP地址的主机才能与网络上的其它主机进行通讯。随着网络应用大力推广,网络客户急剧膨胀,由于静态IP地址分配,IP地址冲突的麻烦相继而来。IP地址冲突造成了很坏的影响,首先,网络客户不能正常工作,只要网络上存在冲突的机器,只要电源打开,在客户机上都会频繁出现地址冲突的提示:“如果网络上某项应用的安全策略(诸如访问权限,存取控制等)是基于IP地址进行的,这种非法的IP用户会对应用系统的安全造成了严重威胁。 4 A: b+ p1 W Z7 i( B6 h% y. i/ ~ 1 V% X' O& A7 W1 }& ?$ V# d& G- o% \$ c% m) _ $ E) A' \4 `$ v$ n& H9 o# L- z" X   分析原因 : Q, E' `; C/ ~# b! {* w) c9 j 8 \ A% y* d5 ^5 h8 @+ X3 k+ s, Y + j# H" r- e2 s6 I& {( z. g  出现问题有时并不能及时发现,只有在相互冲突的网络客户同时都在开机状态时才能显露出问题,所以具有相当的隐蔽性。分析原因有如下几种情况可以造成IP地址冲突。 7 ^- t' O9 }$ B% j" x+ \/ U 2 F( X( |% ]2 j) f* U3 R# Q0 E" E/ y) t) V. \8 j# c5 S& H 7 c6 |2 [* T7 M2 z% e   1、很多用户对TCP/IP并不了解,不知道“IP地址”、“子网掩码”、“默认网关”等参数如何设置,有时用户不是从管理员处得到的上述参数的信息,或者是用户无意修改了这些信息;2、管理员或用户根据管理员提供的上述参数进行设置时,由于失误造成参数输错;3、在客户机维修调试时,维修人员使用临时IP地址应用造成;4、有人窃用他人的IP地址。 : c2 L! B) M1 s S" O- ~& F5 s n- z- d : e$ \ _4 e! M" X, S0 ] 1 o1 p: W5 Z+ S# C2 U& V: ^   解决方法 7 w) O+ Z# q, h/ m, `0 _3 k - S4 t' j1 w9 \3 P) Y8 ` $ p0 {9 P2 O, w: K: \- ^$ ?% e! O7 T- |* }   接到冲突报告后,我们首先确定冲突发生的VLAN。通过IP规划的vlan定义,和冲突的IP地址,找到冲突地址所在的网段。这对成功地找到网卡MAC地址很关键,因为有些网络命令不能跨网段存取。 + |2 v% W- D+ u v' `" X" M" A3 v ; x% G+ }4 @2 g/ r) ] : J6 q' S6 h9 \% k; l; O2 h F ! P! E: b2 V# ]- k5 a6 |0 ?  首先将客户机与网络隔离,让非法的IP地址的微机在网上运行,网管员便可以设法找到它了。应用网络测试命令有ping命令和arp命令。使用ping命令,假设冲突的IP地址为10.119.40.40,在msdos窗口,命令格式如下,其中斜体部分是命令结果。 & a8 }+ D; y3 c9 O2 Z ( z% @; z/ y% i: N6 k0 u8 \7 Z$ e" @6 x & N6 S; G$ N% T4 y. N  C:\WIDOWS\〉ping 10.119.40.40 ' W& _) U3 T+ a2 o) ~3 E4 g: t 4 q9 W. b/ D! G7 N' j5 [/ }$ K d4 e0 o1 R' v% t8 |7 n3 p * t9 g5 f( g$ B   Request timed out & K+ J* G% W7 W3 v8 V# V8 `( i% F. T ' [+ l4 U4 K) W: n1 J & O9 T( H; d# U9 Q R' i5 W# W  Reply from 10.119.40.40 : bytes=32 time〈1ms TTL=128 略 * x# F! g5 V) s- w% p6 b* H1 J: ~' U3 {# G0 v, f$ @) w( a 5 t$ T/ M( x- t' S( w $ K6 H6 E" ?# Y2 U   我们之所以要ping这台机器,是出于两个目的,首先我们要知道我们要找的机器确实在网络上,其次,我们要知道这台机器的网卡的MAC地址,那么我们如何知道它的MAC地址哪?这就需要使用第二个命令arp:arp命令只能在某一个VLAN中使用有效,它是低层协议,并不能跨路由。 7 Z4 B+ G! I$ R 6 E$ A2 z$ u( O p8 L( f; f " A* B( ]2 n8 L" c( ]& L L* R0 p8 K0 T Z  C:\WIDOWS\〉arp -a ; V" x7 x& H( X `. C5 W- V # u0 z; f @1 X+ ~/ c6 e4 O 6 U: E! m& p0 C- N! c5 {3 [% ~. k/ {3 u' o$ i7 z, w' ]   Interface: ...... on Inerface ...... % b! w6 L4 }- e* {; _ # t. U8 Q1 q2 M% i9 x" Y9 @ ~( l- p, M& {- m, m7 i: L, Z - m( T: }7 b: m, c   Internet Address/Physical Address/Type 5 D4 B, g9 x p% Z4 u4 D3 D5 n" H; S : d1 O6 {7 K) D: |7 D * a5 t( E# k. G: l: N* B8 b4 y* o: Y7 t! b& K0 ~1 G   10.119.40.40/00-00-21-34-63-56/ dynamic 以下略 9 W. J" b$ }6 _: O7 U& b& ], U- I& N; ~6 v 0 e: l/ p( q& B+ R; d1 c1 p# Z + Z1 Z) E9 P% K: L/ B' B$ y  以上列表表示出冲突IP地址10.119.40.40 处网卡的MAC地址为00-00-21-34-63-56。接下来我们要找的是MAC地址为00-00-21-34-63-56的网卡的具体物理位置。 ( W! J# O+ n/ P1 E6 A5 F8 K# k! _; N T; W3 r q8 ^$ ] ! T/ ?' W+ T+ W3 E+ B9 B8 S# \4 t/ M) H   网络简介中已经说明,每台客户机的网卡直接连接到第二级交换机上,接下来面对大量的以太网交换机,我们要查找是冲突MAC所对应交换机端口。本网络中与客户连接的设备是Bay的303/304,本文以303为例,描述如何查找某一个MAC地址所在的端口位置。Bay303的网管有多种方式,下面仅以Web浏览器方式描述查找非法MAC的方法。 ) m5 L) v8 W! o $ t- o* x4 G& ?3 \( u 5 z# y4 ^) x; z/ J& b " Z* L! g8 C* S \+ g- ~+ @  在查找之前,首先要确定VLAN内的交换机位置,查出这些交换机的IP地址,使用交换机地址可以访问该交换机的网管信息。 & b* [* [ c1 k0 \ 3 \4 C6 ~% N+ ]/ f" P* v 5 r9 Q8 | y" l$ Y. k8 u! q0 N% c6 ~6 u, l2 c& j   * 在网管员的机器上启动浏览器 3 f- W6 Q' o! r 2 ~ j0 v; n% F& e $ m8 z6 C' A( u7 j3 T/ [- x # u9 E% g: \& O: O% A   * 键入交换机的IP地址 3 B& I% y5 S; s P9 k3 G - q/ ~. Z" u9 i9 o! f$ x7 L - |. }( ? V( U8 V, C5 N: P, @* \% {* X& p( H   * 提示登陆信息后输入用户名和密码 4 W t8 T3 o6 L+ m- r3 v9 _1 U/ c. R } 1 Z) O' H. x6 a( l b1 ?/ }* K L3 `5 h- W @: K% e   * 进入“MAC Address Table”选项 ( X3 e/ J6 x- ~8 u' F" P 7 N1 }4 ~4 C( Y/ s& U0 d. t' E% L* ^ t, G2 v % v: C8 }2 _5 G* b* R3 @! M% @   显示表格如下: ) B- a8 @' a) Z7 V 7 ^, t6 W2 a5 z' d5 U3 ]" j# A 7 U, Q3 O J/ g* p9 y / r/ j- [/ U, U8 E bIndex/MAC address/Learned on Port/Learning Method/Filter Packets to this Address 12 h/ q( J2 U `# T: S- a& w * V' z9 B% _6 M2 w' u7 d 00:00:21:34:63:56' x& {. o6 v1 ]3 [( R0 e/ k; X* J; i 1 `3 N$ Z4 X4 ~13 5 J v+ h6 R' R- e4 @7 h9 ~( K, q- W- E* v/ }; Z Dynamic . J9 M* h6 {) D8 f/ J6 S2 C5 V, B6 K8 R7 a2 M No 8 M& m: ?; y% _$ s+ I0 L, `4 P* U2 Q0 M7 ^" m " F4 _& W+ _3 ?) T0 D0 Z, l; _5 L; J7 H1 p2 m9 L A6 d 2 ! X0 I, q9 }/ I/ ?7 C) B& a+ Q8 b7 v0 j7 k" ~& D6 d! e+ b$ G2 T* r 00:00:81:65:c3:a0* V+ B2 f$ |. ~+ a8 n 5 E* T4 c0 f% wN/A& I( ~$ s. ]; X" w 1 u$ m* I2 }; J) y/ UStatic$ u% i+ ~1 y* G T1 ^& c. {7 W F' M% R1 `8 j3 V/ ]7 QNo 0 I/ @- b2 } q4 s 2 b$ [5 M- Q8 z6 @9 M' ~: E0 U, V% D: |3 x2 C: w2 A, S F1 p ( U- C. ~7 t3 ]! G) x3 u" r: @) m2 b; t* X 5 c) y4 R, }$ A4 C# ]" g6 ~ 00:00:a2:f7:c3:e4 * b; R. E2 e' L! ]. l : E/ O& Y" g% g) P! Q25* e; w$ D3 X$ F) t3 z# G _- g z& p! A5 O, r Dynamic : I9 z7 M; l2 c$ ]; d. Z6 L* u' }" q4 k7 t3 e1 _# S No - X" z, {+ A6 ~/ A$ Z0 [1 J6 G0 q8 L& i8 r0 u# y 0 s# L) K1 I H9 u5 V1 T' |1 O, @ L8 w6 U$ A+ v 49 g1 S) L8 n2 ?! ]# a* z " Z% Y! i- F6 d8 `3 j+ H 00:00:21:34:63:56 . E& F' m% g7 F J/ t$ X8 P, I " G& _9 ~% q. Y3 k! V2 " y% X3 A; }& C& ]; v% {* _3 l% I' R3 O$ r J Dynamic ! `1 G/ d9 \: N- u2 v1 ?" H 3 q+ c( Y/ K2 ^% ~# ~No3 Y1 Z9 Y7 c' z/ N" z " _% |& G2 v+ C* q: k : Z2 T/ t$ B& B9 K * b3 A T6 f8 J- a I9 y : l2 U% Y$ m+ }" k+ J8 H! S* Z 2 L. ~% j3 Y- f3 I# `& o4 W4 e以下略。 . d+ \8 v, M' ?9 }% p3 i0 ? , }2 B+ L# F2 u9 s/ {  此时你可以看到索引的第4项,它正是我们要查找的MAC地址,它的端口号为2。根据综合布线资料,可以查找出相应的信息点的物理位置,从而定位到所连接的微机位置。当然,在此是针对特有的交换机所举的例子,在实际工作中我们要查找很多台交换机,才能找到我们要找的MAC地址,当VLAN中存在大量的交换机时,我们需要在这些交换机中逐个去查找,直到找到为止,这是一个相当烦琐的事情。 + u L% L& c9 q3 A2 [ ~% T* e% F: h- H" ` & S/ ^, A# ]* n4 g) N( } : u3 U% w4 n1 ~( Y+ `  对于某一交换机的端口中存在下联交换机的情况,因为交换机支持多个MAC地址,会在上级的MAC表中有下级MAC的记载,所以首先查找上级交换机MAC表,确定较具体位置后再去查找下一级交换机,这样会大幅度地缩减查找范围。 7 M- u% B; u- B/ E : v2 V: ~% C8 a* z* l8 f4 X% P6 b' K h* d1 a: A - ?+ L2 L+ @ s   管理策略 * y. y4 s* D3 L( @5 G- {" G. \! @, v2 U3 P9 S7 W: `- u8 ] " {6 e2 g$ t. S2 ]" Y$ ] * R/ L& p' V2 ]6 q9 Z   对于局域网来讲此类IP地址冲突的问题会经常出现,用户规模越大,查找工作就越困难,所以网络管理员必须深思加以解决。目前有两种方案,一是使用动态IP地址分配(DHCP),另一种方案是使用静态地址分配,但必须加强MAC地址的管理。 ) l- G5 x. P1 I/ x$ M1 o6 c% }& B3 G) l( r " H7 |9 s; L) \- x5 s# m" Y9 b2 |2 [9 A" w3 e' W# h0 C( L) K   用动态IP地址分配(DHCP)的最大优点是客户端网络的配置非常简单,在没有管理员的帮助和干预的情况下,用户自己便可以对网络进行连接设置。但是,因为IP地址是动态分配的,网管员不能从IP地址上鉴定客户的身份,相应的IP层管理将失去作用。而且使用动态IP地址分配需要设置额外DHCP服务器。 . a S' Y6 C0 } 6 w T7 o" [# R. V ' _: e2 ~, O* j4 v' _- F4 h S$ M9 F* ?: o& C7 N   使用静态IP地址分配可以对各部门进行合理的IP地址规划,能够在第三层上方便地跟踪管理,如果我们通过加强对MAC地址的管理,同样也会有效地解决这一问题。 & {; I4 k( h) z * T/ b0 o. W7 X& Z" l, U* B3 i, K) P' l1 Y. J * h' P. q! s9 G+ s! z( _- T( O+ ]( @   在网络用户连网的同时,建立IP地址和MAC地址的信息档案,自始至终地对局域网客户执行严格的管理、登记制度,将每个用户的IP地址、MAC地址、上联端口、物理位置和用户身份等信息记录在网络管理员的数据库中。试想,在我们上述的案例中,如果知道了非法用户的MAC地址后,我们可以从管理员数据库中进行查寻,如果我们对MAC地址记录全面,我们便可以立即找到具体的使用人的信息,这会节省我们大量宝贵时间,避免大海捞针的烦恼。同时我们对于某些应用应避免使用IP地址来进行权限限制,如果我们从MAC地址上进行限制相对来说要安全的多,这样可以有效地防止有人窃取IP地址的侥幸行为。5 I6 A$ Z4 g B, {* q" S

; p( C8 U% ?+ Z: ?

编者:这篇文章发表后,关于文章中的内容, 讨论的很是热烈, 有兴趣的朋友可以去http://hackbase.org/bbs/viewthread.php?tid=38464参加讨论 % s9 ]2 M1 F% r4 K- N学习, 交流, 进步才是最重要的!






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5