文章目录

  • 关于计算机网络学习目标
  • 一、验证性实验
    • 1.ipconfig
    • 2.ping
    • 3.tracert
    • 4.ARP
    • 5.DHCP
    • 6.netstat
    • 7.DNS
    • 8.cache
  • 二、Wireshark 实验
    • 1.数据链路层
    • 2.网络层
    • 3.传输层
    • 4.应用层
  • 三、Cisco Packet Tracer 实验
    • 1.用CPT软件加入主机和集线器
    • 2.交换机接口地址列表
    • 3.生成树协议
    • 4.虚拟局域网VLAN

关于计算机网络学习目标

学习计算机网络的基本原理,熟悉网络的运行方式,能对相应的网络故障进行诊断与解决,能进行基本的网络管理、规划和维护等,了解当前网络技术的发展。

一、验证性实验

这部分我们主要学习了一些命令行工具以及他的功能作用。

1.ipconfig

首先,我们学习ipconfig先理解他的概念,ipconfig 是微软操作系统的计算机上用来控制网络连接的一个命令行工具。它的主要用来显示当前网络连接的配置信息(/all 参数)。
我们打开Cmder 命令行窗口,输入ipconfig,回车。出现如下

之后我们同样查看旁边计算机,发现处于同一子网。我们是通过子网掩码来判断任意两台计算机的IP地址是否属于同一子网络。

一样的。

2.ping

