实验名称: ICMPv6 实验
实验目的
1, 配置基本接口 ipv6 地址及静态 ipv6 路由.
2, 观察几种常见的 ICMPv6 差错报文和信息报文.
实验拓扑
实验步骤(没有听直播课的可以参考随堂视频实验作业)
1: 基本的 IP 地址配置
R1 的 G0/0 接口配置 ipv6 地址 2012::1/64,loopback0 配置 ipv6 地址 2011::1/64.
R2 的 G0/0 接口配置 ipv6 地址 2012::2/64,G1/0 接口配置 ipv6 地址 2023:2/64,loopback0 配置 ipv6 地址 2022:2/64.
R3 的 G0/0 接口配置 ipv6 地址 2023::3/64,loopback0 配置 ipv6 地址 2033:3/64
配置基本 ipv6 静态路由
2: 观察几种常见的 ICMPv6 差错报文和信息报文
在 R1 上 ping R3 的 loopback0 接口地址同时在 R1 的 G0/0 接口开启抓包
将 R2 上配置的至 R3loopback0 的路由删除, 那么再在 R1 上 ping,R2 将回复目的不可达, 原因是没有目的地路由
恢复上一部删除的路由, 在 R2 上通过 acl 过滤 R1 ping R3 loopback0 地址的报文, 再在 R1 上 ping
R2 回复目的地址不可达
在 R1 上添加路由 ipv6 route 2023::/64 2012::2, 然后在 R1 上 ping 2023::100(存在相关路由, 但目的地址不存在)
在 R1 上 traceroute 2033::3
根据 traceroute 的原理, hop limit 逐步增加, 第一个报文到达 R2 时, R2 回复 Time Exceed
此外时间超时错误报文还有 type=1 的分段重组超时.
当第二个报文到达 R3 时, 由于 udp 端口号过高, R3 回复目的端口不可达
此外目的不可达还有 type=3 的未制定.
实验心得:
1, 目的不可达错误报文
当数据包无法被转发到目标节点或上层协议时, 路由器或目标节点发送 ICMPv6 目标不可达差错报文. 在目标不可达报文中, 类型 (Type) 字段值为 1, 代码 (Code) 字段值为 0-4, 每一个代码值都定义了具体含义(RFC2463):
?0: 没有到达目标的路由
?1: 与目标的通信被管理策略禁止
?2: 未指定
?3: 地址不可达
?4: 端口不可达
2, 数据包过大错误报文
如果由于出口链路的 MTU 小于 IPv6 数据包的长度而导致数据包无法转发, 路由器就会发送数据包超长报文. 该报文被用于 IPv6 路径 MTU 发现的处理 . 数据包超长报文的类型字段值为 2, 代码字段值为 0.
3, 时间超时错误报文
当路由器收到一个 IPv6 报头中的跳限制 (Hop Limit) 字段值为 0 的数据包时, 会丢弃该数据包并向源发送 ICMPv6 超时报文. 在超时报文中, 类型字段的值为 3, 代码字段的值为 0 或 1:
?0: 在传输中超越了跳限制
?1: 分片重组超时
4, 参数错误报文
当 IPv6 报头或者扩展报头出现错误, 导致数据包不能进一步处理时, IPv6 节点会丢弃该数据包并向源发送此报文, 指明问题的位置和类型. 参数问题报文中, 类型字段值为 4, 代码字段值为 0~2,32 位指针字段指出错误发生的位置. 其中代码字段是这样定义的:
?0: 遇到错误的报头字段
?1: 遇到无法识别的下一个报头 (Next Header) 类型
?2: 遇到无法识别的 IPv6 选项
5, 常见的 ICMPv6 信息报文
回送请求报文
? 回送请求报文用于发送到目标节点, 以使目标节点立即发回一个回送应答报文. 回送请求报文的类型字段值为 128, 代码字段的值为 0. 标志符 (Identifier) 和序列号 (Sequence Number) 字段有发送方主机设置, 用于将即将收到的回送应答报文与发送的回送请求的报文进行匹配.
回送应答报文
? 当收到一个回送请求报文时, ICMPv6 会用回送应答报文响应. 回送应答报文的类型字段的值为 129, 代码字段的值为 0. 标志符 (Identifier) 和序列号 (Sequence Number) 字段的值被指为与回送请求报文中的相应字段一样的值.
YESLAB 学霸: 张成才
欢迎领取更多免费实验报告.
来源: http://www.bubuko.com/infodetail-3421566.html