网管基本功:企业中IP地址的规划
作者:bigh 出处:天极网
网管基本功:企业中IP地址的规划
随着这些年网络的发展,越来越多的企业都组建了内部局域网,来实现自动化无纸办公等高效率、低成本的运营和管理。很多新成立的中小企业以及一些以前没有组网的老企业,现在也都纷纷组建企业局域网,企业中“无网不利”已经成为大势所趋。但是这些企业由于原来并没有网络管理和规划的经验,很多新上任的网管对 IP地址的规划管理不够重视,以至于在以后需要扩展网络或增加服务时造成很多不便,而且随着时间的推移,没有结构化的编制对日常的维护管理也会逐渐增加难度。所以,本文将对IP地址的分配和管理等方面做一个介绍,让我们先来看看地址分配的几个基本规则。
规则一:体系化编址
体系化其实就是结构化、组织化,根据企业的具体需求和组织结构为原则对整个网络地址进行有条理的规划。一般这个规划的过程是由大局、整体着眼,然后逐级由大到小分割、划分的。这其实跟实际的物理地址分配原则是一样的,肯定是先划分省市、再细分割出县区、再细分出道路、再来是街巷,最后是门牌。从网络总体来说,体系化编制由于相邻或者具有相同服务性质的主机或办公群落都在IP地址上也是连续的,这样在各个区块的边界路由设备上便于进行有效的路由汇总,使整个网络的结构清晰,路由信息明确,也能减小路由器中的路由表。而每个区域的地址与其他的区域地址相对独立,也便于独立的灵活管理。
注:将多条子路由条目汇总成一条都包含其内的总路由条目,这就是路由汇总或叫路由归纳。路由器在检查计算路由时是比较消耗资源的,路由条目越多,路由表越长,则这个过程耗时越多,所以通过路由汇总减少路由表的长度,对提高路由器工作效率是很有帮助的。能不能进行有效的路由汇总、汇总的效率如何,都跟网络结构中IP地址网段的分布有密切关系。IP地址的部署越连续而有条理,则路由汇总越容易也越有效,所以我们在部署网络时应该重视体系化编址。在子网环境中,当网络地址是以2的指数形式的连续区块时,路由归纳是最有效的。
规则二:可持续扩展性
其实就是在初期规划时为将来的网络拓展考虑,眼光要放得长远一些,在将来很可能增大规模的区块中要留出较大的余地。IP地址最开始是按有类划分的,A、B、C各类标准网段都只能严格按照规定使用地址。但现在发展到了无类阶段,由于可以自由规划子网的大小和实际的主机数,所以使得地址资源分配的更加合理,无形中就增大了网络的可拓展性。虽然在网络初期的一段可能很长的时间里,未合理考虑余量的IP地址规划也能满足需要,但是当一个局部区域出现高增长,或者整体的网络规模不断增大,这时不合理的规划很可能必须重新部署局部甚至整体的IP地址,这在一个中、大型网络中就绝不是一个轻松的工作了。
在这里让我们对IP地址、掩码、子网等概念做个简述,以便于理解无类地址划分的意义。
IPv4-网际协议版本4(Internet Protocol Version 4)是现行的IP协议。其地址通常用以圆点分隔号的4个十进制数字表示,每一个数字对应于8个二进制的比特串,称为一个位组(octets)。如某一台主机的IP地址为:128.10.2.1写成二进制则为10000000.00001010.00000010.00000001。
网络地址分为5类:
1.A类地址:4个8位位组(octets)中第一个octet代表网络号,剩下的3个代表主机位.范围是0xxxxxxx,即0到127。
2.B类地址: 前2个octets代表网络号,剩下的2个代表主机位. 范围是10xxxxxx,即128到191。
3.C类地址: 前3个octets代表网络号,剩下的1个代表主机位. 范围是110xxxxx,即192到223。
4.D类地址:多播地址,范围是224到239。
5.E类地址:保留地址,实验用,范围是240到255。
一些特殊的IP地址:
1.IP地址127.0.0.1:本地回环(loopback)测试地址
2.广播地址:255.255.255.255
3.IP地址0.0.0.0:代表任何网络
4.网络号全为0:代表本网络或本网段
5.网络号全为1:代表所有的网络
6.主机位全为0:代表某个网段的任何主机地址
7.主机位全为1:代表该网段的所有主机
私有IP地址(private IP address):为了节约IP地址空间,并增加了安全性,保留了一些IP地址段作为私网IP,不会在公网上出现。处于私有IP地址的网络称为内网或私网,与外部进行通信就必须通过网络地址翻译(NAT)。
一些私有地址的范围:
1.A类地址中:10.0.0.0到10.255.255.255.255
2.B类地址中:172.16.0.0到172.31.255.255
3.C类地址中:192.168.0.0到192.168.255.255
无类IP地址:首先要了解Subnet Masks(子网掩码),它用于辨别IP地址中哪部分为网络地址,哪部分为主机地址,由1和0组成,长32位,全为1的位代表网络号。不是所有的网络都需要子网,因此就引入1个概念:默认子网掩码(default subnet mask).A类IP地址的默认子网掩码为255.0.0.0(由于255相当于二进制的8位1,所以也缩写成“/8”,表示网络号占了8位);B类的为 255.255.0.0(/16);C类的为255.255.255.0(/24)。
而无类的IP子网不使用默认子网掩码,而是可以自由划分网络位和主机位,完全打破了A、B、C这样的固定类别划分。如这样的地址: 192.168.10.32/28,它的掩码是255.255.255.240,最后一位组是11110000,也就是只剩后4位为主机位,前面28位为网络位,由于192.x.x.x属于C类地址,默认24位掩码,也就说这里多用了4位作为网络位。使用这样子网掩码可以得到“2的x次方-2(x代表多占的掩码位,这里是4)”=14个子网,这里减掉的2个为全0和全1的网段,每个子网包含“2的y次方-2(y代表主机位,这里也是4)”=14台主机,这里减掉的2个是主机位全0和全1的地址。这样本来的一个C类子网被划分成了14个可用小子网(在某些情况下,初始的全0网段也是可用的,在Cisco路由器中使用IP SUBNET-ZERO命令之后,你就能使用全0网段,这样可以得到15个可用子网)。可以看到,当需要的每个子网中主机数比较少时,可以用这种办法节约 IP资源,得到更多的子网。在实际使用中
,如你给一个点对点的连接中两端的设备分配IP地址,如果你严格按照有类别的子网划分去分配地址,那么你只能分一个C类子网给它,一个C类网包含254(即2的8次方-2)个可用地址,而你只使用2个,那么将浪费252个可用地址。这时如果使用/30的掩码,则一个子网只包含2(即2的2次方-2)个有效地址,这样划分出来的其他子网地址还可利用。
超网(supernetting) :超网是与子网类似的概念(也可以说是相对的概念),IP地址根据子网掩码被分为独立的网络地址和主机地址。但是,与子网把大网络分成若干小网络相反,它是把一些小网络组合成一个大网络--超网。可以说超网是一个地址聚合的概念,它和路由汇总有紧密的关系。关于路由汇总和超网的计算方法这里简略说明一下。如,一路由器的路由表中有如下几个条目:
目的IP地址 掩码 下一跳(或网关)
192.168.0.0 255.255.255.0 10.1.1.2
192.168.1.0 255.255.255.0 10.1.1.2
192.168.2.0 255.255.255.0 10.1.1.4
其中前两条下一跳地址相同,可以想象这两个子网是挂在一个路由器下面的,那么这两条路由可以汇总为:目的IP地址192.168.0.0,掩码 255.255.254.0,下一跳10.1.1.2这样的一条路由。为什么不能写成192.168.0.0 255.255.0.0 10.1.1.2呢?因为这样的汇总不精确,它包含了那个路由器下实际上并不存在的一些子网(192.168.2.0~192.168.255.0),其中最明显的就是路由表中192.168.2.0这个子网就是在10.1.1.4下面,那么路由就会出错了。那么路由汇总中的掩码是怎么算的呢?
我们都知道IPv4的地址是由4段8位的二进制数组成,一部分是网络位,一部分是主机位。其对应的子网掩码网络位部分就是全1的二进制数,而主机位就是全0的二进制数。每个信息包在过路由器时会检查其目的IP,和路由表中路由条目的子网掩码做“与”运算,并与路由条目中目的IP进行比对,相同的就按照这条路由规则转发,不相同的就再检查比对下一条。可以看出我们做的汇总路由的操作,就是将多条路由条目中目的IP相同的网络位提取出来写成一条。如上面路由表中的第一条:目的IP为192.168.0.0;第二条:目的IP为192.168.1.0。我们只提取了前面的两段192.168,而后面的第三段网络位中还是有相同的部分的。192.168.0.0中第三段写成二进制数为00000000(8位0),182.168.1.0中第三段写成二进制数为00000001(7位0,1位1),那么它们的前7位是相同的,在对应的子网掩码位置上就应该是11111110(7位1,1位0),合成十进制为254。所以这条汇总路由应该写成:目的IP为192.168.0.0,子网掩码255.255.254.0,下一跳10.1.1.2。这样,这条汇总路由只包含192.168.0.0和192.168.1.0两个子网,是一条精确的汇总路由。这时发送到192.168.2.0网段的信息包,其第三段网络位写成二进制为00000010(前6位0),就不包含在这条精确的汇总路由内了。
规则三:按需分配公网IP
相对于私有IP而言,公网IP是不能由自己完全做主要求的,而是ISP等机构统一分配和租用的。这就造成了公网IP要稀缺的多,所以对公网IP 必须按实际需求来分配。如:对外提供服务的服务器群组区域,不仅要够用,还得预留出余量;而员工部门等仅需要浏览Internet等基本需求的区域,可以通过NAT(网络地址转换)来多个节点共享一个或几个公网IP;最后,那些只对内部提供服务,或只限于内部通讯的主机自然不用分配公网IP了。公网IP具体的分配,必须根据实际的需求,进行合理的规划。
注:NAT(Network Address Translation)是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术。内部网络用户连接互联网时,NAT将用户的内部私有IP地址转换成一个外部公网IP地址;反之,数据从外部返回时,NAT反向将目标地址替换成初始的内部用户的地址。其中的过程基于地址端口的一张记录表,使返回的地址端口信息和发出的信息能对照起来。现在市面上的宽带路由共享设备就是基于这个技术来使局域网多台PC共享一个公网IP的。并且由于NAT隐藏了内部 IP地址,所以构成了一个天然的防火墙,使得外网用户无法直接看到内网主机。正是由于这个原因,使得一些主机上的对外服务不能被外网用户直接访问到,由此出现了端口映射的概念。这时必须通过端口映射将其内网主机对外服务端口映射到公网IP上,这样外网用户再访问你的公网IP服务端口时,路由器才会自动将访问转移到映射的主机上。
另外,由于现在的IPv4网络正在向IPv6过渡,将来很可能出现一段很长的IPv4和IPv6共存的时期,所以现在构建网络时应尽量考虑到对IPv6的兼容性,选择能支持IPv6的设备和系统,以降低升级过渡时的成本。
静态和动态分配地址的选择
在何种环境下使用静态或动态分配IP,这个问题需要从这两类分配机制的优缺点谈起。
第一,动态分配地址由于地址是由DHCP服务器分配的,便于集中化统一管理,并且每一个新接入的主机都能够通过非常简单的操作就可以正确获得 IP地址、子网掩码、缺省网关、DNS等参数,在管理的工作量上比静态地址要减少很多,而且越大的网络越明显。而静态分配就正好相反,需要先指定好那些主机要用到那些IP,绝对不能重复了,然后再去客户主机上挨个设置必要的网络参数,并且当主机区域迁移时,还要记录释放IP,并重分配新的区域IP和配置网络参数。这需要一张详细记录IP地址资源使用情况的表格,并且要根据变动实时更新,否则很容易出现IP冲突等问题,可以想见这在一个大规模的网络中工作量是多么可怕。但是在一些特定的区块,如服务器群区域,每台服务器都有一个固定的IP地址这在绝大多数情况下都是必须的。当然,也可以使用DHCP的地址绑定功能或者动态域名系统来实现类似的效果。
第二,动态分配IP,可以做到按需分配地址,当一个IP地址不被主机使用时,能释放出来供别的新接入主机使用,这样可以在一定程度上高效利用好IP资源。DHCP的地址池只要能满足同时使用的IP峰值即可。静态分配必须考虑更大的使用余量,很多临时不接入网络的主机并不会释放掉IP,而且由于是临时性的断开和接入,手动去释放和添加IP等参数明显是受累不讨好的工作,所以这时必须考虑使用更大的IP地址段,确保有足够的IP资源。
第三,动态分配要求网络中必须有一台或几台稳定且高效的DHCP服务器,因为当IP管理和分配集中的同时,故障点也相应集中起来了,只要网络中的DHCP服务器出现故障,整个网络都有可能瘫痪,所以在很多网络中DHCP服务器不止一台,而是另有一台或一组热备份的DHCP服务器,在平时还可以分担地址分配的工作量。另外,客户机在与DHCP服务器通信时,如:地址申请、续约和释放等,都会产生一定的网络流量,虽然不大,但是还是要考虑到的。而静态分配就没有上面的这两个缺点,而且静态地址还有一个最吸引人的优点,就是比动态分配更加容易定位故障点。在大多数情况下,企业网管在使用静态地址分配时,都会有一张IP地址资源使用表,所有的主机和特定IP都会一一对应起来,出现了故障或者对某些主机进行控制管理时都比动态地址分配的要简单的多了。
注:做DHCP服务器冗余时要注意,为了防止多台DHCP服务器为不同的客户机分配同一个IP地址,应该将该子网的IP段分割成几个部分,然后分别分配到各个DHCP服务器的作用域中,多台DHCP服务器的地址池不能有重叠。另外,还得保证即使只有单台DHCP工作时,所提供的IP地址也足够网络中客户机的需要。也就是说每个分割开的地址池都要比实际需求的地址量要大,这样才能保证最大的冗余性。
到底何种情况使用动态分配,何种使用静态呢?肯定要按实际的网络结构和需求来考虑,其中最重要的一个决定因素应该是网络规模的大小,这是直接决定网管员工作量的因素。所以简单的说,大型企业和远程访问的网络适合动态地址分配,而小企业网络和那些对外提供服务的主机适合用静态地址分配。
看了前面的叙述,读者可能觉得很枯燥,下面我们举个简单的例子来说明企业中大致哪些区域需要部署哪些IP资源,这样会容易理解一些。
示意图中以职能共划分为3个区域:对外公共服务器群组、内部服务器群组和内网客户端区域。这个示意图虽然简单,但是代表了大多数企业的网络基本构架。其中内网客户端区域部署私有IP地址,然后根据其数量和组织规模等因素来选择网段,并决定是否使用DHCP动态IP分配。其中,需要访问 Internet的客户端可以通过NAT技术实现,一般在企业防火墙后面另配置一个NAT设备(可能是代理服务器或路由器等),在其上配置一个NAT池放置适当的公网IP以供内网机访问Internet的需要。还可在其上或其连接的下层3层交换机、路由器等设备上做ACL(访问控制列表),以限制内网机访问Internet的权限。内网服务器区域由于只对内网用户提供服务,所以不需要公网IP也不需要过NAT,而且因其职能应该部署固定的私有IP。其中如果由于整体网络规模较大,内网服务器区与客户端区之间隔着路由器,那当使用DHCP服务器时,还要注意DHCP的过程使用了广播包,而路由器隔绝广播,这时需要在路由器上配置DHCP中继代理(在Cisco路由器需要的端口上使用ip-help address
即可打开中继代理)。这样对于客户端来说,得到IP地址的过程和访问本地DHCP没有什么区别,也就是说DHCP中继代理对客户端而言是透明的。最后的DMZ区域放置着对外提供服务的服务器群组,这部分自然是部署固定的公网IP。当然,可能由于使用服务器集群等冗余和负载均衡措施,会使IP地址的分配策略稍有不同。一个典型的企业网络结构中,IP地址资源的分配和部署便大致如此了,细节部分肯定会因实际情况而不同,但是大的方向是不会有什么变化的。
总结:初期的IP地址规划和分配在整个网络的维护和扩展的难易度中,占了举足轻重的地位,会直接影响到后期维护、升级、运作的效率。所以请各位网管和网络规划人员千万不能等闲视之。