OSI参考模型及TCP/IP协议栈
osi7层参考模型 ISO标准化组织提出 是一个伟大的设想
应用层 人机交互
表示层 编码 解码
会话层 区分不同进程
传输层 确定数据传输方式 通过端口号区分不同服务 FTP 20 21 SSH 22 telnet 23 http 80 8080 RIP 520 RIPng 521 (传输层)
网络层 逻辑寻址 IPV4 IPV6 OSI地址
数据链路层 数据控制 物理寻址
LLC 提供上层接口 通过隐藏不同规范实现统一 校验(只检查错误不纠正错误)
MAC 介质访问控制层 物理寻址
物理层 定义电气 电压 光学特性 各种接口 线缆规范
注意:应用层 不是应用程序
物理层 不是硬件
TCP/IP协议栈和OSI相同及不同
相同点:两者都是层次化 模型化
下层对上层提供服务支持
每层的协议彼此相互独立
不同点 : 层次数量不同
OSI先有模型后有协议 TCP/IP协议栈先有协议后有模型
TCP/IP协议栈只支持TCP/IP网络
TCP/IP协议栈支持跨层封装
注意:TCP/IP协议栈=DOD模型
1Byte = 8bit
数据报头
PDU协议数据单元
上层 信息
传输层 数据段
网络层 数据包
数据链路层 数据帧
物理层 比特流
2层以太网封装格式
以太网V2封装
IEEE 802.3以太网封装
3层封装
版本
报头长度
diffserv (Tos) 标识数据包种类 通常用于QOS
因为设备接口是有MTU 所以对于一个较大的数据包来说 穿越端口 是否可切片
偏移量
存活时间 早期是以秒为单位 现在以跳数为单位 最大值255
静态路由
管理员配置路由器 告知未知网段
以太网下一跳 非以太网出接口
路由器查表过程 1 主机路由 2 子网路由 3 主类路由 4 超网路由 5缺省路由 递归查找 永远匹配掩码最长的条目
在以太网中 如果用出接口写静态路由 那么路由器会认为目标网络是自己的直连网络 开始发送ARP查询目标主机地址 下一跳路由器会通过代理ARP回复
导致本地路由器对于不同的IP地址对应的MAC地址相同从而使ARP缓存表过大
在以太网中使用下一跳地址 路由发送数据包 会将目标地址和MAC地址封装为下一跳IP地址 从而减少路由器资源耗损
对于串行链路 没有ARP问题 加快查表速度 一般使用出接口
如果链路带宽不同时使用等开销负载均衡 会导致低速链路拥堵
对于链路带宽不同时 不能使用等开销负载均衡 那么通过浮动路由实现链路冗余
浮动路由 通过更改静态路由AD实现 Router(config)#ip route 2.2.2.0 255.255.255.0 21.1.1.2 2
常见AD(CISCO)
C 0 S 1 EBGP 20 eigrp 90 igrp 100 ospf 110 is-is 115 rip 120 EXEIGRP 170 IBGP 200 不可信 255 (CISCO)
缺省路由 一般在企业边缘路由器 当路由器递归查找无法查到明确条目时 最终会按照缺省路由转发
Router(config)#ip route 0.0.0.0 0.0.0.0 12.1.1.2
使用汇总导致路由环路问题:
如果网络使用汇总 因为汇总终究是不精确的 那么需要通过NULL0接口来防止路由环路
ip route 汇总网络号 汇总网络子网掩码 NULL 0
静态路由的路由黑洞:如下图 R2 F1/0端口DOWN R1无法检测到 导致在SW1和R2处出现路由黑洞 因为静态路由没有主动的链路查询机制
解决办法 使用SLA
创建 SLA
创建查询路径
设置超时时间
设置查询发送时间
设置SLA生效时间
创建追踪路径
配置具有追踪路径的静态路由
动态路由
动态路由协议类似于路由器之间相互交流使用的语言 路由器之间通过各种数据包 学习路由 通过算法确定最佳路径
IGPS 域内路由协议 RIP OSPF EIGRP IS-IS
EGPS 域间路由协议 EGP BGP
RIP 路由信息协议
距离矢量型 (HOP)算法 贝尔曼-福特算法 传闻型
本地路由器将自己的路由表跳数+1 传递给下一跳路由器 以此类推
最大跳数16(不可达)
RIPV1 RIPV2 RIPng
RIPV1 有类别路由选择协议
RIPV1数据包通过UDP封装 端口号520 更新数据包通过广播发送
RIP配置
启动RIP进程
通告网络
RIPV1数据包
被动接口 当一个接口成为被动接口时 那么该接口不会主动发送更新数据 但是可以接收
单播更新 将更新方式更改为单播
RIP 30S发送一次更新数据包 随机抖动时间 真正RIP网络 更新数据包发送时间 25S-35S CISCO设备RIP更新时间 25.5S-30.5S
6倍更新时间即180S如果未收到更新 则会标记该条目为不可达
当从同一地址收到更新但是度量增加时 会抑制该路由条目 180S
垃圾时间 :当一条路由标记为不可达时 进入垃圾时间 当垃圾时间到 则从路由表中删除该条目 60S 在RFC定义中为
注意:当RIP网络中的一台路由器的4个计时器发生变化时 整个网络也需要进行更改
当接受的更新和接受接口属于同一主类网络时 那么该更新就会使用接收接口的子网掩码
因为是不连续子网 导致中间路由器 会学到2条相同的主类网络 成为等开销负载均衡 导致实际数据包发送会产生至少50%丢包
中间路由器路由表如图
要解决该问题 通过辅助端口 将子网变成连续的 实现
辅助端口命令如下
注意:配置辅助端口实现连续子网 子网必须在一个主类网络中 配置辅助端口注意 否则会覆盖掉原始地址 在一个运行中的网络是非常恐怖的
RIPV2 无类别路由选择协议 支持VLSM CIDR 同时 支持路由认证
同时 更新数据包 采用组播发送 224.0.0.9
默认通过该命令 启动的是兼容版RIPV1(更新发送V1 但是能够识别V2的更新包)
该命令启动RIPV2
该命令启动RIPV1
RIPV2默认开启自动汇总 该功能一般需要关闭的
RIP手工汇总 在边缘路由器的接口上实施
RIP路由认证
1 创建钥匙链及钥匙密码 2台需要认证的设备 钥匙链的名称是可以不同的
2 在需要认证的接口上调用
3 默认情况下 密码采用明文方式 (无 明文 密文)
4 更改密码为MD5
5 默认情况下 每把钥匙链 只认数字编号最低的钥匙 同时 该钥匙永久生效
基于时间的认证
设置钥匙激活时间
设置钥匙发送时间
注意:发送时间范围需要小于激活时间 认证双发如果基于时间认证 那么时间也必须相同的
RIP度量值
更改度量的方式 2种 进站/出站度量
更改出站度量
通过ACL定义哪些网络是需要更改的
偏移列表 ACL1 出站流量 HOP改为3 S1/0发出的需要更改
更改入站度量
RIPng IPV6网络用