1.静态路由协议
路由就是将分组(packet)从一个设备通过互联网络发往位于不同网络上的
另一个设备的操作
--路由表
路由器中一组路由条目的集合
路由器根据路由表做路径选择。
理解为地图:包含所有路径。
路由表:包含到达目标网段的最佳路径。
--路由表存储在RAM中,包含以下信息。
路由条目类型
目标网络地址,子网掩码。
吓一跳路由的IP地址、出接口信息。
管理距离,度量值。
路由条目:到达某个具体的网络的最佳路径。
--路由表的形成。
直连网段
配置IP地址,端口UP状态,形成直连路由非直连网段。
直连网段:路由器上的接口就是直连网段。
R1(I1)------(I1)R2(I2)-------(I1)R3(I2)
R1(I1):10.1.1.1
R2(I1):10.1.1.2
R2(I2):10.1.2.2
R3(I1):10.1.2.3
--相同设备使用交叉线连接。
--修改路由器的主机名。
--R1
Router>
Router> en
Router# configure
Router(config)# hostname R1
R1(config)#int f0/0
R1(config-if)#ip address 10.1.1.1 255.255.255.0
R1(config-if)#no shutdown --开启接口。
--R2
Router>
Router> en
Router# configure
Router(config)# hostname R2
R2(config)#int f0/0
R2(config-if)#ip address 10.1.1.2 255.255.255.0
R2(config-if)#no shutdown
--第二个接口设置
R2(config)#int f0/1
R2(config-if)#ip address 10.1.2.2 255.255.255.0
R2(config-if)#no shutdown
--R3
Router>
Router> en
Router# configure
Router(config)# hostname R3
R3(config)#int f0/1
R3(config-if)#ip address 10.1.2.3 255.255.255.0
R3(config-if)#no shutdown
R1# show ip route --查看路由表
C: 表示直连路由。
10.0.0.0/24 subnetted,1 subnets
C 10.1.1.0 is directly connected,FastEthernet0/0
路由类型 网络号 出接口
直连 。
R1#show ip route 10.1.1.0 --查看路由条目的详细信息。
distance 0,metric 0
管理距离 ,度量值
管理距离:
用来比较通过不同种路由协议学习到的相同路由条目的"好坏"
以小为优。
度量值:
用来比较通过同一种路由协议学习到的相同的路由条目的"好坏"
R2# show ip route
10.0.0.0/24 is subnetted,2 subnets
C 10.1.1.0 is directly connected,FastEthernet0/0
C 10.1.2.0 is directly connected,FastEthernet0/1
2.建立路由表的三种途径
直连路由:直接连接到路由器上的网络。
静态路由:管理员手工构建路由表
动态路由:路由器之间动态学习到的路由表。
动态路由:
RIP路由信息协议
EIGRP 增强型内部网关路由协议
OSPF 开放式最短路径优先
BGP 边界网关协议
ISIS中间系统到中间系统
路由协议分类:
路由条目学习的方法:直连路由,静态路由,动态路由。
自制系统号AS:
IGP:内部网关协议:RIP,EIGRP,OSPF,ISIS
EGP:外部网关协议:BGP
路由协议的算法:
距离矢量路由协议 RIP
链路状态路由协议 OSPF ISIS
混合矢量路由协议 EIGRP
路径矢量路由协议 BGP
--传递路由条目时是否携带子网掩码信息:
有类路由协议:RIPv1
五类路由协议:Other
数据包的封装和解封装。
R1# show ip int brief --查看接口。
FastEthernet0/0 10.1.1.1
R2# sh ip int brief --查看接口。
FastEthernet0/0 10.1.1.2
FastEthernet0/1 10.1.2.2
R3# sh ip int brief --查看接口。
FastEthernet0/1 10.1.2.3
R3# ping 10.1.2.2 --.!!!!感叹号是通的。. 号表示丢包。
R1# ping 10.1.1.2 -- !!!!可以通
R1# ping 10.1.2.3 -- ..... 五个.表示丢包不通。
ping 使用的是 ICMP 信息。
SIP:10.1.1.1 源IP
DIP:10.1.2.3 目的IP ;
SIP:10.1.1.1 |
DIP:10.1.2.3 | ICMP
R1# sh ip route --查看路由表。没有10.1.2.x 这个网段。无法发送。
--如果要跨网段ping通,就是配置静态路由协议。
R1# config t
R1(config)# ip route 10.1.2.3 255.255.255.255 f0/0
--或者:
R1(config)# ip route 10.1.2.0 255.255.255.0 f0/0
ip route:静态路由固定语法。
10.1.2.0:目的网络号
255.255.255.0:掩码
f0/0 :出接口
网络号+掩码=网段
R2# sh ip int brief --查看接口。
FastEthernet0/0 10.1.1.2 f0/0
FastEthernet0/1 10.1.2.2 f0/1
R1#-->R3#
SIP:10.1.1.1 |
DIP:10.1.2.3 | ICMP
R3#-->R1#
SIP:10.1.1.3 |
DIP:10.1.2.1 | ICMP
--让R3能反向发送报文给R1
R3# config t
R3(config)# ip route 10.1.1.0 255.255.255.0 10.1.1.2 --添加静态路由。
写静态路由可以跟出接口地址,也可以跟吓一跳地址。
10.1.1.2 :Next-Hop Address,吓一跳地址。
R3# sh ip route --查看路由表
S 10.1.1.0 [1/0] via 10.1.2.2
C 10.1.2.0 is directly connected,FastEthernet0/1
R3#
--R3#
S 10.1.1.0 [1/0] via 10.1.2.2
S:代表静态的。
10.1.1.0:网络号
[1/0]:Administrator/Metric ,一个是管理距离,一个是度量值。
R1# ping 10.1.2.3 !!!!! 可以通
R1# sh ip route --查看路由
S 10.1.2.0 directly connected,FastEthernet0/0
--R1#
R1# sh ip route 10.1.2.0
Known via "static",distance 1,metric 0 (connected)
3.浮动静态路由
R1:10.1.1.1/30 F0/0
R2:10.1.1.2/30 F0/0
R2:10.1.10.254/24 F0/1
Server:10.1.10.1
--这三个之间使用交叉线连接。
R1---->R2---->Server
--R1
Router>
Router>en
Router# confi t
Router(config)#hostname R1
R1(config)#interface f0/0
R1(config-if)# ip address 10.1.1.1 255.255.255.252
R1(config-if)# no shutdown
--R2
Router>
Router>en
Router# confi t
Router(config)#hostname R2
R2(config)#interface f0/0
R2(config-if)# ip address 10.1.1.2 255.255.255.252
R2(config-if)# no shutdown
R2(config-if)#exit
R2(config)#int f0/1
R2(config-if)#ip address 10.1.10.254 255.255.255.0
Server:
IP Address:10.1.10.1
Subnet Mask:255.255.255.0
Default Gateway:10.1.10.254
R1# ping 10.1.10.1 .....不通。 路由表里面没有路由。
R1# ip route 10.1.10.0 255.255.255.0 10.1.1.2
--路由到:10.1.10.0, 下一跳的地址:10.1.1.2
R1# ping 10.1.10.1 ..!!! 可以通
R1# sh ip route --查看路由表
C 10.1.1.0/30 is directly connected,FastEthernet0/0
S 10.1.10.0/24 [1/0] via 10.1.1.2
R2# sh ip route --查看路由表
C 10.1.1.0/30 is directly connected,FastEthernet0/0
C 10.1.10.0/24 is directly connected,FastEthernet0/1
--Server 回包。
Static
IP Address:10.1.10.1
Subnet Mask:255.255.255.0
Default Gateway:10.1.10.254
||
--上面静态配置,这个相当于一条路由。
ip route 0.0.0.0 0.0.0.0 10.1.10.254
--如果R1 f0/0 shutdown 会如何。
R1#
R1# config t
R1(config)#int f0/0
R1(config-if)#shutdown
R1(config-if)#end
R1#sh ip route --再查看路由表 ,路由表里面是空的。
--单链路不通时可以设置双链路。加模块。
R2# wr memory --保存配置。
--R2 电源断电
加模块:NM-1FE-TX
--R2 电源开电
R2>
R2>en
R2# sh ip int bri
多出一个:FastEthernet1/0
/<---------->\
R1 R2<----------->Server;
\<---------->/(10.1.2.2/30)
R1#config t
R1(config)#int f0/1
R1(config-if)#ip address 10.1.2.1 255.255.255.252
R1(config-if)#no shutdown --激活
R2# config t
R2(config)#int f1/0
R2(config-if)#ip address 10.1.2.2 255.255.255.252
R2# ping 10.1.2.1 .!!!! 可以通,丢包1个。
R1# sh ip route --查看路由。
C 10.1.1.0/30 is directly connected,FastEthernet0/0
C 10.1.2.0/30 is directly connected,FastEthernet0/1
S 10.1.10.0/24 [1/0] via 10.1.1.2
R2# config t
R2(config)#int f0/0
R2(config-if)#shutdown --第一条链路宕机。
R2(config-if)#end
R2#
R1# ping 10.1.10.1 (Server).....不能Ping通。
R1# config t
R1(config)#int f0/0
R1(config-if)#no shutdown --激活。
R1(config-if)#exit
--添加一条路由,吓一跳扔给:10.1.2.2===R2:F1/0
R1(config)# ip route 10.1.10.0 255.255.255.0 10.1.2.2 10
--管理距离,默认为1,管理距离,以小为优。
R1# sh ip route
S 10.1.10.0/24 [1/0] 10.1.1.2 --还是原理的那条。
R1#config t
R1(config)#int f0/0
R1(config-if)#shutdown --关闭这条链路。
R1(config-if)#end
R1#sh ip route
S 10.1.10.0/24 [10/0] via 10.1.2.2 --变了。
--如下就是浮动静态路由。
S 10.1.10.0/24 [10/0] via 10.1.2.2
当R1 F0/0 接口正常时显示:S 10.1.10.0/24 [1/0] 10.1.1.2
当R1 F0/0 接口宕机时显示:S 10.1.10.0/24 [10/0] via 10.1.2.2
优先使用管理距离=1的接口,当管理距离=1的接口宕机时,
会自动启用管理距离=10的接口。即备用接口。
排查网络两个常用的命令:ping ,traceroute
[root@mysql1 ~]# traceroute 192.168.1.8
traceroute to 192.168.1.8 (192.168.1.8), 30 hops max, 60 byte packets
1 WIN-20230813BKN (192.168.1.8) 0.111 ms * *
[root@mysql1 ~]#
[root@mysql1 ~]# traceroute 192.168.1.13
traceroute to 192.168.1.13 (192.168.1.13), 30 hops max, 60 byte packets
1 mysql3 (192.168.1.13) 0.293 ms 0.256 ms 0.343 ms
R1# traceroute 10.1.10.1 --Server;
1 10.1.2.2 2 msec 0 msec 0 msec
2 10.1.10.1 0 msec 3 msec 0 msec
R1#