文章目录
前言
本计算机网络实验教程由验证性、Wireshark 和 Cisco Packet Tracer 实验等三个部分组成,可供信息学院各专业及校内其它专业使用(本教程的实验在 Windows 平台下进行)
提示:以下是本篇文章正文内容,下面案例可供参考
一、 验证性实验
1.1 ipconfig
ipconfig 是微软操作系统的计算机上用来控制网络连接的一个命令行工具。它的主要用来显示当前网络连接的配置信息(/all 参数)
实作一
使用 ipconfig/all 查看自己计算机的网络配置,尽可能明白每行的意思,特别注意 IP 地址、子网掩码 Subnet Mask、网关 Gateway。
实作二
使用 ipconfig/all 查看旁边计算机的网络配置,看看有什么异同。
问题:你的计算机和旁边的计算机是否处于同一子网,为什么?
不是同一子网,它们的IP地址与子网掩码相应位进行相与,得出的结果不相同,因此不属于同一子网
1.2 ping
PING (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序 。ping 是工作在 TCP/IP 网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态。
实作一
要测试到某计算机如 重庆交通大学 Web 服务器的连通性,可以使用 ping www.cqjtu.edu.cn 命令,也可直接使用 IP 地址。
请掌握使用该命令后屏幕显示的反馈回来信息的意思,如:TTL、时间等。
TLL
TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。
TTL的作用是限制IP数据包在计算机网络中的存在的时间。TTL的最大值是255,TTL的一个推荐值是64。
是避免IP包在网络中的无限循环和收发,节省了网络资源,并能使IP包的发送者能收到告警消息。
每经过一个路由器,路由器都会修改这个TTL字段值,具体的做法是把该TTL的值减1,然后再将IP包转发出去。如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP包并向IP包的发送者发送 ICMP time exceeded消息。
时间
从PC对网络服务器发送数据到接收到服bai务器反馈数du据的时间,单位一般以ms(毫秒)计算
实作二
使用 ping/? 命令了解该命令的各种选项并实际使用。
无限Ping百度的应用:
问题:假设你不能 ping 通某计算机或 IP,但你确定该计算机和你之间的网络是连通的,那么可能的原因是什么?该如何处理能保证 ping 通?
有些路由器端口不允许用户ping,或者对面计算机或IP可能设置了ICMP数据包过滤(比如防火墙),关闭ICMP数据包过滤就能ping通
问题:假设在秘籍中进行的网络排查中,ping 百度的 IP 即 ping 14.215.177.39 没问题,但 ping 百度的域名即 ping www.baidu.com 不行,那么可能的原因是什么?如何进行验证和解决?另外,经常有同学问到的:“能上 QQ,但不能上网” 跟这个问题的原因是相似的。
有可能是DNS设置或者DNS服务器故障,使用“ipconfig /flushdns”命令重置DNS或换一个DNS服务器地址,可使用谷歌的DNS服务器地址(8.8.8.8和8.8.4.4),但值得注意的是GoogleDNS的延迟很高且很容易丢包,建议使用国内的部分DNS服务器,例如OneDNS,地址为117.50.11.11和117.50.22.22
1.3 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 进行了解。
问题一
tracert 能告诉我们路径上的节点以及大致的延迟等信息,那么它背后的原理是什么?本问题可结合第二部分的 Wireshark 实验进行验证。
通过向目标发送不同IP生存时间 (TTL) 值的“Internet控制消息协议 (ICMP)”回应数据包,Tracert诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的 TTL 递减 1。数据包上的 TTL 减为 0 时,路由器应该将“ICMP 已超时”的消息发回源系统。
Tracert 先发送 TTL 为 1 的回应数据包,并在随后的每次发送过程将TTL递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP 已超时”的消息确定路由。某些路由器不经询问直接丢弃 TTL 过期的数据包,这在 Tracert 实用程序中看不到。
问题二
在以上两个实作中,如果你留意路径中的节点,你会发现无论是访问百度还是棋歌教学网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,你的解释是什么?
第一跳一般是网关的IP地址,因此会相同
问题三
在追踪过程中,你可能会看到路径中某些节点显示为 * 号,这是发生了什么?
1、那一跳禁PING
2、那一跳不对TTL超时做响应处理,直接丢弃