|
|
|
基于IP协议的因特网,目前已经发展成为当今世界上规模最大、拥有用户最多、资源最广泛的通信网络。IP协议也因此成为事实上的业界标准,以IP协议为基础的网络已经成为通信网络的主流。 9 f* U) w# E! l* v0 ~
本文将结合笔者的实践经验和思科网络技术学院CCNA课程的教学经验,就IP协议关于 : W4 q; d$ f6 l9 J( a i# G7 v, t k
IP地址这部分内容,进行简要的阐述。 2 J) h$ u1 @3 L0 `4 _8 Z; n
一、为什么要使用IP地址?
, a6 K4 R: ^* r2 b& f9 Q 一个IP地址是用来标识网络中的一个通信实体,比如一台主机,或者是路由器的某一个端口。而在基于IP协议网络中传输的数据包,也都必须使用IP地址来进行标识,如同我们写一封信,要标明收信人的通信地址和发信人的地址,而邮政工作人员则通过该地址来决定邮件的去向。
8 w6 {5 G9 c' i0 ^% W- J/ I 同样的过程也发生在计算机网络里,每个被传输的数据包也要包括的一个源IP地址和一个目的IP地址,当该数据包在网络中进行传输时,这两个地址要保持不变,以确保网络设备总是能根据确定的IP地址,将数据包从源通信实体送往指定的目的通信实体。
: Z( @* z# h; r; o( p2 a 目前,IP地址使用32位二进制地址格式,为方便记忆,通常使用以点号划分的十进制来表示,如:202.112.14.1。 # H% r1 b+ Q2 j' [ \, O
一个IP地址主要由两部分组成:一部分是用于标识该地址所从属的网络号;另一部分用于指明该网络上某个特定主机的主机号。
" L9 r* }3 h& B. [( O. i+ F1 K0 A 为了给不同规模的网络提供必要的灵活性,IP地址的设计者将IP地址空间划分为五个不同的地址类别,如下表所示,其中A,B,C三类最为常用:
3 V i" q9 ]( i3 HA类 0-127 0 8位 24位 * v7 V* v& L6 d; T7 o2 u' t
B类 128-191 10 16位 16位 5 H. y( s3 D" Y( I# b8 x
C类 192-223 110 24位 8位 2 z5 s$ _: J: `+ C4 Y
D类 224-239 1110 组播地址 * T2 K1 \* G2 U7 D. I
E类 240-255 1111 保留试验使用 6 ~) p, y# u( F6 o9 W
网络号由因特网权力机构分配,目的是为了保证网络地址的全球唯一性。主机地址由各个网络的管理员统一分配。因此,网络地址的唯一性与网络内主机地址的唯一性确保了IP地址的全球唯一性。 & B9 F. a4 m; V4 J7 u4 N
二、划分子网
2 S% ]/ z2 [% }- t6 I3 }# Z; O 为了提高IP地址的使用效率,可将一个网络划分为子网:采用借位的方式,从主机位最高位开始借位变为新的子网位,所剩余的部分则仍为主机位。这使得IP地址的结构分为三部分:网络位、子网位和主机位。% u/ B5 M% j! V4 }" H/ E
( ?5 F9 e0 o. X q0 Z 引入子网概念后,网络位加上子网位才能全局唯一地标识一个网络。把所有的网络位用1来标识,主机位用0来标识,就得到了子网掩码。如下图所示的子网掩码转换为十进制之后为:255.255.255.224 , q$ n6 U) g! t
3 U- d: c$ {5 \' l- w; S7 \' M$ }
3 ], P3 _. a) ?. H0 E6 u
子网编址使得IP地址具有一定的内部层次结构,这种层次结构便于IP地址分配和管理。
' k: W% X/ R+ \( r' Q1 Z( F 它的使用关键在于选择合适的层次结构--如何既能适应各种现实的物理网络规模,又能充分地利用IP地址空间(即:从何处分隔子网号和主机号)。 8 }/ j8 z; D+ e# b% n$ \- Y
+ Y4 Q! P; [( H6 Y3 b: d4 B
小窍门--子网的计算
0 m: M# R' f [5 {4 A' a$ P% S1 C( t 在思科网络技术学院CCNA教学和考试当中,不少同学在进行IP地址规划时总是很头疼子网和掩码的计算。现在给大家一个小窍门,可以顺利的解决这个问题。/ g/ A# j6 v+ ?$ g3 m% [4 q
首先,我们看一个CCNA考试中常见的题型:一个主机的IP地址是202.112.14.137,掩码是255.255.255.224,要求计算这个主机所在网络的网络地址和广播地址。
; I! h9 }0 X8 w8 U& p: T* p$ V 常规办法是把这个主机地址和子网掩码都换算成二进制数,两者进行逻辑与运算后即可得到网络地址。其实大家只要仔细想想,可以得到另一个方法:255.255.255.224的掩码所容纳的IP地址有256-224=32个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是32的倍数。而网络地址是子网IP地址的开始,广播地址是结束,可使用的主机地址在这个范围内,因此略小于137而又是32的倍数的只有128,所以得出网络地址是202.112.14.128。而广播地址就是下一个网络的网络地址减1。而下一个32的倍数是160,因此可以得到广播地址为202.112.14.159。可参照下图来理解本例:
0 f, c9 Z( v7 s/ K0 f6 H0 \' l( v+ V! O
CCNA考试中,还有一种题型,要你根据每个网络的主机数量进行子网地址的规划和计算子网掩码。这也可按上述原则进行计算。比如一个子网有10台主机,那么对于这个子网就需要10+1+1+1=13个IP地址。(注意加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和广播地址。)13小于16(16等于2的4次方),所以主机位为4位。而256-16=240,所以该子网掩码为255.255.255.240。
- ^* m/ G+ N( v- \ 如果一个子网有14台主机,不少同学常犯的错误是:依然分配具有16个地址空间的子网,而忘记了给网关分配地址。这样就错误了,因为14+1+1+1=17 ,大于16,所以我们只能分配具有32个地址(32等于2的5次方)空间的子网。这时子网掩码为:255.255.255.224。 . q5 q7 Q- `" y" |' m- K
三、 IP 地址的局限性 ) ?1 {; L8 M' I# G2 ]+ R
最初的因特网设计者没有预想到网络会有如此快速地发展,因此现在网络面临的问题都可以追溯到因特网发展的早期决策上,IP地址的分配更能体现这点。 0 ?# g/ ?6 C+ a" |5 v+ }
目前使用的IPv4地址使用32位的地址,即在IPv4的地址空间中有232(4,294,967,296,约为43亿)个地址可用。这样的地址空间在因特网早期看来几乎是无限的,于是便将IP地址根据申请而按类别分配给某个组织或公司,而很少考虑是否真的需要这么多个地址空间,没有考虑到IPv4地址空间最终会被用尽。
# Q, @$ x {, y6 J' P: Q因此,IPv4地址是按照网络的大小(所使用的IP地址数)来分类的,它的编址方案使用"类"的概念。A、B、C三类IP地址的定义很容易理解,也很容易划分,但是在实际网络规划中,它们并不利于有效地分配有限的地址空间。对于A、B类地址,很少有这么大规模的公司能够使用,而C类地址所容纳的主机数又相对太少。所以有类别的IP地址并不利于有效地分配有限的地址空间,不适用于网络规划。 9 v! T0 S/ z: l9 |- U, q
在这种情况下,人们开始致力于下一代因特网协议--IPv6的研究。由于现在IPv6的协议并不完善和成熟,需要长期的试验验证,因此,IPv4到IPv6的完全过渡将是一个比较长的过程,在过渡期间我们仍然需要在IPv4上实现网络间的互连。而在90年代初期引入了变长子网掩码(VLSM)和无类域间路由(CIDR)等机制,作为目前过渡时期提高IPv4地址空间使用效率的短期解决方案起到了很大的作用。 |
|