2018年12月26日
1. 了解Windows操作系统提供的各种网络命令的功能。
2. 熟悉Windows操作系统提供的各种网络命令的使用方法和输出格式。
3、掌握常用的网络命令,能用ping 、ipconfig等命令工具来进行网络测试、使用tracert路由跟踪命令、使用route、netstat、arp等命令查看网络状态。
1、常用网络测试命令PING的使用
2、网络配置查看命令IPCONFIG的使用
3、网络连接统计命令NETSTAT的使用
4、网络路由表操作命令ROUTE的使用
5、地址解析命令ARP的使用
6、路由跟踪tracert命令的使用
1、工作原理
Ping的主要作用是验证与远程计算机的连接。该命令只有在安装了 TCP/IP 协议后才可以使用。向远程计算机通过ICMP协议发送特定的数据包,然后等待回应并接收返回的数据包,对每个接收的数据包均根据传输的消息进行验证。默认情况下,传输四个包含 32 字节数据(由字母组成的一个循环大写字母序列)的回显数据包。
过程如下:
(1)通过将 ICMP 回显数据包发送到计算机,并侦听回显回复数据包来验证与一台或多台远程计算机的连接。
(2)每个发送的数据包最多等待一秒。
(3)打印已传输和接收的数据包数。
2、用法
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]] [-w timeout] destination-list
参数一览表:
编号 |
参数 |
描述 |
1 |
-t |
Ping 指定的计算机直到中断。 |
2 |
-a |
将地址解析为计算机名。 |
3 |
-n count |
发送 count 指定的 ECHO 数据包数。默认值为 4。 |
4 |
-l length |
发送包含由 length 指定的数据量的 ECHO 数据包。默认为 32 字节;最大值是 65,527。 |
5 |
-f |
在数据包中发送“不要分段”标志。数据包就不会被路由上的网关分段。 |
6 |
-i ttl |
将“生存时间”字段设置为 ttl 指定的值。 |
7 |
-v tos |
将“服务类型”字段设置为 tos 指定的值。 |
8 |
-r count |
在“记录路由”字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。 |
9 |
-s count |
指定 count 指定的跃点数的时间戳。 |
10 |
-j computer-list |
利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为 9。 |
11 |
-k computer-list |
利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为 9。 |
12 |
-w timeout |
指定超时间隔,单位为毫秒。 |
13 |
destination-list |
指定要 ping 的远程计算机。 |
3、示例
(1)判断本地的TCP/IP协议栈是否已安装
Ping 127.0.0.1 或 Ping 机器名
说明:若显示Reply from 127.0.0.1....信息则说明已安装。
(2)判断能否到达指定IP地址的远程计算机
C:\>Ping 192.168.0.1 或 202.102.245.25
说明:若显示Reply ...信息则说明能够到达,若显示Request timed out.则说明不能够到达。
(3)根据域名获得其对应的IP地址
C:\>Ping www.domain.com 回车
说明:显示的Reply from xxx.xxx.xxx.xxx…信息则xxx.xxx.xxx.xxx就是域名对应的IP地址。
(4)根据IP地址获取域名
C:\>Ping -a xxx.xxx.xxx.xxx
说明:若显示Pinging www.domain.com [xxx.xxx.xxx.xxx]...信息则www.domain.com就是IP对应的域名。
(5)根据IP地址获取机器名
C:\>Ping –a 127.0.0.1
说明:若显示Pinging janker [127.0.0.1]...信息则janker就是IP对应的机器名。此方法只能反解本地的机器名。
(5)Ping指定的IP地址30次
C:\>Ping –n 30 202.102.245.25
(6)用400字节长的包Ping指定的IP地址
C:\>Ping –l 400 202.102.245.25
1、工作原理
该工具主要用于发现和解决TCP/IP 网络问题,可以用该工具获得主机配置信息,包括IP 地址、子网掩码和默认网关等等。
2、用法
(1)查看所有配置信息: Ipconfig /all
1、工作原理
Netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。Netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
该工具显示计算机上的TCP连接表、UDP监听者表以及IP协议统计。通常可以通过这些信息得知计算机上正在打开的端口和服务。可以看到机器正在和那些IP地址以TCP、UDP或其他协议进行连接的状态。通过该命令可判断计算机是否有非法连接等,如果有非正常端口在监听中,就需要注意。
2、用法
可以使用 netstat 命令显示协议统计信息和当前的 TCP/IP 连接。netstat -a 命令将显示所有连接,而 netstat -r 显示路由表和活动连接。netstat -e 命令将显示 Ethernet 统计信息,而 netstat -s 显示每个协议的统计信息。如果使用 netstat -n,则不能将地址和端口号转换成名称。
3、示例
(1)显示所有连接
C:\>netstat –a
1、作用
该工具用于显示和控制您的机器IP的路由表,主要显示的信息有:目标地址、网络掩码、网关和本地IP地址等。
2、用法
route [-f] [-p] [command [destination] [mask subnetmask] [gateway] [metric costmetric]]
参数说明
(1)参数
-f 清除所有网关入口的路由表。如果该参数与某个命令组合使用,路由表将在运行命令前清除。
-p 该参数与 add 命令一起使用时,将使路由在系统引导程序之间持久存在。默认情况下,系统重新启动时不保留路由。与 print 命令一起使用时,显示已注册的持久路由列表。忽略其他所有总是影响相应持久路由的命令。
(2)command
print 打印路由
add 添加路由
delete 删除路由
change 更改现存路由
destination 指定发送 command 的计算机。
mask subnetmask 指定与该路由条目关联的子网掩码。如果没有指定,将使用 255.255.255.255。
gateway 指定网关。
名为Networks 的网络数据库文件和名为 Hosts 的计算机名数据库文件中均引用全部 destination 或 gateway 使用的符号名称。如果命令是 print 或 delete,目标和网关还可以使用通配符,也可以省略网关参数。
metric costmetric 指派整数跃点数(从 1 到 9999)在计算最快速、最可靠和(或)最便宜的路由时使用。
3、示例
(1)要显示IP路由表的完整内容,执行以下命令:
route print
(2)要显示IP路由表中以10.开始的路由,执行以下命令:
route print 10.*
1、工作原理
ARP是地址解析协议,将一个IP地址解析成MAC地址。该工具用于查看和处理ARP缓存。
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。
ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依靠交换机来进行,而是在本机上建立一个用来记录常用主机IP-MAC映射表,即ARP表。
2、用法
arp -a [inet_addr] [-N [if_addr]]显示IP地址与mac地址的绑定
arp -d inet_addr [if_addr]删除列表
arp -s inet_addr ether_addr [if_addr]添加静态列表
参数说明:
-a 通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,则只显示指定计算机的 IP 和物理地址。
-g 与 -a 相同。
inet_addr 以加点的十进制标记指定 IP 地址,比如:202.102.245.32。
-N 显示由 if_addr 指定的网络界面 ARP 项。
if_addr 指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。
-d 删除由 inet_addr 指定的项。
-s 在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的 6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。
ether_addr 指定物理地址。
3、示例
(1)显示当前 ARP 项
C:\>arp -a
(2)添加一个静态入口
C:\>arp -s 157.55.85.212 00-aa-00-62-c6-09
1、工作原理
Tracert(跟踪路由)是路由跟踪实用程序,用于确定 IP数据报访问目标所采取的路径。Tracert 命令用 IP 生存时间 (TTL) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。
该诊断实用程序将包含不同生存时间 (TTL) 值的 Internet 控制消息协议 (ICMP)回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的 TTL 之前至少递减 1,必需路径上的每个路由器,所以 TTL 是有效的跃点计数。数据包上的 TTL 到达 0 时,路由器应该将“ICMP 已超时”的消息发送回源系统。Tracert 先发送 TTL 为 1 的回显数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP 已超时”的消息来确定路由。
2、用法
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
参数说明
-d 指定不将地址解析为计算机名.
-h maximum_hops 指定搜索目标的最大跃点数.
-j host-list 与主机列表一起的松散源路由(仅适用于IPv4),指定沿host-list的稀疏源路由列表序进行转发。host-list是以空格隔开的多个路由器IP地址,最多9个。
-w timeout 等待每个回复的超时时间(以毫秒为单位).
-R 跟踪往返行程路径(仅适用于 IPv6).
-S srcaddr 要使用的源地址(仅适用于 IPv6).
-4 强制使用 IPv4.
-6 强制使用 IPv6.
target_name 目标计算机的名称.
3、示例
(1)在下例中,数据包必须通过两个路由器(10.0.0.1 和 192.168.0.1)才能到达主机172.16.0.99。主机的默认网关是 10.0.0.1,192.168.0.0 网络上的路由器的 IP 地址是 192.168.0.1。
C:\>tracert -d 172.16.0.99
Tracing route to 172.16.0.99 over a maximum of 30 hops
1 2s 3s 2s 10.0.0.1
2 75 ms 83 ms 88 ms 192.168.0.1
3 73 ms 79 ms 93 ms 172.16.0.99
Trace complete.
根据实验内容,每种命令选择2个典型参数进行实验,并截屏,撰写实验报告和实验心得。
利用packet tracer 模拟器来模拟实验环境,进行路由器或交换机的基本配置实验。
路由器的管理方式分为:带内管理和带外管理
路由器的管理方式可以分为带内管理和带外管理两种管理模式。所谓带内管理,是指管理控制信息与数据业务信息通过同一个信道传送。使用带内管理,可以通过交换机的以太网端口对设备进行远程管理配置,目前我们使用的网络管理手段基本上都是带内管理。 在带外管理模式中,网络的管理控制信息与用户数据业务信息在不同的信道传送。
带内管理和带外管理的最大区别在于,带内管理的管理控制信息占用业务带宽,其管理方式是通过网络来实施的,当网络中出现故障时,无论是数据传输还是管理控制都无法正常进行,这是带内管理最大的缺陷;而带外管理是设备为管理控制提供了专门的带宽,不占用设备的原有网络资源,不依托于设备自身的操作系统和网络接口。
简单地说,带外管理就是不通过路由器的以太网口进行管理的方式,而带内管理的管理信息则需要通过以太网口来传送。 从路由器的访问方式来说,通过Telnet、Web、SNMP方式对交换机进行远程管理都属于带内管理,而通过Console口对它进行管理的方式属于带外管理。
通过路由器的console端口管理交换机属于带外管理,这种管理方式不占用交换机的网络端口,第一次配置交换机必须利用Console端口配置。通过Telnet、Web、SNMP等方式属于带内管理。
命令行模式主要包括:
用户模式 switch>
特权模式 switch#
全局配置模式 switch(config)#
端口模式 switch(config-if)#
基本命令行:
进入特权模式:en
进入全局配置模式:config t
返回上级模式:exit
返回特权模式:end
帮助信息:? Copy?
命令简写: 如 en
命令补齐: Tab
快捷键: Ctrl+C(中断), Ctrl+Z(类似end)
图1 路由基本配置拓扑图
交换机端口默认状态是开启的,路由器端口默认状态下是关闭的。开启是可路由器配置中直接开启(在配置中选择相应的端口开启),也可利用命令行开启。
步骤
Router(config)# hostname r1
R1(config)#enable password 111 //设置特权模式密码(明文密码)
R1(config)#banner motd # welcome! # //设置登陆banner
R1(config)# line vty 0 4 //以上是进入路由器的 VTY 虚拟终端下,“vty 0 4”表示 vty 0 到 vty 4,共 5 个虚拟终端
R1(config-line)# password 1111//设置telnet 登录密码
R1(config-line)# login
R1(config-line)#exit
R1(config)# int f0/0
R1(config-if)# ip address 192.168.1.1 255.255.255.0 //配置IP
R1(config-if)#no shutdown //开启端口, 默认时路由器的所有接口都是关闭的
R1(config-line)#exit
6、在PC上测试,ping 192.168.1.1; telnet远程登录192.168.1.1
根据实验内容实验,并截屏,撰写实验报告和实验心得。
(1)掌握IP协议报文格式。
(2)对捕捉到的包进行IP分析。
用Wireshark过滤出IP数据包,查看并分析具体的IP包的内容。
1、wireshark简介
Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。在GNUGPL通用许可证的保障范围底下,使用者可以以免费的代价取得软件与其程式码,并拥有针对其源代码修改及客制化的权利。Ethereal是目前全世界最广泛的网络封包分析软件之一。
Wireshark可以帮助网络管理员检测网络问题,帮助网络安全工程师检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协议除错,普通使用者使用Wireshark来学习网络协定的相关知识当然,有的人用它来寻找一些敏感信息
Wireshark不是入侵侦测软件(Intrusion DetectionSoftware,IDS)。对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。然而,仔细分析Wireshark撷取的封包能够帮助使用者对于网络行为有更清楚的了解。Wireshark不会对网络封包产生内容的修改,它只会反映出目前流通的封包信息,它也不会送出封包至网络上
2、IP数据报格式
IP数据报TCP/IP协议定义了一个在因特网上传输的包,称为IP数据报(IP Datagram)。这是一个与硬件无关的虚拟包,由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。首部中的源地址和目的地址都是IP协议地址。IP数据包格式如图1所示。
图1 IP包格式
交换式网络、Windows操作系统,Wireshark网络抓包工具。
1、熟悉wireshark软件的常用操作
(1)学习捕捉包的开始和停止。
图2 Wireshark启动界面
点击File按钮下方的快捷键,出现以下的捕捉接口对话框,如图3所示。
图3 选定捕获网卡接口Capture Interfaces
下面对上面常见的按钮做下简单描述。
1)Descrption(描述):显示的本机的以太网卡等网路接口信息,一般采用以太网接口进行数据捕捉。
2)IP:显示接口的IP地址,没有则为Unkown。
3)Packets:显示打开窗口后一共收到的收到的包的个数。
4)Packets/s:显示的最近一秒接受的数据包的个数。
5)Start:以上一次的设置或默认设置开始抓包。
6)Options:打开捕捉选项对话框,对捕捉方式进行设置。
7)Details:打开对话框显示接口的详细信息。
8)Close:关闭对话框。
点击图4中捕捉接口对话框中的对应接口后的Options按钮,进行捕捉设置(如不设置则选择默认配置进行捕捉)。如图4所示为捕获设置。
图4 捕获数据包的参数设置
下面对上面常见的按钮做下简单描述。对话框内容介绍:
1)Interface 于指定进行捕捉的接口。
2)IP address 接口的IP地址,没有则显示Unkown。
3)Link-layer header type 除非有特殊设置,否则建议保持默认状态。
4)Capture packets in promiscuous mode 通常所说的“混乱模式”,如果没有指定则只能捕捉进出PC的数据包(不能捕捉整个局域网中的数据包)。
5)Limit each packet to N bytes 限制每个包的最大字节数,默认值为65535,适用于绝大多数协议。
6)Capture Filter(s) 对需要抓的包的类型进行设置。
通常需要对捕获的大量包进行设置,点击弹出以下对话框,如图5所示。
图5 协议过滤设置
点击选择需要捕捉的数据包类型。如图中所示要捕获TCP数据包。其他为文件的保存设置,可以修改以实现更合理化的使用。
在进行完捕捉设置之后尽可以对指定类型的数据包进行捕捉了。点击以太网卡后面的Start按钮开始抓包。如图6所示。
图6开始捕获数据包
则出现以下的抓包主界面,如图7所示。
图7 Wireshark抓包主界面
图中主窗口显示的信息即为所抓到的包。
点击捕捉设置对话框中的Stop按钮,如图8所示。
图8停止捕获数据包
(2)主窗口界面
图9 Wireshark菜单栏
在Filter中输入过滤的内容进行设置,如图10所示。
图10 过滤工具栏
点击Filter过滤按钮出现以下图的选择对话框,对主窗口中的数据包信息进行过滤。例如,只显示TCP数据包,ARP数据包等,从而减少我们分析数据包时无用信息的干扰。在输入过程中会进行语法检查。如果您输入的格式不正确,或者未输入完成,则背景显示为红色。直到您输入合法的表达式,背景会变为绿色。
可以通过以下两种方法实现过滤。一方面可以在如图4所示的对话框中选择合适的条目;另外一方面图10直接在工具栏的编辑框中输入需要输出的数据包类型。
如图11所示为数据包列表,点击任意一项则显示详细的数据包内容。
图11 数据包列表
点击前面的+号可以查看数据包的详细信息。如帧的长度,捕获的时间,数据包中包含的协议等。同时可以对各层协议中添加的封装信息进行查看和分析。
“解析器”在Wireshark里也被称为“16进制数据查看面板”。这里显示的内容与“封装详细信息相同”,只是改为16进制的格式表示。如图12所示。
图12 以16进制显示被捕获数据包
2、抓取并分析IP包
(1)用Wireshar捕捉IP包
图2 过滤IP数据包
在IE浏览器中访问任何网站。
(2)对所抓到的IP包分析其结构
在Packet List面板中单击其中任意条目,包的其他情况将会显示在另外两个面板中。以一下条目为例。
点击流水编号为42的信息后,会显示如所图3所示的层层封装信息。
图3 IP前后相关封装
图4 IP数据包格式分析
结合并参考本次实验范例,撰写实验报告。重点阐述IP协议格式及其字段介绍,IP封装等,掌握基本操作要点和信息分析,最后给出实验结果和实验总结。
(1)掌握TCP建立连接的工作机制。
(2)掌握借助Wireshark捕捉TCP三次握手机制。
(3)掌握SYN、ACK标志的使用。
用Wireshark软件捕捉TCP三次握手机制。
TCP报文段格式如图1所示。
图1 TCP报文段格式
三次握手机制实验原理如图2所示。
图2 三次握手机制工作示意图
交换式网络、windows操作系统、Wireshark软件
注意:在做这个实验的过程中,例如从打开某一网页获得TCP包从而分析TCP的三次握手机制过程中,容易犯先打开网页再开始抓包的错误,正确的做法是先在Whireshark软件中设置TCP抓包,然后再打开一个网页。
(1)开启Wireshark软件
在捕捉接口对话框中选中网卡接口,然后点击“Optinos”进行包过滤。
(2)过滤TCP数据包
在随后出现的的下列对话框中,在“Capture Filter”处填写TCP,从而捕捉到TCP包,进而获得TCP三次握手的建立机制,然后点击“Start”。如图3示。
图3 TCP过滤设置
(3)TCP三次握手机制生成与分析
访问某一网站,则Whireshark捕捉到的TCP三次握手的信息,如图4所示,以前三行为例解析一下。
图4 捕获到的三次握手通信包
ecwcfg向http发送一个标志为SYN=1且含有初始化序列值seq=0的数据包,开始建立会话,在初始化会话过程中,通信双方还在窗口大小Win、最大报文段长度MSS等方面进行协商。同时Source port为2263,Destination port为80,打开编号为1所示的下拉菜单,会出现对应项的更加详细的解析,如图5所示。
图5 SYN第一次握手
http向ecwcfg发送包含确认值的数据段,如图6总Transmission Control Protocol(TCP)所示,其值等于所收到的序列值加一,即ACK=1,其自身的序列号为0;并对MSS更改为1452。源端口号Src Port为80,目的端口号Dst Port为2263。
图6 SYN、ACK第二次握手
ecwcfg向http发送确认值Seq=1、Ack=1(ecwcfg接收到的序列值加1),这便完成了三次握手的建立。如图7所示对应答的应答为第三次握手。
图7 ACK第三次握手
7.实验总结
结合并参考本次实验范例,撰写实验报告。重点阐述标准位功能与作用、SYN序号的变化、协商机制,掌握三次握手机制的基本操作要点和信息分析,最后给出实验结果和实验总结。实验思考部分可选做。