实验一IP协议
练习一利用仿真编辑器发送IP数据包
描述:收发IPv4报文,不填上层协议.
问题:①查看捕获到得报文长度是60,和你编辑的报文长度不同,为什么?
最小帧长度为60,当不足60时,在源数据尾部添加0补足。
②讨论,为什么会捕获到ICMP目的端口不可达差错报文?
差错报文的类型为协议不可达,因为上层协议为0,未定义。
练习二编辑发送IPV6数据包
描述:收发IPv6报文.
问题:①比较IPV4头,IPV6有了那些变化?IPV4的TTL字段在IPV6里对应那个字段?
比较IPv4 和IPv6 的报头,可以看到以下几个特点:
●字段的数量从IPv4 中的13(包括选项)个,降到了IPv6 中的8 个;
●中间路由器必须处理的字段从6 个降到了4 个,这就可以更有效地转发普通的
IPv6 数据包;
●很少使用的字段,如支持拆分的字段,以及IPv4 报头中的选项,被移到了IPv6
报头的扩展报头中;
●● IPv6 报头的长度是IPv4 最小报头长度(20 字节)的两倍,达到40 字节。
然而,新的IPv6 报头中包含的源地址和目的地址的长度,是IPv4 源地址和目
的地址的4 倍。
对应:跳限制----这个8位字段代替了IPv4中的TTL字段。
练习三:特殊的IP地址
描述:直接广播地址包含一个有效的网络号和一个全“1”的主机号,只有本网络内的主机能够收到广播,受限广播地址是全为1的IP地址; 有限广播的里不包含自己的ip地址,而里包含自身的ip地址
练习四: IP包分段实验
问题:讨论,数据量为多少时正好分两片?1480*2=2960
练习五: netstat命令
描述: C:>netstat –s ;查看本机已经接收和发送的IP报文个数
C:>netstat –s ;查看本机已经接收和发送的IP报文个数
C:>netstat –e ;观察以太网统计信息,
实验二 2.1 ARP协议
练习一维护ARP 缓存表
描述: :查看ARP缓存: arp –a
手动建立ARP 表:arp –s IP (如MAC(如:00-E0-4D-3D-84-53)
清空ARP 缓存表:arp –d
练习二仿真发送ARP 请求报文
描述: ARP协议叫物理解析协议, 是根据IP地址获取物理地址的一个TCP/IP协议。
主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP 缓存中并保留一定时间
2.2 ICMPv4协议
练习一利用仿真编辑器编辑ICMP 回显请求报文
练习二仿真发送ICMP 时间戳请求报文
描述: ICMP封装在IP报文里面,一个ICMP报文32位,8位类型,八位代码,16位校验和
2.3 ICMPv6
只是把ICMP放在了IPv6数据包的载荷中.
实验三 3.1 ARP
练习一发送ARP 请求报文(不同网段内)
描述:在跨越路由器进行通信的时候,发起通讯的主机发现目的地址不在同一个网段,会先查询路由器的地址,于是广播出ARP请求,路由器的入口网卡发现有一个ARP请求的目的IP是自己的IP地址,于是回复自己的Mac,得到了Mac,发起通信的主机将通信内容发送到路由器的入口网卡,并选路到出口网卡,此时出口网卡需要知道目标的Mac,于是广播出ARP查询,目标机回复自己的Mac,路由器的出口网卡成功的将信息发送到目标机器.
练习二ICMP 差错报文
描述:ICMP目的端口不可达/超时/的情况.注意为了模拟目的端口不可达,某主机ping一个不存在的IP地址,为了模拟超时,向一个跨路由器的目标通信,但是TTL设置为1,路由器会丢弃TTL耗尽的包,因为根本就收不到,所以当然就没有回复,就会超时
试验3.2 ARP欺骗
描述:1、ARP 高速缓存
ARP 缓存表是记录IP 地址和MAC 地址的映射关系。ARP 表分为动态更新和静态更新两种,系统默认动态,更新时间为120 秒。ARP 表的建立是通过以下两个途径:
●主动解析:如果一台计算机想与另一台不知道MAC 地址的计算机通信,则该计算机主动发ARP 请求;
●被动解析:如果一台计算机接收到了一台计算机的ARP 请求,则首先在本地建立请求计算机的IP 地址和MAC 地址的对应表;
ARP 地址欺骗正是利用高速缓存,使高速缓存中存在错误的映射关系,误导数据包发往错误的目的地。
2、ARP 地址欺骗的原理
一般情况下,当系统收到ARP 请求或应答时,都要把源端的硬件地址和IP 地址填入ARP 高速缓存。正是
根据这一性质,为ARP 欺骗提供了条件。
编辑一个ARP 应答数据包,将ARP 层的源IP 地址为主机 A 的IP 地址,将ARP 层的源MAC 地址填为主机B 的MAC 地址,将MAC 层的源地址填为主机A 的MAC 地址,发送这个数据包。当到达目的主机时,由于ARP特性:当系统收到ARP 请求或应答时,都要把请求端的硬件地址和协议地址填入ARP 高速缓存。所以在向ARP
高速缓存中添加表项时,添加的是主机 A 的IP 地址和主机 B 的MAC 地址值。当要向主机 A 发送数据包时,要发送的数据包的目的MAC 地址填入了由高速缓存中提取的地址(主机 B 的MAC 地址),这样,要发送给主机A的数据包被发送给了主机B。
实验 3.3 ICMP Redirect
练习一利用ICMP 重定向进行信息窃取
描述:主机可能会把某数据发送到一个错误的路由。在这种情况下,收到该数据的路由器会把数据转发给正确的路由器,同时,它会向主机发送ICMP 重定向报文,来改变主机的路由表。给主机来指出存在一个更好的路由。
试验时,主机A给E发送报文,主机B作为路由器,主机C给A发送ICMP重定向报文,在网关地址中添加自己的IP地址,并按照上表填写ICMP数据部分,此时主机A 的路由表中出现了主机A到E的一条记录,网关是C的IP地址;
问题:说明ICMP 重定向的意义.
意义:ICMP 重定向使得客户端管理工作大大减少,使得对于主机的路由功能要求大大降低。而且当路由线路非最优化是线路的速度一定有所损失。而有了重定向之后可以很快的修改非最优线路提高通信速度。
实验四UDP
练习一利用仿真编辑器编辑UDP 数据包并发送
描述:UDP和TCP都是传输层的协议,他们被应用层使用,为了实现多路复用和多路分解,应用层使用了端口号,所以UDP中需要填写源端口和目的端口.
问题:①将UDP 的校验和填“0”,在捕获包中查看校验和是否正确?
正,UDP没有纠错能力,也没有回执机制,所以即使它能够发现自身的错误,也没有能力和必要去纠正错误
练习二UDP 单播通信
描述:使用UDP工具进行通信, 确认UDP没有确认报文;
练习三利用仿真编辑器编辑UDP 数据包,利用工具接收
描述:向目的主机的没有开放的端口发送UDP,会产生目的端口不可达的ICMP信息.
练习四UDP 受限广播通信
描述:使用UDP通信工具,在受限广播地址(全是1)上向发送UDP广播,相连的设备无论是否在同一个网段之内,都能够收到信息,该报文的目的MAC地址是FFFFFF-FFFFFF.
练习五UDP 直接广播通信
描述:使用UDP工具,在直接广播地址上(网络号+255)上发送广播,只有同一个网段的设备能够接收到, 该报文的目的MAC地址是FFFFFF-FFFFFF.
问题: 说明受限广播和直接广播的区别?
直接广播地址包括一个有效网络号和一个全 1 的广播号,主机可能还不知道他所在网络的网络掩码,路由器可能对该种数据报进行转发。
受限广播地址是一个32 位全为1 的IP 地址,在任何情况下这样的数据包仅出现在本地网络中,路由器不对该种数据报进行转发。
练习六利用仿真编辑器编辑IPV6 的UDP 数据包并发送
描述:在UDP上,IPv4和IPv6没有区别
练习七运行netstat 命令