实验一
实验项目名称:网络流量捕获与网络设备模拟器实验(2学时)
一、实验目的与要求
(1)掌握Windows、Linux中常用网络命令的使用;
(2)掌握使用网络流量捕获软件Wireshark捕获网络数据、分析协议数据封装格式的方法;
(3)掌握Cisco网络模拟器 Packet tracer 的基本使用方法。
二、实验原理
(1)windows 环境下常用的网络命令介绍:1)IP 地址与以太网卡硬件地址查看命令:ipconfig;2)地址解析命令:ARP;3)显示、增加和删除本地路由表命令:route;4)网络连通性测试命令:ping;5)跟踪路由命令:tracert。
1)ipconfig 命令
Ipconfig 命令应该是最基础的命令了,主要功能就是显示用户所在主机内部的 IP 协议的配置信息等资料。
它的主要参数有:
①、all:显示与 TCP/IP 协议相关的所有细节信息,其中包括测试的主机名、IP 地址、子网掩码、节点类型、是否启用 IP 路由、网卡的物理地址、默认网关等。
②、renew all:更新全部适配器的通信配置情况,所有测试重新开始。
③、release all:释放全部适配器的通信配置情况。
④、renew n:更新第 n 号适配器的通信配置情况,所有测试重新开始。
例如: C:\>ipconfig ,显示如下:
Windows IP Configuration
Ethernet adapter 本地连接:
Connection-specific DNS Suffix . :
10
IP Address. . . . . . . . . . . . : 192.168.0.14
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.0.1
2)Arp 命令
显示和修改IP地址与物理地址之间的映射关系。该命令只有在安装了 TCP/IP 协议之后才可用。
arp -a [inet_addr] [-N [if_addr]]
arp -d inet_addr [if_addr]
arp -s inet_addr ether_addr [if_addr]
参数:
-a(或 g):通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,
则只显示指定计算机的 IP 和物理地址。
inet_addr:以加点的十进制标记指定 IP 地址。
-N:显示由 if_addr 指定的网络界面 ARP 项。
if_addr:指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。
-d:删除由 inet_addr 指定的项。
-s:在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的 6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。
ether_addr:指定物理地址。
3)route命令
用来显示、增加和删除本地路由表条目。
命令格式为:
route [-f] [-p] [-4|-6][Command] [Destination] [mask Netmask] [Gateway] [metric Metric] [if Interface]
–f:用于清除路由表。
-p:用于永久保留某条路由(即在系统重启时不会丢失路由)
-4:强制使用IPv4。
-6:强制使用IPv6。
Command:主要有PRINT(打印)、ADD(添加)、DELETE(删除)、CHANGE:(修改)共4个命令。
Destination:代表所要达到的目标IP地址。
MASK:是子网掩码的关键字。
Netmask:代表具体的子网掩码,如果不加说明,默认是255.255.255.255(单机IP地址),因此键入掩码时候要特别小心,要确认添加的是某个IP地址还是IP网段。如果代表全部出口子网掩码可用0.0.0.0。
Gateway:代表出口网关。
interface和metric分别代表特殊路由的接口数目和到达目标地址的代价,一般可不予理会。
4)ping 命令
PING 命令是一个在网络中非常重要的并且常用的命令,主要是用来测试网络是否连通。该命令通过发送一个 ICMP(网络控制消息协议)包的回应来看是否和对方连通,一般我们用来测试目标主机是否可以连接,或者可以通过 TTL值来判断对方的操作系统的版本。
常用参数说明:-a -t -r
使用举例:
Ping 计算机名 ping wangluo21 //获取计算机 IP
Ping IP 地址 ping -a 172.16.22.36 //获取计算机名
Ping 域名 ping www.ecjtu.jx.cn
比如你想测试你和 IP 地址为 192.168.0.1 的机器是否连通,那么就可以使用这个命令:ping 192.168.0.1,那么如果连通就会有如下返回:
C:\>ping 192.168.0.1
Pinging 192.168.0.1 with 32 bytes of data:
Reply from 192.168.0.1: bytes=32 time<1ms TTL=128
。。。。。
Ping statistics for 192.168.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
如果不连通的话,就会返回超时:
Pinging 192.168.0.1 with 32 bytes of data:
Request timed out.
。。。。。。.
Ping statistics for 192.168.0.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
那么就证明你和该计算机的网络不通,也许是对方没有上网,或者装了防火墙。在局域网中,如果是同一个工作组的机器,你可以通过 ping 对方的机器名称获得对方的 IP 地址。
参数:
-t 可以不间断的向一个机器发送包
-l 包大小参数还能设定发送包的最大值,这样差不多具有了 DoS 的功能了,也就是在黑客技术中的洪水攻击,最大值为 65500。如:
C:\>ping 192.168.0.1 -t -l 65500
因为加了-t 参数,ping 命令本身是不会停止的,于是我们就可以使用 Ctrl +C 来终止该命令。ping 命令还有一些别的参数,请自己参考帮助。
5)Tracert 命令
tracert 命令主要用来显示数据包到达目的主机所经过的路径,显示数据包经过的中继节点清单和到达时间。该命令的使用格式:
tracert 主机 IP 地址或主机名
该诊断实用程序将包含不同生存时间 (TTL) 值的 Internet 控制消息协议(ICMP) 回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的 TTL 之前至少递减 1,必需路径上的每个路由器,所以 TTL 是有效的跃点计数。数据包上的 TTL 到达 0 时,路由器应该将“ICMP 已超时”的消息发送回源系统。Tracert 先发送 TTL 为 1 的回显数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP 已超时”的消息来确定路由。不过,有些路由器悄悄地下传包含过期 TTL 值的数据包,而 tracert 看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
/d:指定不将地址解析为计算机名。
-h maximum_hops:指定搜索目标的最大跃点数。
-j computer-list:指定沿 computer-list 的稀疏源路由。
-w timeout:每次应答等待 timeout 指定的微秒数。
target_name:目标计算机的名称。
执行结果返回数据包到达目的主机前所历的中断站清单,并显示到达每个继站的时间。该功能同 ping 命令类似,但它所看到的信息要比 ping 命令详细得多,它把你送出的到某一站点的请求包,所走的全部路由均告诉你,并且告诉你通过该路由的 IP 是多少,通过该 IP 的时延是多少。 该命令参数有:
-d:不解析目标主机的名称
-h: maximum_hops 指定搜索到目标地址的最大跳跃数
-j:host_list 按照主机列表中的地址释放源路由
-w:timeout 指定超时时间间隔,程序默认的时间单位是毫秒
使用 tracert 命令可以很好的连接和目标主机的连接通道,一般为下一不的入侵或者测试获得详细的网络信息打好基础,例如中途经过多少次信息中转,每次经过一个中转站时花费了多长时间。通过这些时间,我们可以很方便地查出用户主机与目标网站之间的线路到底是在什么地方出了故障等情况。如果我们在tracert 命令后面加上一些参数,还可以检测到其他更详细的信息。例如使用参数-d,可以指定程序在跟踪主机的路径信息时,同时也解析目标主机的域名。
我们简单的使用该命令来测试到达 www.baidu.com 的时间和经过的 IP 地址:
C:\>tracert www.baidu.com
16
Tracing route to www.baidu.com [202.108.250.228]
over a maximum of 30 hops:
1 <1 ms <1 ms <1 ms 192.168.0.1
2 1 ms <1 ms 1 ms 211.152.23.6
3 * 5 ms 3 ms 211.152.47.253
4 3 ms 3 ms 3 ms 210.78.156.66
5 3 ms 9 ms 4 ms 211.99.57.113
6 6 ms 5 ms 7 ms 202.108.250.228
Trace complete.
看信息我们知道我们通过了 6 个 IP 节点和使用的时间。第一个一般是我们的机器是从该 IP 出去的,第二个开始就是经过的路由,最后一个当然就是我们的目的地了。在入侵中,如果你肯对这些地址层层追查的话,一定会有大收获啦。
(2)Wireshark 软件介绍与应用案例
下载、安装 Wireshark
设用户计算机的网卡(以太网适配器)本地连接配置如下:
物理地址. . . . . . . . . . . . . : 74-D4-35-79-68-65
17
DHCP 已启用 . . . . . . . . . . . : 是
自动配置已启用. . . . . . . . . . : 是
本地链接 IPv6 地址. . . . . . . . : fe80::d843:50ba:8a23:5524%11(首选)
IPv4 地址 . . . . . . . . . . . . : 10.3.9.8(首选)
子网掩码 . . . . . . . . . . . . : 255.255.255.0
获得租约的时间 . . . . . . . . . : 2022 年 12 月 3 日 14:50:51
租约过期的时间 . . . . . . . . . : 2022 年 12 月 3 日 22:50:51
默认网关. . . . . . . . . . . . . : 10.3.9.254
DHCP 服务器 . . . . . . . . . . . : 211.64.120.175
DHCPv6 IAID . . . . . . . . . . . : 242537525
DHCPv6 客户端 DUID . . . . . . . : 00-01-00-01-1B-CF-E0-67-74-D4-35-79-68-65
DNS 服务器 . . . . . . . . . . . : 211.137.191.26
218.201.96.130
TCPIP 上的 NetBIOS . . . . . . . : 已启用
Wireshark启动后,如图所示:
抓包步骤:
1)点击Capture菜单,选Interfaces…项。
2)打开如下图所示窗口。
3)选择要抓包的接口右边的Start按钮,本例选择了抓取IP地址为10.3.9.8的接口。
点击Start按钮后将启动抓包过程。
注意:为配合抓包,需要进行网络通信。
1)要抓ARP分组的包、ICMP报文的包、UDP数据报,可以在CMD窗口中,使用命令ARP -D删除当前ARP缓存,使用PING命令PING某台主机IP地址
使用TRACERT命令跟踪分组从源点到终点的路径(如下图)。
2)要抓取TCP报文段,需打开IE浏览器,访问一个WWW网站(例如www.baidu.com)。
将窗口切换到Wireshark,可以看到抓到了TCP、UDP、ICMP、ARP的包,如下图所示。
下面分析所用到的包,其抓包的环境是:
1)实验计算机所安装操作系统为Windows 7
2)在CMD窗口运行“ARP –D”命令删除ARP缓存,以便抓取ARP分组。
3)在CMD窗口运行“PING 10.3.9.254”,用以抓取ICMP报文。
4)在CMD窗口运行“TRACERT 10.3.9.254”,用以抓取UDP数据报和ICMP报文。
5)在浏览器窗口打开HTTP://WWW.BAIDU.COM网站,用以抓取TCP报文段。
点击Stop按钮完成抓包。如下图所示。
(3)Packet Tracer 软件使用介绍
Packet Tracer 是与新版 CCNA Discovery 和 CCNA Exploration 并行发布的一个网络模拟器。PT 提供可视化、可交互的用户图形界面,来模拟各种网络设备及其网络处理过程,使得实验更直观、更灵活、更方便。
PT 提供两个工作区:逻辑工作区(Logical)与物理工作区(Physical)。
逻辑工作区:主要工作区,在该区域里面完成网络设备的逻辑连接及配置。
物理工作区:该区域提供了办公地点(城市、办公室、工作间等)和设备的直观图,可以对它们进行相应配置。
左上角可以切换这两个工作区域。
PT 提供两种工作模式:实时模式(Real-time)与模拟模式(simulation)。
实时模式:默认模式。提供实时的设备配置和 Cisco IOS CLI(Command Line Interface)模拟。
模拟模式:Simulation 模式用于模拟数据包的产生、传递和接收过程,可逐步查看。
右下角可以切换这两种模式。
Packet Tracer 界面操作如下:
逻辑工作区(Logical Workplace)(中间最大块的地方):显示当前的拓扑结构和各个设备的状态。
图例导航区(Symbol Navigation)(左下角):切换不同的设备图例。如单击路由器图标,右边出现所有可选的路由器型号。
从导航区可以拖动某个设备图标到工作区。单击工作区中的设备,可以调出该设备的设置界面:
1)在 Physical 标签下可以进行设备模块的配置。默认情况下,设备没有安装任何模块。
我们可以从左边的 MODULES 列表拖动需要的模块到设备的空插槽中(左下角有相应的模块说明)。注意拖放前要关闭设备的电源(在图片中点击电源即可)。
2)在 Config 标签下可以进行图形界面交互配置(GUI),下面文本框会显示等价的命令行语句。
配置包括 GLOBAL、ROUTING、SWITCHING、INTERFACE 四个大项。点击每项可以出现具体的子项列表(随设备不同而略有不同):
GLOBAL:Settings
ROUTING:Static;RIP
SWITCHING:VLAN Database
INTERFACE:包括设备上的所有物理接口,如 FastEthernet0/1 等。
3)在 CLI 标签下可以进行命令行的配置,它与在交互界面下进行的配置是等效的。
三、预习与准备
预习有关常用网络命令、网络数据捕获软件Wireshark以及网络模拟软件Packet tracer的使用方法,准备好安装有Window 7或Window10系统以及Wireshark和Packet tracer软件的联网PC机一台。
四、实验过程记载
(1)安装相应数据捕获软件Wireshark和网络模拟软件Packet tracer。
(2)使用Ipconfig /all命令查看计算机网卡属性,获取主机IP地址、默认网关地址、网卡硬件地址、DNS服务器地址等地址信息。
(3)首先使用arp –a命令查看和分析本机当前ARP缓存中的内容;然后使用arp –d命令删除本机当前ARP 缓存中的内容,再用arp –a命令查看本机当前ARP 缓存中的内容是否已经删除;最后用arp –s命令将相邻同学主机的IP地址和MAC地址信息添加到ARP缓存中,再用arp –a命令查看手动增加的静态ARP缓存是否添加成功。
(4)使用route print命令显示本机的路由表;使用route add 10.0.0.0 mask 255.0.0.0 192.168.182.1增加一条目的地址为10.0.0.0、子网掩码为255.0.0.0的路由条目,然后使用route print命令查看本地路由表中是否添加了这条路由记录;使用route delete 10.0.0.0 mask 255.0.0.0删除之前添加的那条路由记录,再用route print命令查看本地路由表中之前添加的那条路由记录是否被删除了。
(5)启动Wireshark,分别捕获ping 一个无法访问的主机IP地址(如10.10.10.10)、ping 网关,Tracert www.baidu.com等命令的数据。
(6)使用网络模拟软件Packet tracer组成简单网络并正确连接设备。
1.建立实验拓扑
2.配置设备配置
3.测试连通性
五、实验结论(或总结)
通过这次实验中,我对Packet Tracer的各种网络硬件都有了初步的了解,通过连接小型的网络,配置IP地址,以及使用命今行配置路由器、ping命今进行网络连通性测试,我掌握了使用Packet Tracer模拟网络场景的基本方法,加深了对网络环境、网络设备和网络协议交互过程等方面的理解。、