计算机网络中的简单命令——验证性实验

验证性实验准备

打开Windows的命令提示符窗口
win+R,输入cmd打开命令提示符窗口,在窗口中验证一些常用的计算机命令。

计算机常用命令

ipconfig

显示当前网络连接的配置信息,可以看到自己电脑的IP地址、子网掩码以及网关地址

实作

一、
使用 ipconfig/all 查看自己计算机的网络配置,尽可能明白每行的意思,特别注意 IP 地址、子网掩码 Subnet Mask、网关 Gateway。
在Cmder中输入ipconfig可以很清楚的看到我们自己的IP地址、子网掩码和自己的网关地址。
在这里插入图片描述
ipconfig的主要用法
在这里插入图片描述
二、
使用 ipconfig/all 查看旁边计算机的网络配置,看看有什么异同。
通过查看周边计算机的详细信息,可以看到如果两人的默认网关地址一样,那么两个人就在同一个子网,此时两人的子网掩码一样;当又一人连入校园网的时候,IP不一样而且此时的网关与子网掩码都不一样,说明两者不在同一个子网中.

✎ 问题

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

- 当两个人的子网掩码相同的时候,两人在同一个子网.

ping

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

实作

一、
用命令查看ping的具体用法
在这里插入图片描述
二、
检测当前电脑到百度web服务器的连通性
可以看到进行了4次的回复,显示每次回复所用的具体时间,以及每次信息传递所所经过的跳数 ,同时可以看到与你连接的百度的服务器的ip地址。
在这里插入图片描述

✎ 问题

假设你不能 ping 通某计算机或 IP,但你确定该计算机和你之间的网络是连通的,那么可能的原因是什么?该如何处理能保证 ping 通?
秘籍

当你的网络出现故障不能访问某计算机如 14.215.177.39 (百度的 IP 地址之一 )时,我们一般可采用由近及远的连通性测试来确定问题所在。现假设你的 IP 是 192.168.1.89,你旁边计算机的 IP 是192.168.1.64,网关的 IP 是 192.168.1.1 ,那么过程如下:
1、ping 127.0.0.1 ,测试自己计算机的状态,如果 OK,那么说明本机网络软件硬件工作正常,否则,问题在本机,
2、检查本机 TCP/IP配置即网卡状态等 ping 192.168.1.64,测试到旁边计算机的连通性,如果可以,那么说明本子网内部工作正常,否则,问题在本机网络出口到交换机之间,
3、检查本机网卡到交换机的连线等ping 192.168.1.1,测试到网关的连通性,如果可以,那么说明本子网出口工作正常,否则,问题在网关,这是你无能为力的事情,报告给网管
4、ping 14.215.177.39,测试到百度的连通性,如果 OK,那就 OK,否则,问题在网关以外,这也是你无能为力的事情.

tracert

路由追踪,该命令行程序可用于跟踪 Internet 协议 (IP) 数据包传送到目标地址时经过的路径。

实作

一、
查看计算机到www.baidu.com所经过的节点数 ,命令:tracert www.baidu.com
在这里插入图片描述

✎ 问题

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

- tarcert通过发送不同IP生存时间(TTL)值的回应数据包,从而确定路由。

二、

在以上两个实作中,如果你留意路径中的节点,你会发现无论是访问百度还是棋歌教学网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,你的解释是什么?

- 当我们tracert较多的网址之后就会发现,第一个节点的IP地址的是一样的,仔细的查看之后就会知道,这个Ip是我们的网关地址

三、

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

- 有些节点处的时间显示为*,*号是超时,没有返回任何时间信息,所以用*号来代替。也有可能是因为路由器设置了拒绝ping攻击,所以路由器不理会收到的所有icmp报文,所以收不到返回信息。于是电脑因一直没等到返回信息,便认为是返回超时,于是显示了*号。

ARP

地址解析协议,是用于根据给定网络层地址即 IP 地址,查找并得到其对应的数据链路层地址即 MAC地址的协议。

实作

一、
运行 arp -a 命令查看当前的 arp 缓存, 请留意缓存了些什么。
然后 ping 一下你旁边的计算机 IP(注意,需保证该计算机的 IP 没有出现在 arp 缓存中,或者使用 arp -d * 先删除全部缓存),再次查看缓存,你会发现一些改变,请作出解释。
在这里插入图片描述
通过ARP可以看到此时电脑里面保留了一些IP地址,以及他们的MAC地址和类型;

二、请使用 arp /? 命令了解该命令的各种选项。

