计算机网络验证性实验-棋歌教学网

实验简介及内容展示

本部分一共8个实验,分别是:ipconfig、ping、tracert、ARP、DHCP、netstat、DNS和cache。实验 1~7 使用 Cmder 在命令行窗口完成,实验 8 使用浏览器完成。

Cmder安装

Cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,也可以使用linux的命令,shell命令等。

下载地址:
Cmder 安 装 地 址

ipconfig

ipconfig 是微软操作系统的计算机上用来控制网络连接的一个命令行工具。它的主要用来显示当前网络连接的配置信息(/all参数)。

实作一

使用 ipconfig/all 查看自己计算机的网络配置,尽可能明白每行的意思,特别注意 IP 地址、子网掩码 Subnet Mask、网关 Gateway。

请添加图片描述
说明如下:

  1. DNS
    DNS是一个域名系统,它可以建立域名和IP地址之间的相互映射,利用用户方便记忆的域名而非不易记忆的IP地址,可使用户更方便地访问互联网,而不用去记住IP数串。
  2. DNS服务器
    DNS服务器是进行域名和与之相应的IP地址转换的服务器,实际上就是装有域名系统的主机,是一种能够实现名字解析的分层结构数据库。
  3. DNS后缀
    DNS后缀主要用于有多个DNS域名选择的时候设置。主DNS后缀设置是针对整个系统的,其优先级很高。假设计算机名称为pc1.ms.local,则在任意ping一个名称时,计算机会自动在后面加上ms.local的主DNS后缀进行解析。也就是说,当输入一个单标签的名称时,系统会自动检查此时是否设置有主DNS后缀,若有,则自动加上并组合成[单名称.主DNS后缀]的形式参与解析。
  4. DHCP
    DHCP (动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码,主要作用是集中管理、分配IP地址,使网络环境中的主机动态地获得IP地址和网关地址、DNS服务器地址等信息,并提高地址的使用率。
  5. IP地址
    互联网协议地址。IP地址是IP协议提供的一种统一的地址格式,它为互联网中每一网络和每一主机分配一个逻辑地址,以此来屏蔽物理地址的差异。是唯一识别一台计算机的标志。
  6. 子网掩码
    子网掩码将IP地址划分为网络地址和主机地址两部分,用于指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,必须要结合IP地址一起使用。IP地址=网络地址+主机地址,比如:192.168.100.1(IP地址)=192.168.100.0(网络地址)+0.0.0.1(主机地址),其子网掩码为255.255.255.0,则广播地址为192.168.100.255(在子网中,第一个地址为网络地址,最后一个地址为广播地址)。
  7. 网关
    网关是一种充当转换重任的计算机系统或设备,在网络层及以上实现网络互连,是复杂的网络互连设备,仅用于两个协议不同的网络互连。

实作二

使用ipconfig /all查看旁边计算机的网络配置。

请添加图片描述

✎问题

  • Q: 你的计算机和旁边的计算机是否处于同一子网,为什么?

  • A: 我的计算机和旁边的计算机并不处于同一子网。 理由如下:
    我的计算机的IP地址为172.20.10.12,子网掩码为255.255.255.240,两者做与运算,得到的网络号为:172.20.10.0;
    同理,得到旁边的计算机的网络号为:192.168.43.0。
    由于两者网络号不相同,故而不处于同一子网。

ping

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

实作一

要测试到某计算机如 重庆交通大学 Web 服务器的连通性,可以使用 ping www.cqjtu.edu.cn 命令,也可直接使用 IP 地址。

请掌握使用该命令后屏幕显示的反馈回来信息的意思,如:TTL、时间等。

请添加图片描述
ping自己的IP地址。

请添加图片描述
说明如下:

  1. 字节=32:测试中发送的数据包大小是32个字节;
  2. 时间<1ms:与ping的目标对象主机往返一次所用的时间小于1毫秒;
  3. TTL=128:当前测试使用的TTL(Time to Live存活时间)值为128。

实作二

使用ping/? 命令了解该命令的各种选项并实际使用。
请添加图片描述

使用ping -t命令,指定ping继续向目标发送回显请求消息,直到中断。
请添加图片描述

使用ping -a命令,指定在目标IP地址上执行的反向名称解析。
请添加图片描述

使用ping -l size命令,指定回显请求消息中的数据字段的长度。
请添加图片描述
✎问题

  • Q1: 假设无法ping通某计算机或IP,但确定该计算机与你之间的网络是连通的,那么可能的原因是什么?该如何处理能保证ping通?

  • A: 采用由近及远的连通性测试来确定问题所在。 比如我的计算机的IP地址为172.20.10.12,旁边计算机的IP地址为172.20.10.64,网关IP为172.20.10.1,那么:
    ping 127.0.0.1,测试自己计算机的状态,若成功,则说明本机网络软硬件工作正常,否则说明问题出现在本机,需检查本机TCP/IP配置即网卡状态等;ping 172.20.10.64,若成功,说明本子网内部工作正常,否则问题出现在本机网络出口到交换机之间,需检查本机网卡到交换机的连线等;ping 172.20.10.1,测试到网关的连通性,若成功,说明本子网出口工作正常,否则问题出现在网关,需报告给网管;ping 14.215.177.39,测试到百度的连通性,若成功则没有问题,否则问题出现在网关以外,自己无法解决。

  • Q2:假设ping 14.215.177.39没有问题,但ping www.baidu.com不行,那么可能的原因是什么?如何进行验证和解决?

  • A: 可能是DNS设置错误。由于计算机只识别IP地址,ping域名需要通过域名解析将域名转换成IP地址,而域名解析需要通过DNS进行,若DNS设置错误,可能导致域名解析不成功,进而无法ping通百度的域名。可通过清空DNS缓存或联系运营商解决。

tracert

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

实作一

要了解到某计算机如 www.baidu.com 中间经过了哪些节点(路由器)及其它状态,可使用 tracert www.baidu.com 命令,查看反馈的信息,了解节点的个数。

可通过网站 http://ip.cn 查看这些节点位于何处,是哪个公司的,大致清楚本机到百度服务器之间的路径。
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

实作二

ping.pe 这个网站可以探测从全球主要的 ISP 到某站点如 https://qige.io 的线路状态,当然也包括各线路到该主机的路由情况。请使用浏览器访问 http://ping.pe/qige.io 进行了解。
请添加图片描述
✎问题

  • Q1:tracert能告诉我们路径上的节点以及大致的延迟等信息,那么它背后的原理是什么?

  • A: 通过向目标地址发送不同IP存活时间值的“Internet控制消息协议(ICMP)”回应数据包,tracer诊断程序确定到目标地址所经过的路由。 要求路径上的每个路由器在转发数据包之前至少将数据包上的TTL递减1.数据包上的TTL减为0时,路由器应该将“ICMP已超时”的消息发回源系统。tracert先发送TTL为1的回应数据包,并在随后的每次发送过程将TTL递减1,直到目标响应或TTL达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP已超时”的消息确定路由。某些路由器不经询问直接丢弃TTL过期的数据包,这在tracert使用程序中看不到。

  • Q2:在以上两个实作中,无论是访问百度还是棋歌教学网,路径中的第一条都是相同的,甚至似乎前几个节点都是相同的,你的解释是什么?

  • A: 无论目的地址是什么,数据只要是从本机发送出去,都要到达同一个交换机,所以路径中的第一条都是相同的。前几个节点都相同可能是因为数据要出去需要经过网关,进而才能通过不同的子网到达不同的目的地址,而从本机过网关的路径都大致相同,所以前几个节点都是相同的。

  • Q3:在追踪过程中,你可能会看到路径中某些节点显示为*号,这是发生了什么?

  • A:该节点等待超时,没有出现具体的信息反馈。

ARP

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

实作一

运行 arp -a 命令查看当前的 arp 缓存, 请留意缓存了些什么。
请添加图片描述
然后 ping 一下你旁边的计算机 IP(注意,需保证该计算机的 IP 没有出现在 arp 缓存中,或者使用 arp -d * 先删除全部缓存),再次查看缓存,你会发现一些改变,请作出解释。
使用命令删除缓存时,出现arp项删除失败:请求的操作需要提升错误,解决方案:使用管理员权限再次运行删除缓存命令
请添加图片描述
请添加图片描述

实作二

请使用 arp /? 命令了解该命令的各种选项。
请添加图片描述

实作三

一般而言,arp 缓存里常常会有网关的缓存,并且是动态类型的。

假设当前网关的 IP 地址是 192.168.0.1,MAC 地址是 5c-d9-98-f1-89-64,请使用 arp -s 192.168.0.1 5c-d9-98-f1-89-64 命令设置其为静态类型的。

过程出现下面的这个问题:
请添加图片描述
出现此问题是因为win7及以上arp用来查mac,修改指定ip地址的时候需要使用netsh命令。

解决:

  1. 使用netsh i i show in命令找到指定Idx;
    请添加图片描述
  2. 使用netsh -c “i i” add neighbors [Idx] [IP地址] [mac地址] 命令修改指定IP的mac;
    请添加图片描述
  3. 再次运行arp -a命令,成功。
    请添加图片描述

✎问题

  • Q:在实作三中,为何缓存中常常有网关的信息?我们将网关或其他计算机的arp信息设置为静态有什么优缺点?

  • A: 缓存中常有网关信息是因为缓存本身记录了用户访问过的pc网卡mac物理地址。我们将网关或其他计算机的arp信息设置为静态的优点有:便于以固定的IP地址或IP地址分组产生的流量为依据管理,可以避免用户忘记密码而进行的繁琐事务流程;缺点有:合法用户分配的地址可能被非法盗用,不仅对网络的正常使用造成影响,同时由于被盗用的地址往往具有较高的权限,因而也容易给合法用户造成损失和潜在的安全隐患。

DHCP

DHCP(Dynamic Host Configuration Protocol)即动态主机配置协议,是一个用于 IP 网络的网络协议,位于 OSI 模型的应用层,使用 UDP 协议工作,主要有两个用途:
1.用于内部网或网络服务供应商自动分配 IP 地址给用户
2.用于内部网管理员对所有电脑作中央管理
简单的说,DHCP 可以让计算机自动获取/释放网络配置。

实作一

一般地,我们自动获取的网络配置信息包括:IP 地址、子网掩码、网关 IP 以及 DNS 服务器 IP 等。
使用 ipconfig/release命令释放自动获取的网络配置,并用 ipconfig/renew 命令重新获取。

释放失败。出现此问题可能是因为互联网和pc上的适配器出了问题。
若适配器都不在列表中,首先需要解决无线适配器的问题。重置WINSOCK和IP堆栈:使用netsh winsock reset catalog命令重置WINSOCK条目;使用netsh int ipv4 reset reset.log重置IPv4 TCP/IP堆栈;使用netsh int ipv6 reset reset.log重置IPv6 TCP/IP堆栈,然后重新启动计算机以使上述更改生效。

✎问题

  • Q:在Windows系统下,如果由于某种原因计算机不能获取DHCP服务器的配置数据,那么Windows将会根据某种算法自动配置为169.254.x.x这样的IP地址。显然,这样的IP以及相关配置信息是不能让我们真正接入Internet的,为什么?既然不能接入Internet,那么Windows系统采用这样的方案有什么意义?

  • A: 因为自动配置的IP地址和信息只是短暂性的解决计算机不能获取 DHCP 服务器的配置数据的问题,要真正的接入Internet还是得本身计算机的正确IP地址。意义是假如某天因DHCP服务器问题从而不能获得网络配置,那么我们可以查看隔壁教室计算机的配置信息来手动进行网络配置,从而使该计算机能够接入Internet。

netstat

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

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

实作一

Windows 系统将一些常用的端口与服务记录在 C:\WINDOWS\system32\drivers\etc\services 文件中,请查看该文件了解常用的端口号分配。
请添加图片描述

实作二

使用 netstat -an 命令,查看计算机当前的网络连接状况。
请添加图片描述

DNS

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

实作一

Windows 系统将一些固定的/静态的 DNS 信息记录在 C:\WINDOWS\system32\drivers\etc\hosts 文件中,如我们常用的 localhost 就对应 127.0.0.1 。
查看该文件。
请添加图片描述
实作二

解析过的 DNS 记录将会被缓存,以利于加快解析速度。请使用 ipconfig /displaydns 命令查看。我们也可以使用ipconfig /flushdns命令来清除所有的 DNS 缓存。

DNS记录太长,因此只展示一部分,如下图所示。
请添加图片描述
清除所有DNS缓存,再查看。
请添加图片描述

实作三

使用 nslookup qige.io 命令,将使用默认的 DNS 服务器查询该域名。当然你也可以指定使用 CloudFlare(1.1.1.1)或 Google(8.8.8.8) 的全球 DNS 服务器来解析,如:nslookup qige.io 8.8.8.8。
请添加图片描述
✎问题

  • Q:使用插件或自己修改hosts文件来屏蔽广告,思考一下这种方式为何能过滤广告?如果某些广告拦截失效,那么是什么原因?你应该怎么进行分析从而能够成功屏蔽它?
  • A: hosts文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP地址,实现DNS的功能,它可以由计算机的用户进行控制。
    hosts相当于一个字典,如果查到输入的域名在hosts之中,则会先调用其对应的IP,而不通过DNS,因此能够通过手动添加修改错误的<ip-网址>来达到屏蔽某网站的目的。通过将127.0.0.1广告链接设置为广告推送链接,从而广告链接就不会访问到本机,而是访问它自己的服务器。
    如果广告拦截失效,是因为有跨服务器访问问题,可以使用adsafe广告管家解决这个问题。

cache

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

实作一

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

在Chrome浏览器上访问https://qige.io,打开开发者工具,选择Network面板后刷新页面。
请添加图片描述

实作二

在Network面板选择Disable cache选项,再刷新。
请添加图片描述

实验心得体会

经过本次实验对计算机网络相关知识的初步学习与探究,我对计算机网络各专业术语有了一个比较清晰的认知,也初步了解了它们各自的作用。由于本实验完成时间较早,即使在实验过程中还不能对所有知识进行一个很好的串联,但在理论课上也有了更深一步的理解和掌握。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值