计算机网络实验一

ipconfig

  • ipconfig是微软操作系统用来控制网络连接的一个命令行工具,它是用来显示当前网络的配置信息的。
  • 在cmder中使用ipconfig会展示部分信息,使用ipconfig/all会展示所有的信息,这时候能看到自己的ip地址,子网掩码以及网关。
    -在这里插入图片描述
  • 使用ipconfig/all查看旁边的计算机发现,其子网掩码以及网关是相同的,但是ip地址是不同的。
  • 你的计算机和旁边的计算机是否处于同一子网,为什么?
    处于同一子网,由于在同一个网络条件下。

ping

  • ping是用于测试网络连接量的程序,它是工作在tcp/ip网络体系结构中应用层的一个服务命令,主要是向特定的主机发送ICMP Echo请求报文,测试目的站是否可达及了解其有关状态。

  • 我们查询重庆交通大学的官网来看看ping的功能
    在这里插入图片描述

  • 从表中可以看出TTL以及时间

  • 当我们输入ping/?的时候,我们会发现他会给我们一些ping的用法,用法如下
    List item

  • 假设你不能 ping 通某计算机或 IP,但你确定该计算机和你之间的网络是连通的,那么可能的原因是什么?该如何处理能保证 ping 通?
    可能是因为对方的服务器关闭的原因,解决方法就是让对方开启服务器。
    一般情况下,我们首先ping自己的ip,例如ping 10.160.80.72,如果没有出现问题的时候,我们在ping 附近的ip,例如ping 10.1.201.42,如果也没有问题,那我们就ping附近的网关地址,例如ping 10.160.255.254,如果也没问题,最后在ping你想要ping的地址,例如ping 14.215.177.39(百度),如果出现问题那就是对方的问题的。

  • 假设在秘籍中进行的网络排查中,ping 百度的 IP 即 ping 14.215.177.39 没问题,但 ping 百度的域名即 ping www.baidu.com 不行,那么可能的原因是什么?如何进行验证和解决?
    可能的原因是因为DNS发生故障或者设置错误导致解析失败,域名需要经过当地的DNS服务器解析ip,再根据i发送包。
    验证及解决:咨询当地电信部门,看看是否是当地的服务器发生故障。或者搜索服务器地址,检查当前DNS服务器设置是否正确。又或者临时设置DNS服务器为8.8.8.8,但是该服务器延迟比较大。

tracert

  • tracert的全程为trace route,是路由追踪的意思,它的功能是跟踪Internet协议数据包传送到目的所需要的路径。
  • 要了解到某计算机如 www.baidu.com 中间经过了哪些节点(路由器)及其它状态,可使用 tracert www.baidu.com 命令,查看反馈的信息,了解节点的个数。
    在这里插入图片描述
  • 我们可以通过 http://ip.cn 查询这些节点的位置属于哪些公司的,大致了解从本机访问百度需要经过的位置。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 使用ping.pe在网站上可以查询全球主要的isp到某个站点的线路状态,这里我们查询qige.io,结果如下:
    在这里插入图片描述
    问题:
    问题一:tracert 能告诉我们路径上的节点以及大致的延迟等信息,那么它背后的原理是什么?
    由于tracert的工作原理是通过向目标发送不同ip生存时间值得internet控制消息协议回应数据包,tracert诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的TTL递减1.数据包上的TTL减为0时,路由器应该将ICMP已超时的消息发回源系统。这些返回的信息就会显示路径的各个节点。

问题二:在以上两个实作中,如果你留意路径中的节点,你会发现无论是访问百度还是棋歌教学网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,你的解释是什么?
因为我们的默认网关的地址是不发生改变的,所以我们看到的前几个节点是相同的。

问题三:在追踪过程中,你可能会看到路径中某些节点显示为 * 号,这是发生了什么?
可能是防火墙封掉了ICMP返回信息,所以我们得不到相关的数据包返回数据,由于回送的TTL-expired的信息需要cpu生成一个包,必须打断cpu,为保证其它工作正常进行,cisco router每隔一秒才处理tracert,所以在上面看到的是***

ARP

  • ARP为地址解析协议,用于根据给定网络层地址即ip地址,查找并得到其对应的数据链路层地址即MAC地址的协议。
  • 使用arp -a查看当前arp缓存
    在这里插入图片描述
  • 查看附近的计算机ip,使用ping以后再次查看发现它会多出来一个动态的类型。
  • 使用arp /?,结果如下:
    在这里插入图片描述
  • 当前本机的ip地址是192.168.56.1,它的物理地址是fe80::c88d:3464:abf6:7f9c%15,使用arp -s它的结果为:
    在这里插入图片描述
    -解决方法就是首先使用netsh i i show in得到一个图,如下:
    在这里插入图片描述
    随后再使用netsh -c i i add neighbors Idx(在图上查询)ip地址 物理地址,最后再看arp -a查看得到它会改变成为静态。
  • 为何缓存中常常有网关的信息?
    缓存记录着你有访问过的pc、网卡、MAC物理地址
  • 我们将网关或其它计算机的 arp 信息设置为静态有什么优缺点?
    设置为静态可以防止ARP病毒的传播,但在移动或者经常变化的网络环境中,这种手工维护MAC表的方式不适用。