在这里插入图片描述
🗣 TroubleShooting

你可能会在实作三的操作中得到 “ARP 项添加失败: 请求的操作需要提升” 这样的信息,表示命令没能执行成功,你该如何解决?
解决方法:

1.netsh i i show in找到指定Idx
2.netsh -c “i i” add neighbors 【Idx】【IP地址】【mac地址】修改指定IP的mac

✎ 问题

在实作中,为何缓存中常常有网关的信息?

我们将网关或其它计算机的 arp 信息设置为静态有什么优缺点?

- 因为缓存本身记录着你有访问过的pc 网卡MAC物理地址。

- 静态分配IP地址是指给每一台计算机都分配一个固定的IP地址,优点是便于管理,特别是在根据IP地址限制网络流量的局域网中,以固定的IP地址或IP地址分组产生的流量为依据管理,可以免除在按用户方式计费时用户每次上网都必须进行的身份认证的繁琐过程,同时也避免了用户经常忘记密码的尴尬。静态分配IP地址的弱点是合法用户分配的地址可能被非法盗用,不仅对网络的正常使用造成影响,同时由于被盗用的地址往往具有较高的权限,因而也容易给合法用户造成损失和潜在的安全隐患。

DHCP

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

实作

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

✎ 问题

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

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

netstat

✍ 无论是使用 TCP 还是 UDP,任何一个网络服务都与特定的端口(PortNumber)关联在一起。因此,每个端口都对应于某个通信协议/服务。
netstat(NetworkStatistics)是在内核中访问网络连接状态及其相关信息的命令行程序,可以显示路由表、实际的网络连接和网络接口设备的状态信息,以及与IP、TCP、UDP 和 ICMP 协议相关的统计数据,一般用于检验本机各端口的网络服务运行状况。

参考连接:
1、https://zh.wikipedia.org/zh-cn/%E9%80%9A%E8%A8%8A%E5%9F%A0
2、https://cnbin.github.io/blog/2015/08/22/wang-luo-chang-yong-duan-kou-hao-da-quan/
3、https://www.jianshu.com/p/b866f3f6e46e
4、https://blog.csdn.net/weixin_39800144/article/details/80929947

实作

一、
Windows 系统将一些常用的端口与服务记录在
C:\WINDOWS\system32\drivers\etc\services 文件中,请查看该文件了解常用的端口号分配。
二、
使用 netstat -an 命令,查看计算机当前的网络连接状况。
在这里插入图片描述

📬 秘籍

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

DNS

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

实作

一、
Windows 系统将一些固定的/静态的 DNS 信息记录在 C:\WINDOWS\system32\drivers\etc\hosts 文件中,如我们常用的 localhost 就对应 127.0.0.1 。请查看该文件看看有什么记录在该文件中。
在这里插入图片描述

二、
解析过的 DNS 记录将会被缓存,以利于加快解析速度。请使用 ipconfig /displaydns 命令查看。
在这里插入图片描述
我们也可以使用 ipconfig /flushdns 命令来清除所有的 DNS 缓存。

三、
使用 nslookup qige.io 命令,将使用默认的 DNS 服务器查询该域名。当然你也可以指定使用 CloudFlare(1.1.1.1)或 Google(8.8.8.8) 的全球 DNS 服务器来解析,如:nslookup qige.io 8.8.8.8。
在这里插入图片描述
🗣 TroubleShooting
使用插件或自己修改 hosts 文件来屏蔽广告,思考一下这种方式为何能过滤广告?如果某些广告拦截失效,那么是什么原因?你应该怎样进行分析从而能够成功屏蔽它?

- hosts相当于一个字典,如果查到输入的域名在hosts中,则会先调用其对应的IP,而不通过DNS,因此可以通过手动添加修改(错误的) <ip-网址 >以达到(屏蔽某网站的)目的

cache

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

实作

一、打开 Chrome 或 Firefox 浏览器,访问 https://qige.io ,接下来敲 F12 键 或 Ctrl + Shift + I 组合键打开开发者工具,选择 Network 面板后刷新页面,你会在开发者工具底部看到加载该页面花费的时间。请进一步查看哪些文件被 cache了,哪些没有。
在这里插入图片描述
二、接下来仍在 Network 面板,选择 Disable cache 选项框,表明当前不使用 cache,页面数据全部来自于 Internet,刷新页面,再次在开发者工具底部查看加载该页面花费的时间。你可比对与有 cache 时的加载速度差异。

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值