5.2.2.2 路由汇总策略
之前提到过,在网络管理员计划好子网选择并进行预期地路由汇总时,手动路由汇总工作能取得最佳效果。例如,之前的例子设定好了一个考虑周全的计划,管理员只使用远离Yosemite路由器并以10.2开头的子网。这个规定允许为所有地址以10.2开头的子网建立一条汇总路由,Yosemite通告该路由,描述为子网10.2.0.0,掩码255.255.0.0 。
虽然一些路由经过汇总能成为一条路由,但不一定就是“最佳”的汇总路由。当使用选择的汇总路由来配置时,“最佳”的意思是指,汇总不仅应该包含问题指定的全部子网,还要更可能少地包含其他地址。例如,在上面的例子中,Yosemite汇总4个子网(10.2.1.0、10.2.2.0、10.2.3.0和10.2.4.0,子网掩码全为255.255.255.0)到路由10.2.0.0/16。然而,该汇总路由包含了大量不在这4个子网中的IP 地址。路由汇总达到了网络设计的目标吗?当然是达到了。然而,定义的这条汇总路由包含了大量不在网络中的地址,而管理员想要配置最紧密、更简明、最概括的汇总路由,即汇总路由应包含所有子网和尽可能少的额外子网(这些子网还未分配)。本小节介绍用以找到这种简明的最佳汇总路由的策略。
以下列出了概括的双循环过程,用以为一组子网找到最佳汇总路由。
步骤1 用二进制列出所有需要汇总的子网号。
步骤2 从左向右观察子网号,找出子网号中相同的前N位。(目的是考虑相同的前半部分。)
步骤3 为了找到汇总路由器的子网号,应先写下步骤2 中相同的位,子网号的其余位用二进制的0补齐,然后将其转换为10进制,每8位一组,直至完成。
步骤4 为了找到汇总路由的子网掩码,写下N个二进制的1,N是步骤2中相同位的个数,掩码的其余位用二进制的0补齐,然后将其转换为10进制,每8位一组。
步骤5 通过计算新汇总路由暗含的可用IP地址范围,并比较汇总子网的范围,来检查你的设计。新的汇总路由应该包含汇总子网中所有的IP地址。
通过观察二进制的子网号,你能很容易地发现所有子网号中相同的位。通过使用最长个数的相同位,就可找到最佳汇总路由。下面用两个例子显示了使用这些步骤来寻找图5-1所示的最佳、更简明、最概括的路由的过程。
1.最好的汇总实例:Seville
Seville的子网有10.3.4.0、10.3.5.0、10.3.6.0和10.3.7.0,掩码均为255.255.255.0。首先用二进制记下全部子网号,如下所示。
步骤2要求你从全部子网号的开头处起,找到相同的位。甚至在观察子网号前,你就可能猜到这4个子网号的头两个字节是相同的。所以,快速浏览这4个子网号的前16位,确认是相同的,这就意味着相同的部分(步骤2)至少有16位。进一步观察,发现第3个字节中前6位也是相同的,但是第7位的值随着子网的不同而发生变化。所以这4个子网号的前22位是相同的。
步骤3使用子网号中相同的位,其余位用二进制的0补齐,就可为汇总路由创建一个子网号,如下所示。
步骤4将子网号中相同的位用二进制的1表示,即本例中的前22位,其余位用二进制的0表示,如下所示。
至此,最佳的汇总路由是10.3.4.0,掩码255.255.252.0。
步骤5介绍了一种检查方法。该汇总路由应当包含需汇总的路由中所有的IP地址。在此例中,汇总路由的地址范围从10.3.4.0开始。起始的有效地址为10.3.4.1,末尾的有效地址为10.3.7.254,广播地址为10.3.7.255。这样,该汇总路由包含了所汇总的4条路由中所有的IP地址,而不包含在这之外的IP地址。
2.最好的汇总实例:Yosemite
Yosemite的4个子网不能像Seville的子网那样进行有效的汇总。对Seville而言,汇总路由本身覆盖了4个子网的IP地址,但没有其他的地址。如你所见,Yosemite的最佳汇总路由包含的地址数量是原有的4个子网包含地址数量的两倍。
Yosemite的子网有10.2.1.0、10.2.2.0、10.2.3.0和10.2.4.0,掩码均为55.255.255.0。在步骤1中记下全部子网号,如下所示。
在步骤2,你可以发现4个子网号的前两个字节是相同的,再加上第3个字节的前5位,所以前21位是相同的。
步骤3使用子网号中相同的位,其余位用二进制的0补齐,就可为汇总路由创建一个子网号,如下所示。
步骤4将子网号中相同的位用二进制的1表示,即本例中的前21位,其余位用二进制的0表示,如下所示。
至此,最佳的汇总路由是10.2.0.0,掩码255.255.248.0。