ping(Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序 。ping 是工作在 TCP/IP 网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态。
我来ping一ping学校的官网。


原因有因为频繁地使用Ping命令会导致网络堵塞、降低传输效率,为了避免恶意的网络攻击,一般都会拒绝用户Ping服务器.我们学校禁止我们ping了,之前学习中老师也有提到,可能学校为了防止这种事就把我的Ping屏蔽了。
我来Ping一Ping其他的网站



可以Ping.
TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。TTL是IPv4报头的一个8 bit字段。

3.tracert

**TRACERT **(Trace Route 的组合缩写),也称为路由追踪,该命令行程序可用于跟踪 Internet 协议 (IP) 数据包传送到目标地址时经过的路径。
追踪百度!

查查



这个路径好奇怪哦,但之后也追踪了其他地方,发现跟其他的对比发现,路径中的节点无论是访问百度还是其他网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,因为数据出去需要经过网关。
图中的*号的意思是没有出现具体的信息反馈,请求超时。

4.ARP

ARP(Address Resolution Protocol)即地址解析协议,是用于根据给定网络层地址即 IP 地址,查找并得到其对应的数据链路层地址即 MAC地址的协议。 ARP 协议定义在 1982 年的 RFC 826。

运行== arp -a== 命令查看当前的 arp 缓存

然后 ping 一下旁边的计算机 IP

再次查看缓存

感觉没啥变化啊……
关于ARP,缓存中常常有网关的信息这是因为缓存本身记录着你有访问过的pc 网卡MAC物理地址,MAC物理地址,它是一个用来确认网络设备位置的位址。
静态分配IP地址含义:给每一台计算机分配一个固定的IP地址。
优点:是便于管理,可以免除在按用户方式计费时用户每次上网进行身份认证。
缺点:用户分配的地址可能被非法盗用。

5.DHCP

使用 ipconfig/release 命令释放自动获取的网络配置,并用 ==ipconfig/renew ==命令重新获取,了解 DHCP 工作过程和原理。实验如下图:



我们自动配置的IP地址和信息只是短暂性的解决计算机不能获取 DHCP 服务器的配置数据的问题,要真正的接入Internet还是需要本身计算机的正确IP地址。

6.netstat

无论是使用 TCP 还是 UDP,任何一个网络服务都与特定的端口(Port Number)关联在一起。因此,每个端口都对应于某个通信协议/服务。

netstat(Network Statistics)是在内核中访问网络连接状态及其相关信息的命令行程序,可以显示路由表、实际的网络连接和网络接口设备的状态信息,以及与 IP、TCP、UDP 和 ICMP 协议相关的统计数据,一般用于检验本机各端口的网络服务运行状况。

使用 netstat -an 命令,查看计算机当前的网络连接状况。




输入netstat -nat

输入== netstat -nslp==

打开的计算机端口,就是向 Internet 打开的一个通道。通过 netstat 命令,我们可以了解当前计算机哪些端口是打开的,从而找出一些恶意后台程序,分析其所作所为,并且可以进一步将相关端口关闭,降低安全风险.

7.DNS

** DNS**(Domain Name System)即域名系统,是互联网的一项服务。它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS 使用 TCP 和 UDP 的 53 号端口。

解析过的 DNS 记录将会被缓存,以利于加快解析速度。实验里我们使用 ipconfig /displaydns 命令查看。

同样的,我们可以使用== ipconfig /flushdns==命令来清除所有的 DNS 缓存。

当我们使用浏览器上网时,或多或少的会看到一些广告。某些网站的广告是非常没有节操的,所以我们一般可以通过安装浏览器插件如 AdGuard、AdBlocker 等来拦截和过滤。

8.cache

cache 即缓存,是 IT 领域一个重要的技术。我们此处提到的 cache 主要是浏览器缓存。

浏览器缓存是根据 HTTP 报文的缓存标识进行的,是性能优化中简单高效的一种优化方式了。一个优秀的缓存策略可以缩短网页请求资源的距离,减少延迟,并且由于缓存文件可以重复利用,还可以减少带宽,降低网络负荷。

打开 Chrome 或 Firefox 浏览器,访问 https://qige.io , F12 键 或== Ctrl + Shift + I 组合键==打开开发者工具,选择 Network 面板后刷新页面,我能在开发者工具底部看到加载该页面花费的时间。

二、Wireshark 实验

1.数据链路层

首先来熟悉 Ethernet 帧结构,使用 Wireshark 任意进行抓包,熟悉 Ethernet 帧的结构。


来ping一下百度看看会发生什么

现在在看抓包

下面就是可以看目的 MAC、源 MAC、类型、字段。理解内容。
来ping一ping隔壁电脑,再看看etherner II那一排,就是我的电脑的mac地址和隔壁电脑的mac地址

现在来ping一ping其他的网站



发现这个网站也屏蔽了ping,可惜。就看之前ping 的百度吧。
通过以上的实验,发现:
访问本子网的计算机时,目的 MAC 就是该主机的,访问非本子网的计算机时,目的 MAC 是网关的。原因是在ARP代理,访问非子网计算机时是通过路由器转接的,MAC地址是接入路由器端口的地址,再通过路由器发给相应计算机。所以会发现这个现象。
我们使用 ==arp -d * ==命令可以清空 arp 缓存。

2.网络层

使用 Wireshark 任意进行抓包(可用 ip 过滤),熟悉 IP 包的结构,如:版本、头部长度、总长度、TTL、协议类型等字段。
就跟之前的抓包一样

当长度超过1500B时就会被返回链路层进行分段, IP 的头部尽可能的精简。
根据规定,一个 IP 包最大可以有 64K 字节。但由于 Ethernet 帧的限制,当 IP 包的数据超过 1500 字节时就会被发送方的数据链路层分段,然后在接收方的网络层重组。

缺省的ping 命令只会向对方发送 32 个字节的数据。我们可以使用 ==ping 202.202.240.16 -l 2000 ==命令指定要发送的数据长度。此时使用 Wireshark 抓包(用 ip.addr == 202.202.240.16 进行过滤),了解 IP 包如何进行分段,如:分段标志、偏移量以及每个包的大小等。

超时啦。
过滤一下

IPv6 中,如果路由器遇到了一个大数据包,可以转发至能走动该数据报的出链路上。

在 IP 包头中有一个 TTL 字段用来限定该包可以在 Internet上传输多少跳(hops),一般该值设置为 64、128等。

在验证性实验部分我们使用了== tracert ==命令进行路由追踪。其原理是主动设置 IP 包的 TTL 值,从 1 开始逐渐增加,直至到达最终目的主机。

使用 tracert www.baidu.com 命令进行追踪,此时使用 Wireshark 抓包(用 icmp 过滤),分析每个发送包的 TTL 是如何进行改变的,从而理解路由追踪原理。


每到达一个节点返回一个信息,TTL逐渐增加1直到到达目的主机。在IPv4 中,TTL 虽然定义为生命期即 Time To Live,但现实中我们都以跳数/节点数进行设置。如果我收到一个包,其 TTL 的值为 50,那么可以推断这个包从源点到我之间有50跳。

3.传输层

我们用 Wireshark 任意抓包(可用 tcp 过滤),熟悉 TCP 段的结构,如:源端口、目的端口、序列号、确认号、各种标志位等字段。
同时也要用 Wireshark 任意抓包(可用 udp 过滤),熟悉 UDP 段的结构,如:源端口、目的端口、长度等。



由上我们可以看到 UDP 的头部比 TCP 简单得多,但两者都有源和目的端口号。在一台机器上,一个进程对应一个端口。端口用来唯一标识这个进程。源端口标识发起通信的那个进程,目的端口标识接受通信的那个进程。有了端口号,接受到报文后才能够知道将报文发送到哪个进程。

4.应用层

应用层的协议非常的多,我们只对 DNS 和 HTTP 进行相关的分析。
首先了解 DNS 解析,先使用 ipconfig /flushdns 命令清除缓存,再使用 nslookup qige.io 命令进行解析,同时用 Wireshark 任意抓包(可用 dns 过滤)。


发现对同一个站点,我们发出的 DNS 解析请求不止一个,思考原因是对于部署再服务器上地应用来说,不需要进行任何代码地修改就可以实现不同机器上地应用访问。

接下来我们来了解 HTTP 的请求和应答
打开浏览器访问任意网站,用 Wireshark 抓包(可用http 过滤再加上 Follow TCP Stream),不要立即停止 Wireshark 捕获,待页面显示完毕后再多等一段时间以将释放连接的包捕获。
我随意访问了一个网站

请求的头部有如下字段及其意义:

If-Modified-Since:只有当所请求的内容在指定的日期之后又经过修改才返回它,否则返回304“Not Modified”应答。
Pragma:指定“no-cache”值表示服务器必须返回一个刷新后的文档,即使它是代理服务器而且已经有了页面的本地拷贝。
Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页面。
User-Agent:浏览器类型,如果Servlet返回的内容与浏览器类型有关则该值非常有用。
UA-Pixels,UA-Color,UA-OS,UA-CPU:由某些版本的IE浏览器所发送的非标准的请求头,表示屏幕大小、颜色深度、操作系统和CPU
Accept:浏览器可接受的MIME类型。
Accept-Charset:浏览器可接受的字符集。
Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。
Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。
Authorization:授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中。
Connection:表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间。要实现这一点,Servlet需要在应答中发送一个Content-Length头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,然后在正式写出内容之前计算它的大小。
Content-Length:表示请求消息正文的长度。
Cookie:设置cookie,这是最重要的请求头信息之一
From:请求发送者的email地址,由一些特殊的Web客户程序使用,浏览器不会用到它。
Host:初始URL中的主机和端口。
响应码五种类型,由他们第一位数字表示
HTTP 请求和应答的头部字段值得大家认真的学习,因为基于 Web 的编程中我们将会大量使用。如:将用户认证的令牌信息放到头部,或者把 cookie 放到头部等

三、Cisco Packet Tracer 实验

1.用CPT软件加入主机和集线器


配置好网络后我们可以拖发信息了:

交换机构建 LAN中构建拓扑结构如下的局域网:


进行配置以及ping的操作,但没有ping通……
是因为在同一子网下的主机可以相互ping同而在不同子网下的主机就无法ping通。于是我们做出如下的实验,对三台主机分别配置网址和掩码和网关,分别在集线器连接和交换机连接尝试。
集线器在任何时候都会广播出去,而交换机则可以实现找到端口发送。


2.交换机接口地址列表

二层交换机是一种即插即用的多接口设备,它对于收到的帧有 3 种处理方式:广播、转发和丢弃(请弄清楚何时进行何种操作)。那么,要转发成功,则交换机中必须要有接口地址列表即 MAC 表,该表是交换机通过学习自动得到的。仍然构建上图的拓扑结构,并配置各计算机的 IP 在同一个一个子网,使用工具栏中的放大镜点击某交换机如左边的 Switch3,选择 MAC Table,可以看到最初交换机的 MAC 表是空的,也即它不知道该怎样转发帧,用 PC0 访问(ping)PC1 后,再查看该交换机的 MAC 表,现在有相应的记录,请思考如何得来。随着网络通信的增加,各交换机都将生成自己完整的 MAC 表,此时交换机的交换速度就是最快。

3.生成树协议

交换机在目的地址未知或接收到广播帧时是要进行广播的。如果交换机之间存在回路/环路,那么就会产生广播循环风暴,从而严重影响网络性能。
而交换机中运行的 STP 协议能避免交换机之间发生广播循环风暴。
只使用交换机,构建拓扑:

交换机之间有回路,这会造成广播帧循环传送即形成广播风暴
于是交换机将自动通过生成树协议对多余的线路进行自动阻塞以形成一棵以 为根的具有唯一路径树即生成树。

首先先确认根假设为B1,然后跟广播出去,交换机比如B2,B3,B4。依次确定与根的距离,然后再广播出自己的距离,这时B2,3,4之间相互屏蔽,比如都广播至B5那里,B5判断最短路径,依次这样构建生成树。交换机的 STP 协议即生成树协议始终自动保证交换机之间不会出现回路,从而形成广播风暴,使用 CPT 的 Simulation 即模拟方式可非常清楚看到这个过程。

4.虚拟局域网VLAN

VLAN(Virtual Local Area Network)即虚拟局域网。通过划分 VLAN,我们可以把一个物理网络划分为多个逻辑网段即多个子网。
划分 VLAN 后可以杜绝网络广播风暴,增强网络的安全性,便于进行统一管理等。
我们构建拓扑网如图:

进行相关配置,配置VLAN,完后如图

然后进行网络配置,配置后进行ping

不同VLAN下ping不通。
至此实验结束。

关于计算机网络的一些基础实验以及实验心得相关推荐

  1. 大学计算机基础实验教程实验2-7,大学计算机基础实验教程(Windows 7+Office 2010)(第2版)...

    大学计算机基础实验教程(Windows 7+Office 2010)(第2版) 语音 编辑 锁定 讨论 上传视频 <大学计算机基础实验教程(Windows 7+Office 2010)(第2版) ...

  2. 大学计算机基础算什么水平,大学计算机基础(含实验)

    大学计算机基础(含实验) 语音 编辑 锁定 讨论 上传视频 <大学计算机基础(含实验)>是2006年9月清华大学出版社出版的图书,作者是王长友.王中生.[1] 书    名 大学计算机基础 ...

  3. 计算机基础知识掌握欠缺,《计算机基础知识》实验教学改革探讨.pdf

    <计算机基础知识>实验教学改革探讨.pdf Science& TechnologyVision 科 技 视 界 科技 探·索·争鸣 计<算机基础知识>实验教学改革探讨 ...

  4. matlab语言实验二,实验二 MATLAB语言基础

    实验二 MATLAB 语言基础 一.实验目的 基本掌握 MATLAB 向量.矩阵.数组的生成及其基本运算(区分数组运算和矩阵运算).常用的数学函数.了解字符串的操作. 二.实验内容 (1) 向量的生成 ...

  5. 计算机网络数据分析报告,贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式...

    贵州大学计算机网络实验报告-实验四-分析IP协议数据包格式 (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 贵州大学GUIZHOU UN ...

  6. 计算机网络实验设计应用题,计算机网络实验三实验报告.doc

    计算机网络实验三实验报告 实验综合成绩 (百分制) 实验评阅教师签名其中实验态度优良中及格不及格实验报告优良中及格不及格 实 验 报 告 实验时间: 2015年 12 月 24日 实验运行环境 win ...

  7. 计算机网络模拟校园,计算机网络课程设计-模拟校园网组网实验

    计算机网络课程设计-模拟校园网组网实验 福建农林大学金山学院 信息工程类 课程实习报告 课程名称: 计算机网络 实习题目: 校园网组网方案 姓 名: 严夫 系: 信息与机电工程系 专 业: 计算机科学 ...

  8. 计算机网络模拟校园,计算机网络课程设计模拟校园网组网实验.doc

    计算机网络课程设计模拟校园网组网实验.doc 福建农林大学 金山 学院 信息工程 类 课程实习报告 课程名称: 计算机网络 实习题目: 校园网组网方案 姓 名: 严夫 系: 信息与机电工程系 专 业: ...

  9. 北邮计算机网络实践第四次实验,北邮计算机网络技术实践实验四实验报告.doc...

    北邮计算机网络技术实践实验四实验报告 计算机网络技术实践实验报告 实验名称:基本交换机使用及VLAN设置 姓 名:胡春月 实验日期: 2015.05.05 学 号:2012211508 实验报告日期: ...

  10. 【文件上传漏洞11】中间件文件解析漏洞基础知识及实验——Nginx

    目录 1 文件解析漏洞概述 1.1 概述 1.2 Nginx 解析漏洞 1.2.1 空字节解析漏洞 1.2.2 文件名逻辑漏洞 CVE-2013-4547 1.2.3 CGI-PHP 解析漏洞 2 实 ...

最新文章

  1. Jquery UI dialog 详解
  2. 计算机组成的基本硬件设备
  3. 反射型XSS漏洞的条件+类型+危害+解决
  4. C++:VS2019遇到C1083 无法打开包括文件: “opencv2/opencv.hpp”: No such file or directory
  5. android 焦点分发,Android TV 焦点分发原理解析
  6. 城市代码表_从零开始做一个SLG游戏(六)游戏系统以及配置表
  7. 微信小程序开发学习资料
  8. 程序员述职报告范文_程序员个人述职报告范文精选3篇
  9. Revo RS5025005C00000
  10. kali虚拟机无法发现外置网卡问题
  11. 报错:For input string
  12. 使用uncompyle2直接反编译python字节码文件pyo/pyc
  13. 【word基础操作】如何在word中为公式编号
  14. SQL中的COALESCE()函数
  15. 银河麒麟Kydroid1.0新品正式发布--助力安可产业生态建设
  16. 理解计算 从根号2到AlphaGo 第3季神经网络的数学模型
  17. PC端生成小程序二维码海报并下载
  18. php 获取agent,PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号 | 八戒哥技术博客...
  19. 慧荣SM3267AB主控U盘量产的工具
  20. 联合培养博士经历对于国内就业有优势吗?

热门文章

  1. 基于懒人模式的金融社交
  2. php推送iphone imesage,在网页中发送iMessage消息的代码(支持Mac和iOS)
  3. koa 设置cache_node koa2 ssr项目搭建的方法步骤
  4. validateRequest=false 可以禁用请求验证
  5. Matlab自编myfigure函数-快速输出figure图形曲线数据
  6. Web安全渗透学习-环境搭建
  7. 【计算机网络】-经典面试题吐血整理
  8. js智能截取带前缀手机号的country code
  9. 计算机硬件基础-----主板
  10. 现代空战中情境觉知的研究