网络通畅的条件
静态路由
静态路由其实就是管理员告诉路由器到那一个网段应该从那个网口出,上图,对于r1路由器需要知道取r3和b计算机的路由(下一跳),r2则需要知道取a计算机和b计算机的吓一跳,然后直连的2个设备之间是不需要设置吓一跳的,因为路由器可以获取到
路由器添加静态路由表
ip route [网段的ip] [子网掩码] [下一跳的地址]/[指定从那个口出]
例子:
- ip route 192.168.0.0 255.255.255.0 172.16.0.1
- ip route 192.168.0.0 255.255.255.0 serial 2/0 但是注意点,指定下一跳只是口而不是ip地址的时候,2个设备之间一定是直通的,而不是2个设备之间还有交换机等设备,而指定了下一跳ip则没问题
路由汇总
- 路由汇总其实就像超网合并一样,将各个连续网段的网关和子网掩码进行ip超网汇总,然后就给路由器写入这个汇总的网关ip和子网掩码,比如r1就汇总写成: 172.16.0.0/16- 10.0.0.2, r2写成192.168.0.0/16 - 10.0.0.1,
- 但是要注意这里是连续ip地址,假如有例外的ip地址,需要在路由表上加入额外的一条记录
默认路由
- ip route 0.0.0.0 0.0.0.0 [下一跳的地址]
- 默认路由其实就是包括所有网段和子网掩码,然后设定吓一跳,这样可以利用这个机制,让吓一跳的路径是internet,或者指向大多数网段的超网
- 这里要注意的点就是默认路由指向可能不是最短路线,然后可能会造成往复转发,比如上图的环状网络ping 10.0.0.1, 就会一直循环知道ttl超时丢包
rip协议
- rip协议最长具体是15
- rip协议直连具体算0
- 没30秒向邻居发送路由表 (<目的网络,开销,下一跳>) 然后邻居收到会进行开销+1
- 假设相邻两个路由器之间的开销为1,则最长需要时间=(m-1)*30,最少需要时间=0,平均需要时间=(最长+最少)/2,网络拓扑变化的时候rip协议收敛慢
- 当某个网络失效时,会一直计数到无穷直至16
- 第一版的rip协议使用的是广播,第二版的使用多播,第二版支持子网掩码(变长子网),而第一版只支持等长子网
思科路由器的rip协议设置
- router rip 在控制台开启rip协议
- network [网段] 把某个网段加入rip协议
- nonetwork [网段] 去除某个网段
- show ip route [rip] 查看所有路由
- show ip protocols 展示所有协议,非控制台中命令
rip协议数据包格式
- 命令一般是req和resp
- 版本代表rip协议的版本
- 16个0没用的
- 地址族代表是什么协议这里是Ip
- 0代表 route tag代表可能是其他协议发送过来的
- 命令:为1时表示request报文,要求接收方路由器发送其全部或部分路由表;为2时表示response报文,主动提供周期性路由更新或对请求消息的响应;
- 版本:即使用的RIP协议的版本,v1,v2;
- 字节为0表示未用;
- 地址簇标志:指明底层使用了哪些通信协议来传输数据,RIP协议可以携带多种不同协议的路由信息,每一项都有地址标志来表明使用的地址类型,IP地址的AFI为2
- v1: 端口号为520 使用广播,v2可以使用广播也可以用多播(组播)