随着网络应用的日益广泛,接入网络和边缘网络的需求也更加复杂多样,企业为了开展电子商务,必须实现与Internet的互联,路由器是实现这一互联的要害设备。路由器可以为企业提供越来越多的智能化服务,包括安全性、可用性和服务质量(QoS)等。
下面结合实践经验,讨论Cisco 路由器的路由选择协议与VLSM子网设计。
一、路由选择协议的分类
---- 一般路由器支持多种路由选择协议,例如静态路由、Rip、IGRP、RIPv2、EIGRP、OSPF和BGP等等。这些路由选择协议可分为有类路由选择协议和无类路由选择协议。
---- 1.有类路由选择协议
---- 一般把路由信息协议(RIP)和内部网关路由选择协议(IGRP)等称为有类路由协议。在有类路由选择协议中,只在路由器之间传送路由和它的度量值,对每个转发报文,路由器从报文中取出目的地址,各路由器通过下面2种方法判定目的地网络掩码。
---- (1)假如有一个接口连到目的地网络,则使用此接口的网络掩码。隶属网络的所有子网的大小必须相同。
---- (2)否则,使用对应目的地址类的网络掩码。A类网络使用8位掩码,B类网络使用16位掩码,C类网络使用24位掩码。
---- 根据设置掩码的规则,除去目的地址中的“局部操纵”位,在路由选择表中查寻产生的网络地址,转发报文。因为路由选择基于IP地址类(有A类、B类、C类和D类等4类)或与之相连的网络接口来决定远端网络使用的掩码,从而决定目的地的网络地址,故此类路由选择协议被称为有类路由选择协议。
---- 2.无类路由选择协议
---- RIPv2、EIGRP、OSPF和BGP等是一些比较新的路由选择协议,它们在路由更新过程中,将网络掩码与路径一起广播出去,这时网络掩码也称为前缀屏蔽或前缀。例如,假如C类IP地址192.168.1.0的网络掩码为255.255.255.0,可标识为192.168.1.0/24。由于在路由器之间传送掩码(前缀),因而没有必要判定地址类型和缺省掩码,这就是无类地址及无类路由选择,也是目前Internet上所基于的路由选择协议。
---- 在无类路由中,IP地址之间不再有类型差别,如A类地址、B类地址或C类地址等之分,所有地址都由前缀来决定用于网络标识的位数,IP地址不再归属于某一个类,取而代之的是将它们看作一个地址和掩码对。通过使用无类路由,用户可以更充分地利用已有的IP地址空间,从而避免浪费宝贵的IP地址资源。另外,新的IP编址标准IPv6也使用无类路由协议,通过使用无类路由,有助于向下一代IP协议过渡。更为重要的是,通过使用无类路由协议,用户在子网化时非常方便,尤其是可以使用可变长子网掩码(VLSM)进行子网化。
二、为什么需要子网化?
---- 子网化是企业用户在网络设计中经常使用的方法,它将分配给网卡的单一网络地址划分为几个网段,以满足用户的需要。但是,在子网化过程中,有时只使用一种子网掩码可能不能满足用户的需要。例如,用户分配到一个C 类地址,并需要将它划分为几个网段,而某一个网段地址又需要划分为更小的几个网段,这时用户需要通过使用不同的子网掩码(前缀)来实现。这样,在一个网络中可能会使用不止一个掩码(前缀),因此路由选择协议必须在每个路由器之间传递掩码,只有选择合适的路由选择协议才能实现子网之间的通信,这就是VLSM子网设计问题,需要使用支持VLSM的路由协议,它是一种无类路由选择协议。
---- VLSM子网设计比较轻易。首先使用某一掩码产生所需要的最大的子网,然后,从这些最大的子网中抽出一个,再用一个更长的掩码对它子网化。
三、子网化的实现
---- 下面以某公司为例,讨论VLSM子网化的方法。假设该公司被分配了一个C类地址,该公司的网络拓扑结构见图1。为方便起见,这里用保留地址192.168.1.0作为例子进行说明。
从图1可以看到,由于总公司、分公司分布于4处,总公司、分公司及各部门所拥有的主机数各不相同,因此需要对192.168.1.0进行子网化。因该公司部门1和部门3均有20台主机,因此,产生的较大的子网集中必须有两个以上这样的子网,每个都至少有20个主机地址,由于C类地址192.168.1.0的掩码是24位长,具体掩码如下:
---- 255.255.255.0=1111 1111.1111 1111.1111 1111.0000 0000
---- 将掩码扩展一位(共25位),使用第25位作为子网标志,这样可寻址2个子网(0和1)。可是,地址全0的子网是被保留的(这和分配网络号一样),地址全1的子网也是被保留的(用作全子网的广播),这样就没有可用的剩余子网了。将掩码扩展2位(共26位),可以产生4个子网(00,01,10,11)。因为地址全0、全1的子网被保留,于是还剩下2个可用的子网,用于表示主机的部分为最右边8位中剩下的6位,6位可表示64个独立的主机地址,其中全0的地址被保留标志子网本身,全1的地址被保留用作广播,这样还剩62个可用的地址,由于该公司最大的子网有20台主机,若用这样的子网会浪费地址,因此可再将掩码向右扩展1位(共27位),这样可得到8个子网(000,001,010,011,100,101,110,111),其中6个子网是可用的(因为地址全0、全1的子网被保留),在最右边8位中还剩5位用于主机分配,5位可表示32个独立的主机地址,其中全0的地址被保留标志子网本身,全1的地址被保留用作广播,还剩下30个可用的地址。
假如再将掩码向右扩展一位(共28位)时,可知每个子网中只有14个地址,不能满足实际需要(必须有2个子网均支持20个以上主机地址),至此,最终将192.168.1.0子网化使用的子网掩码是255.255.255.224,或192.168.1.0/27,即使用27位子网掩码,得到能用的子网设为子网A、子网B、子网C、子网D、子网E和子网F,参见下面的图2。
我们将子网A、子网B分配给部门1和部门3(每个子网中可用主机地址为30个),另外根据实际情况: 总公司部门2、分公司部门4、分公司1和分公司3各有10余台主机,因此,对子网D和子网E再进行子网化,用28位子网掩码255.255.255.240(或192.168.1.128/28和192.168.1.160/28,即28位掩码),得到子网192.168.1.128/28、192.168.1.144/28、192.168.1.160/28和192.168.1.176/28,分别分配给总公司部门2、分公司部门4、分公司1和分公司3,每个子网可用主机数为14个。
---- 这样,我们会剩余3个子网(否则,这些子网均得用上)。将子网C和子网E留作公司以后发展时使用。将子网F进一步细分,用于总公司与各公司之间的广域网链路上。由于点到点的广域网链路需要的地址很少,只要2个地址用在每一条链路的两端上的每个路由器上,对子网F进一步子网化,使它能工作在广域网链路上,取30位子网掩码255.255.255.252或192.168.1.192/30,得到子网如下:
---- 192.168.1.192/30
---- 192.168.1.196/30
---- 192.168.1.200/30
---- 192.168.1.204/30
---- 192.168.1.208/30
---- 192.168.1.212/30
---- 192.168.1.216/30
---- 192.168.1.220/30
---- 从中取192.168.1.192/30、192.168.1.196/30和192.168.1.200/30 这 3个子网,每个子网中可用的主机地址有两个(实际上每个子网中有4个主机地址,它包括子网ID、广播地址以及2个可分配的地址),分别用于总公司到各个分公司的广域网链路上(例如: 192.168.1.193和192.168.1.194用于总公司和分公司1之间的广域网链路上,192.168.1.197和192.168.1.198用于总公司到分公司2之间的广域网链路上,192.168.1.201和192.168.1.202用于总公司到分公司3之间的广域网链路上),剩余的子网留作以后公司网络扩展时使用。
---- 经过以上VLSM设计,在这个网络中共使用了3种掩码255.255.255.224(27位)、255.255.255.240(28位)和255.255.255.252(30位)来满足网络需要。重要的是网络中使用的路由选择协议必须是无类路由协议。
---- 本文中只是针对Cisco路由器上使用的路由选择协议,讨论了有类路由选择协议、无类路由选择协议的寻址方法,有类地址、无类地址之间的关系,探讨了用VLSM子网设计方法更充分地利用已有的IP地址空间,避免出现浪费IP地址的问题。尽管IPv6已被确定为新的IP编址标准,但是在这个标准被广为接收和实现之前,还要继续使用IPv4。另外,在使用无类路由后,子网0也成了一个合法的子网,子网号0是答应的,但必须使用命令
---- ip subnet-zero
---- 来明确指示。去往0号子网的路由都有各自的掩码,该掩码与其他网络路由所使用的掩码是不同的,这样做是为了使得当网中存在0号子网时,路由器仍能进行正确的路由选择。