3. 路由汇总
(1)路由汇总及汇总例外
①如果不进行路由汇总,则每个路由器要把所有的网段都加到路由表,这不但会造成路由表的臃肿,而且路由器每转发一个数据包都要检查路由表为该数据包选择转发接口,而庞大的路由表势必会增加处理时延。
②可以通过合并网段进行路由汇总,这样可以大大减少路由表条目。如上图,R2路由器通过192.168.0.0/16,就可以合并所有192.168.0.0/24、192.168.1.0/24……、192.168.255.0/24等这些所有以192.168开头的网段。
③当出现例外时,可以针对例外的网段单独添加一条路由(如R1路由器的172.16.10.0/24)。这样当路由器R1收到目标地址为172.16.10.2的数据包,会使用最长前缀匹配算法进行最精确的匹配,所以会优先选择第②条路由来转发。
(2)无类域间路由(CIDR)
①无类域间路由(CIDR)采用13~27位可变网络ID,而不是A、B、C类网络ID所采用的固定的8、16和24位。
②当子网掩码向左移动1位,合并两个网段;向左移动2位合并4个网段……,以此类推,向左移动n位,就可以合并2n个网段。(如上图的R1路由表中,子网掩码向左移动1位(255.255.255.254),就可以将右图的两个网段合并)
4. 默认路由
(1)全球最大的网段
①从路由汇总的规律看,子网掩码越短(子网掩码写成二进制形式1的个数越少),主机数越多,该网段的地址数量就越大。
②如果考虑子网掩码短到极限,即为0.0.0.0,这意味着该网段的32位二进制IP地址都是主机位,任何一个地址都是属该网段。即包括了全球所有的IPv4地址,也就是全球最大的网段。记为0.0.0.0/0,这也是默认路由。
③任何一个目标地址都与默认路由匹配,根据最长前缀匹配算法,可知默认路由是在路由器上没有为数据找到更为精确匹配的路由时最后匹配的一条路由。
(2)让默认路由代替大多数网段的路由(如指向Internet)
①末端网络(如B和D)直连两个网段,到其他网络都需要转发到路由器C,在这两个路由器上,只需要添加一条默认路由即可。
②对于路由器C来说,直连了三个网段。而对于到10.1.0.0/24、10.4.0.0/24两个网段的路由需要单独添加,到Internet或到10.6.0.0/24网段的数据包,都需要转发给路由器A(这些网段代表着大多数网段),因此添加一条默认路由即可。
③对于路由器C来说,直连的三个网段不必添加路由。对于到10.1.0.0/24、10.2.0.0/24、10.3.0.0/24、10.4.0.0/24四个网段可合并成一条10.0.0.0/8,而这些都要通过C路由器转发,需要添加一条路由。其余的由默认路由指向20.2.1.1
(3)默认路由和环状网络
①网络中的路由器A、B、C、D、E、F连成一个环,每个路由器只有一条默认路由且指向下一个路由器。网络中的数据包沿着环路顺时针传递。
②计算机A和B通信时,而计算机N到计算机M的数据包要经过路由器E→F。但从计算机M到计算机N的数据包,却要途经F→A→B→C→D→E等多个路由器。
③但计算机M ping 40.0.0.2(网络中不存在的地址)时,所有的路由器都会使用默认路由将该数据包转发到下一个路由器。该数据包就会在这个环状网络中一直存在,永远到不了目标网络。庆幸的是,数据包的网络层首部有一个表示生存时间的TTL(Time to live)字段。IP数据包在转发路径上,每经过一个路由器TTL值减1,当TTL为0时,路由器会丢弃这个数据包,并向IP包的发送者发送ICMP超时消息。
(4)默认路由造成的往复转发
①图中RA、RB两个路由器的默认路由互相指向对方。
②当计算机A ping 40.0.0.2(网络中不存在的IP)时,该数据包也会在RA和RB路由器之间不停地转发,直到TTL耗尽。
(5)使用默认路由和路由汇总简化路由表
①对于末端网络(如石家庄、秦皇岛、保定等)只需添加一条默认路由指向省级路由器即可。
②省级路由器(如C),数据包除了到石庄家、秦皇岛和保定的网络外,其余要么出省,要么出国,都需要转发到路由器A。因此,默认路由指向A。而指向省内的那三个网络可以单独添加3条路由。
③对于中国的国际出口路由器A,需要添加到英国和美国的两条路由。还要添加河南及河北的两条路由。
④美国的国际出口路由器E,需要添加到中国和英国的两条路由。同理,英国的路由器E也需要添加到中国和美国的两条路由。
(6)Windows上的默认路由和网关
①查看路由表:route print或运行 netstat –r命令。(须管理员权限运行cmd)
②添加路由:route add命令。如route add 0.0.0.0 mask 0.0.0.0 192.168.80.1 -p。其中的-p参数代表添加一条永久路由(默认路由指向网关)。重启计算机后依然有效。
③删除路由:如route delete 0.0.0.0 mask 0.0.0.0 192.168.80.1
④注意:不能在同一台计算机添加两条默认路由,否则访问Internet时会出现两条等价的路由。如果其中一条路由根本就不能用时,就可能造成一半流量丢失的现象。