第一章 验证性实验
1.1 ipconfig
实作一
使用 ipconfig/all
查看自己计算机的网络配置,尽可能明白每行的意思,特别注意 IP
地址、子网掩码 Subnet Mask
、网关 Gateway
。
1.2 ping
实作一
要测试到某计算机如 重庆交通大学 Web 服务器的连通性,可以使用 ping www.cqjtu.edu.cn
命令,也可直接使用 IP 地址。
请掌握使用该命令后屏幕显示的反馈回来信息的意思,如:TTL、时间等。
实作二
使用 ping/?
命令了解该命令的各种选项并实际使用。
1.3 tracert
实作一
要了解到某计算机如 www.baidu.com 中间经过了哪些节点(路由器)及其它状态,可使用 tracert www.baidu.com
命令,查看反馈的信息,了解节点的个数。
可通过网站 http://ip.cn 查看这些节点位于何处,是哪个公司的,大致清楚本机到百度服务器之间的路径。
共经过11个节点
查询第二个节点、第五个节点和最后一个节点
实作二
ping.pe
这个网站可以探测从全球主要的 ISP 到某站点如 https://qige.io 的线路状态,当然也包括各线路到该主机的路由情况。请使用浏览器访问 http://ping.pe/qige.io 进行了解。
![](https://img-blog.csdnimg.cn/9641b516e39a40ccaad41a784312b7d0.png)
1.4 ARP
实作一
运行 arp -a
命令查看当前的 arp 缓存, 请留意缓存了些什么。
然后 ping
一下你旁边的计算机 IP(注意,需保证该计算机的 IP 没有出现在 arp 缓存中,或者使用 arp -d *
先删除全部缓存),再次查看缓存,你会发现一些改变,请作出解释。
同一局域网下,如果出现新的主机,本机的接口会将新主机的 IP 和物理地址记录在列表中,从而方便下次的访问。
实作二
请使用 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
命令设置其为静态类型的。
在实作三中,为何缓存中常常有网关的信息?
因为在对外传输数据的时候,会将经过的网关信息存储在缓存中,方便下次使用。
我们将网关或其它计算机的 arp 信息设置为静态有什么优缺点?
优点:将 IP-MAC 绑定可以有效的防治 ARP 欺骗
缺点:不利于维护 arp 列表,维护起来麻烦,倘若有人冒充其中一个 IP ,对用户的安全会造成极大的隐患。
1.5 DHCP
实作一
一般地,我们自动获取的网络配置信息包括:IP 地址、子网掩码、网关 IP 以及 DNS 服务器 IP 等。使用 ipconfig/release
命令释放自动获取的网络配置,并用 ipconfig/renew
命令重新获取,了解 DHCP 工作过程和原理。
释放:
重新获取:
1.6 netstat
实作一
Windows 系统将一些常用的端口与服务记录在 C:\WINDOWS\system32\drivers\etc\services
文件中,请查看该文件了解常用的端口号分配。
![](https://img-blog.csdnimg.cn/5699db4dbae4483e8162a2af575be6d6.png)
实作二
使用 netstat -an
命令,查看计算机当前的网络连接状况。
1.7 DNS
实作一
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,当然,由于你懂的原因,这不一定会得到正确的答案。
1.8 cache
实作一
打开 Chrome 或 Firefox 浏览器,访问 https://qige.io ,接下来敲 F12
键 或 Ctrl + Shift + I
组合键打开开发者工具,选择 Network
面板后刷新页面,你会在开发者工具底部看到加载该页面花费的时间。请进一步查看哪些文件被 cache了,哪些没有。
除了qige.io文件全被cache了
实作二
接下来仍在 Network
面板,选择 Disable cache
选项框,表明当前不使用 cache,页面数据全部来自于 Internet,刷新页面,再次在开发者工具底部查看加载该页面花费的时间。你可比对与有 cache 时的加载速度差异。
加载时间从毫秒级增加到秒级
二、Wireshark 实验
2.1 熟悉 Ethernet 帧结构
使用 Wireshark 任意进行抓包,熟悉 Ethernet 帧的结构,如:目的 MAC、源 MAC、类型、字段等
ping百度
抓包并用ip.addr == 183.232.231.174 and icmp过滤
查看Ethernet 帧
✎ 问题
你会发现 Wireshark 展现给我们的帧中没有校验字段,请了解一下原因。
回答:Wireshark 抓包前,在物理层网卡已经去掉了一