DHCP

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

  • 使用ipconfig/release释放获取的网络配置
    在这里插入图片描述

  • 使用ipconfig/renew如图

  • DHCP的工作原理
    1.DHCP Discover:Client开始DHCP过程中的第一个请求报文,源地址为 0.0.0.0,目的地址为 255.255.255.255,附有MAC地址和计算机名,向网络进行广播
    2.DHCP Offer:Server对DHCP Discover报文的响应,提供IP地址  
    3.DHCP Request:Client对DHCP Offer报文的响应,选择IP 。客户端收到最先抵达DHCP Offer,并向网络发送一个DHCP Request广播封包 
    4.DHCP Declient:Client网络发送一个ARP 封包,发现Server分配给它的IP地址无法使用,如IP地址发生冲突时,将发出此报文让Server禁止使用这次分配的IP地址同时重新发送 DHCP Discover 信息
    5.DHCP Ack:Server对 DHCP Request 报文的响应,Client收到此报文后才真正获得了IP地址和相关配置信息。   
    6.DHCP Nak:此报文是Server对Client的DHCP Request报文的拒绝响应,Client 收到此报文后,一般会重新开始DHCP过程。   
    7.DHCP Release:此报文是Client主动释放IP地址,当Server 收到此报文后就可以收回IP地址分配给其他的Client
    8.DHCP使用UDP67和UDP68端口
    在这里插入图片描述

  • 如果你没能成功的释放,请思考有哪些可能的原因并着手进行解决?
    因为没有加适配器,网卡或驱动,加一个适配器,网卡或驱动
    可能是软件问题:没有开启DHCP客户端服务;解决方法:在 “ 运行 ” 中输入 “ sc config DHCP start= AUTO ” 重启后就OK 了。

  • 在Windows系统下,如果由于某种原因计算机不能获取 DHCP 服务器的配置数据,那么Windows将会根据某种算法自动配置为 169.254.x.x 这样的 IP 地址。显然,这样的 IP 以及相关的配置信息是不能让我们真正接入 Internet 的,为什么?既然不能接入 Internet,那么Winodws系统采用这样的方案有什么意义?
    因为会导致ip发生冲突,自动配置的IP地址和信息只是短暂性的解决计算机不能获取 DHCP 服务器的配置数据的问题,要真正的接入Internet还是得本身计算机的正确IP地址。

netstat

  • netstst是在内核中访问网络连接状态及其相关信息的命令行程序,可以显示路由表、实际的网络连接和网络接口设备的状态信息,以及与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络服务运行状况。
  • Windows 系统将一些常用的端口与服务记录在 C:\WINDOWS\system32\drivers\etc\services 文件中,请查看该文件了解常用的端口号分配。
    在这里插入图片描述
    在这里插入图片描述
  • 使用netstat -an查看计算机当前的网络连接状况。
    在这里插入图片描述

DNS

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

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

  • 使用ipconfig/displaydns命令查看
    在这里插入图片描述

  • 使用ipconfig/flushdns命令清除所有的dns缓存。
    在这里插入图片描述

  • 使用 nslookup qige.io 命令,将使用默认的 DNS 服务器查询该域名。
    在这里插入图片描述

  • 上面秘籍中我们提到了使用插件或自己修改 hosts 文件来屏蔽广告,思考一下这种方式为何能过滤广告?如果某些广告拦截失效,那么是什么原因?你应该怎样进行分析从而能够成功屏蔽它?
    原理是在hosts文件中将广告域名对应的ip写为本机(0.0.0.0)。如果某些广告拦截失效,可能是这个广告域名改了,而我们的hosts文件中有没有写入这个新域名对应本机,所以拦截失败,这是就需要向hosts文件中写入这个新域名对应为本机,这样就可以屏蔽这个之前屏蔽失败的广告了。

Cache

  • cacha是一个高速缓存,浏览器缓存是根据 HTTP 报文的缓存标识进行的,是性能优化中简单高效的一种优化方式了。一个优秀的缓存策略可以缩短网页请求资源的距离,减少延迟,并且由于缓存文件可以重复利用,还可以减少带宽,降低网络负荷。
  • 打开 Chrome 或 Firefox 浏览器,访问 https://qige.io ,接下来敲 F12 键打开开发者工具,选择 Network 面板后刷新页面,你会在开发者工具底部看到加载该页面花费的时间。请进一步查看哪些文件被 cache了,哪些没有。
    在这里插入图片描述
  • 在network界面选择disable cache以后刷新页面得到如下结果
    在这里插入图片描述
    上述两张图片可以知道使用了cache的速度会更快点,从图片中也可以看出哪些使用了cache哪些没有使用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值