一、环回接口
路由器上用来测试TCP/IP协议栈能否正常封装与解封装数据
1、PC
默认存在,127.0.0.1 //本地环回地址,用来测试本机TCP/IP协议栈能否正常工作
2、路由器
路由器也存在环回接口,为了测试路由器的TCP/IP协议栈能否正常工作,但是路由器的环回接口需要管理员手工创建。
r1(config)#interface loopback 0 //创建环回接口
%LINK-5-CHANGED: Interface Loopback0, changed state to up%LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to up
r1(config-if)#ip address 1.1.1.1 255.255.255.0 //给环回接口配置IP地址
注意:
同一台设备的不同环回接口,不能使用相同网段的IP地址。
二、手工汇总
连续子网:母网号相同,且掩码长度一致;
若到达部分连续性子网的路径具有相同的下一跳,那么可以进行手工汇总;
好处:压缩路由表条目数量。
例如:
目标网段:172.16.3.0/24&&172.16.4.0/24具有相同的下一跳:172.16.23.2
则将目标网段手工汇总后的结果为:172.16.0.0/22
r2(config)#ip route 172.16.0.0 255.255.248.0 172.16.23.2
前缀 手工汇总后目标网段 下一跳
三、缺省路由、默认路由
一条不限定目标的路径;
在路由表中使用 “ * ” 标示,查表先查看设备上的所有静态、动态、直连路由后,依然没有可达路径才使用该条目。
Router(config)#ip route 0.0.0.0 0.0.0.0 1.1.1.2 //配置缺省路由
Router#
Router#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is 1.1.1.2 to network 0.0.0.0
1.0.0.0/24 is subnetted, 1 subnets
C 1.1.1.0 is directly connected, FastEthernet0/0
10.0.0.0/24 is subnetted, 1 subnets
C 10.1.1.0 is directly connected, Loopback0
20.0.0.0/24 is subnetted, 1 subnets
S 20.1.1.0 [1/0] via 1.1.1.2
S* 0.0.0.0/0 [1/0] via 1.1.1.2 //表示配置缺省路由成功
Router#
四、路由黑洞
完全是由手工汇总导致:
手工汇总目标网段后,汇总地址中部分包含的地址不存在,导致流量在数据链路层中有去无回。
所以当子网汇总时推荐精确汇总,不然后果就是路由黑洞将会特别大。
与缺省路由相遇可能导致环路。
详细解说:
如图所示:
R3下的两个子网分别为:
172.16.1.0/24
172.16.2.0/24
手工汇总之后:172.16.0.0/22
但是实际上将172.16.0.0/22可以子网划分为4个/24的网段:
172.16.0.0/24
172.16.1.0/24
172.16.2.0/24
172.16.3.0/24
R1可以写为172.16.0.0/22,下一跳为R2的f0/0接口。则证明172.16.0.0/24、172.16.1.0/24、172.16.2.0/24、172.16.3.0/24这几个子网都可以访问的到,但是实际上只存在172.16.1.0/24和172.16.2.0/24这两个网段;如果对172.16.1.0/24和172.16.2.0/24这两个网段发起访问可以通,但是R1如果对172.16.3.0/24发起访问的话,经过下一跳然后到R3之后,经过查表得出不存在且没有路由条目写到172.16.3.0/24如何走,所以直接丢弃数据包。
此拓扑图中的黑洞路由为R3,凡是向不存在子网发起的访问,数据包到达R3之后就丢弃,它就像黑洞一样一直在吸流量。
五、空接口防环(路由)
顾名思义,就是防止网路环路(数据包在数据链路中你扔给我,我扔给你,循环往复,还不可以丢弃)发生。
环路的形成:
缺省路由与黑洞路由同时存在(邂逅)
环路是网络中的禁忌,千万不可触碰!
例如:
详解1:R1、R2、R3分别配置手工汇总后的路由条目(即目标网段为0.0.0.0/0下一跳为172.16.0.0/22,其中R3下一跳为运营商)则此时该网络可正常访问到运营商(可上网)。
详解2:当R3内网中有一台主机A向172.16.3.1这个IP地址发起ping包的时候,根据每个路由器上的路由条目,ping包会到达R1的0/0接口,
然后因为此时R1有缺省路由,它会继续转给R2,而此时此刻,R2还会继续转给R1(因为如果给到R3的话它还是会匹配到手工汇总路由)
一直到TTL值为0时,此网络恢复正常。
防环措施:
给R1写一条空接口路由即可解决此问题。
R1(config)#ip route 172.16.0.0 255.255.252.0 null 0
路由查表规则:
1、递归查找
2、最长匹配(网络位/掩码越长,主机位就越短,认为越可靠!)
推荐配手工汇总后的IP地址,也可以将不存在的广播域逐条配置空接口,但是比起不存在广播域的出环概率,已经存在的广播域出环概率要大得多,因为大家都知道它存在,如果因为意外,它突然不存在了,那么一定会出环。
六、浮动静态路由
基本概念:通过修改默认的管理距离,起到路径备份作用。
R2(config)#ip route 0.0.0.0 0.0.0.0 192.168.21.1 2 // 其中2为管理距离
此条路由虽然生效了,但是可能在show run 并没有显示,因为只要有管理距离为1的那条路径存在,那么管理距离为2的这条路径就干不过管理距离为1的路径,只有当管理距离为1的路径断了之后才选择这条路径传输数据。
路由器加表规则:
路由表中包含:
S 20.1.1.0 [1/0] via 10.1.1.2
详解:
1、1的部分为管理距离(AD)
用来衡量一条路由的可信度,取值范围0-255,数值越小可信度越高;
其中如果为0表示绝对信任,为255表示即便没有路径可以选择也不选这条路由。
管理距离:
C 直连路由默认管理距离是0;
S 静态路由默认管理距离:(1)出接口写法为 0 (2)下一跳写法为1;
E EIGRP 90;
O OSPF 110;
R RIP 120。
2、0的部分为度量值(metric)
通过各种协议用来衡量路径的优劣,数值越小路径越优。
RIP 跳数
OSPF 带宽
EIGRP 复合度量 带宽 延迟 负载 可靠性 MTU
3、负载均衡
当到达同一目的地,拥有多条开销相似的路径时,可以使数据拆分同时从多条路径传输;
例如:
R2去往R3有两条路径可走,便可以使数据拆分(按照一定的规则)同时从这两条路径传输。
以下便是路由条目中的数据显示:
S 172.16.4.0 [1/0] via 172.16.3.2
[1/0] via 172.16.5.2
总结:
若学习到两条路由,目标相同,先比较管理距离,将数值小的加表;
若管理距离相同则比较度量值,将数值小的加表;
若两个都相同则同时加表—负载均衡。