路由基础:
路由:在报文转发的过程中沿途的网络设备收到该报文后,会根据其携带的目的IP地址来判断如何转发这个报文,最终将报文从恰当的接口转发出去。
当一台路由器收到一个IP报文后,会在自己的路由器中执行路由查询,寻找匹配报文的目的IP地址的路由表项,如果找到则按照指示的出接口或下一跳转发,若无匹配则丢弃。
路由是一种
逐跳(Hop-By-Hop)的行为,数据从源被发往目的的时候,沿途的每一台路由都会被执行独立的查询和报文转发
。
路由表:
查看路由表:
display ip routing-table
目的网络/网络掩码(Destination Network Address/Netmask):用于标识一条路由。
路由协议(Protocol):路由的协议类型通过什么路径学习到的。
优先级(Preference):路由优先级的值
越小则该路由优先级越高。
开销(Cost):本路由器到达目的网段的代价值。
下一跳(Next Hop):转发到达目的网段的数据包所使用的下一跳地址。
出接口(Interface):数据包被路由后离开本路由器的接口。
路由信息的来源:
直连路由(Direct Route):能够自动获取本设置的直连接口路由,并将其写入路由表。
一个接口的直连路由被加载到路由表的前提是该接口的物理状态(Physical Status)及协议状态(Protocol Status)都必须为up。
查看相应接口物理状态和协议状态:
display ip interface brief
路由器到达远端网络:配置静态路由(Static Route)或使用动态路由协议(Dynamic Routing Protocol)。
优先级:直连路由: 0
OSPF内部路由: 10
IS-IS: 15
静态路由: 60
RIP路由: 100
OSPF ASE路由: 150
OSPF NSSA路由:150
IBGP路由: 255
EBGP路由: 255
当出现到达同一目的网段的路由通过多种不同的途径学习到时,首先比较优先级,选择较小的;而当其从多个不同的下一跳,通过同种协议获知到达同一网段的路由时,会进行度量值比较。
静态路由(Static Route):是指网络管理员通过手动配置的方式为路由器创建的路由。
ip route-static(目标IP)(掩码)(出接口)(下一跳IP)
配置须知:
(1):如果出接口类型为BMA(Broadcast Multiple Access,广播型多路访问),则需要配置下一跳IP地址。
若未指定下一跳可使用ARP代理:
int GigabitEthernet0/0/0
arp-proxy enable
路由器会在其ARP表中创建一个表项,将IP地址与接口的MAC地址进行绑定。
(2):出接口为P2P(Point-to-Point,点对点),仅需指定出接口。
(3):出接口为NBMA(Non-Broadcast Multiple Access,非广播型多路访问)类型,则静态路由需要指定下一跳。
帧中继(Frame Relay)封装的接口是一种典型的NBMA类型接口,能够支持连接一台或者多台设备,但不支持广播。
默认路由:也称缺省路由,是目的网络及掩码均为0的路由。
ip route-static 0.0.0.0 0.0.0.0 (下一跳)
匹配所有路由,优先级最低。
浮动静态路由(Floating Static Route):优先级缺省值都相同的路由在网络中执行路由等价负载分担。使用Preference指定其中一条路由优先级则其中优先级较小的会加载进路由表,另一条则“潜藏”起来。
ip route-static (目的网段)(下一跳)
ip route-static (目的网段)(下一跳)preference 80
主要应用于路由的冗余备份
静态路由与BFD(Bidirectional Forwarding Detection)联动
BFD:一种实现网络可靠性的机制,可以用于快速检测网络中的链路状况,ip可达性等。
配置:
bfd 激活bfd功能
quit
bfd ab
bind peer-ip 10.1.12.2 创建一个bfd对话名称ab对端ip10.1.12.2
discrimination local 10
bfd bfd会话本地标识
discrimination remote 20
bfd bfd会话远端标识
commit 提交配置
quit
ip route-static(地址)(下一跳)track bfd-session ab 与bfd会话进行联动
display bfd session all 查看bfd状态
静态路由与NQA(Network Quality Analysis)联动
NQA(网络质量分析):主要用于性能检测及运行状况分析,支持DHCP、DNS、FTP、HTTP、SNMP、TCP、Trace、UDP等。
配置:
nqa test-instance admin(测试实例管理者名称)test1(测试实例名)
test-type icmp 使用的测试机制为icmp
destination-address ipv4 10.1.12.1 测试对象的ip地址
frequency 6 每轮测试时间间隔单位秒
probe-count 2 每轮测试探测次数
interval seconds 2 美轮测试每个探测报文的发送时间间隔
timout 2 每次探测超时时间
start now 测试实例开始运行
ip route-static(地址)(下一跳)track nqa admin test1 关联nqa实例
display nqa results 查看nqa实例的探测结果
display nqa history 查看每一次探测结果
状态化防火墙:当一个会话包的首包顺利通过防火墙的安全检查并被其转发时,防火墙会为该会话动态地产生一个状态化信息——会话表项(Session Table Entry),该表项包含着这个会话的五元组信息(源IP地址、目的IP地址、协议类型、源端口号及目的端口号),而回程流量由于拥有相互匹配的五元组信息,因此防火墙会根据会话表项的查询判断出该流量为一个已知会话的回程流量,于是将其放行。
tracert(跟踪路由)
ip route-static(地址)(掩码)(下一跳)
未指定出接口,路由器查询下一跳发现是自己某一接口所属网段的地址,则将目的ip关联到某一接口:递归(Recursion)查询也称路由迭代。
动态路由协议(Dynamic Routing Protocol):
基于协议算法可分为:距离矢量路由协议(Distance Vector Routing Protocol)、链路状态路由协议(Link Static Routing Protocol)。
距离矢量路由协议的路由器:周期性的通告自己的路由表,直连路由器收到后学习更新自己的路由表,之后也会向其直连的路由器通告,最终网络中每台路由器都拥有到达全网各网段的路由,这个过程称为路由的泛洪(Flooding)。
距离矢量路由的典型的RIP,他使用跳数(Hop Count)作为路由度量值,所谓的跳数就是到达目的网段所需要经过的路由器个数,直连网段度量值为0跳。
其并不了解网络拓扑,只知道自己与目的网络的距离。
链路状态路由协议:使用链路状态(Link Static)信息描述网络的拓扑及IP网段。并且将所泛洪的链路状态信息都搜集起来存在LSDB(Link-State Database,链路状态数据库)
工作范围:
IGP(Interior Gateway Protocol,内部网关协议),如RIP、OSPF、IS-IS等;
EGP(External Gateway Protocol,外部网关协议),例如:BGP(Border Gateway Protocol,边界网关协议)
IGP被用于在AS(Autonomous System,自治系统)内部实现路由信息交互,而EGP则用于不同AS间。
AS:由单一的机构或组织所管理的一系列IP网络及其设备所构成的集合,简单理解为一个独立的机构或者企业所管理的网络。
最长前缀匹配机制(Longer Prefix Match Algorithm)与掩码进行“逻辑与”运算,逐位比对,直到找到匹配度最长的条目。
路由汇总(Route Summarization或Route Aggregation):又称路由聚合,是将一组有规律的路由汇聚成一条路由,从而达到减小路由表规模以及优化设备资源的目的,把汇聚之前的路由称为精细路由或明细路由,汇聚后的路由称为汇总路由或聚合路由。
几乎所有的动态路由协议都支持汇总路由。
黑洞路由:
ip route-static (地址)Null0
具备路由功能的华为数通产品都维护着两种非常重要的数据表:一是路由表(Routing table),也称路由信息库(Routing Information Base,RIB);二是数据转发表,也称转发信息库(Forwarding Informatica Base,FIB)。
路由器将路由表中的活跃路由下载到FIB表,此后如果路由表中的相关表项发生变化,FIB表也将同步。实际上路由器查询的是FIB表。
Flags列中的R标识,R意为Relay(此处理解为递归)。
display fib 查看fib表