验证性实验
ipconfig
实作一
- 如图 输入
ipconfig /all
IP:在Internet上网时随机分配的一个唯一的标识。
子网掩码:用来和目的地址作And运算,去掉主机号部分,留下网络号部分。
网关:子网的出入口。
实作二
- 输入
ipconfig/all
旁边计算机:
同:子网掩码是相同的。
异:IP地址不同
你的计算机和旁边的计算机是否处于同一子网,为什么?
答:处于同一子网,因为将子网掩码与IP地址进行And运算后,网络号相等,说明处于同一子网。
ping
实作一
- 如图输入
ping www.cqjtu.edu.cn
TTL:全称为Time To Live,意为生存时间,实际上TTL即是在这个数据被丢弃之前允许通过的网段数量,一般取值为64,这里的TTL为63表示经过了一个网段。(TTL的作用是每次经过一个网段TTL就减一如果达到目标之前,该值减少至0,路由器将会丢弃,避免广播风暴)。
时间:表示该数据到对方主机往返的时间。
实作二:
- 如图 输入
ping/?
假设你不能
ping
通某计算机或 IP,但你确定该计算机和你之间的网络是连通的,那么可能的原因是什么?该如何处理能保证ping
通?
答:因为防火墙中的入站规则中的文件和打印机共享(回显请求-ICMPv4-In)没有启用,将该项启用即可ping通。
假设在秘籍中进行的网络排查中,ping 百度的 IP 即 ping 14.215.177.39 没问题,但 ping 百度的域名即 ping
www.baidu.com 不行,那么可能的原因是什么?如何进行验证和解决?
答:可能原因:能ping通ip说明链路是好的,但是ping不通域名可能是域名解析出现了问题。
验证与解决:使用nslookup+域名命令查看dns是否配置,如未配置则可设置为8.8.8.8(google)等。然后使用ipconfig/flushdns刷新下dns缓存。如果还是Ping不通 则可联系给域名服务的服务商,他们会给出dns服务器。
tracert
实作一
- 如图,输入
tracert [www.baidu.com](http://www.baidu.com)
- 使用网站http://ip.cn查看这些节点,发现从本计算机访问到百度首先经过学校的路由至中国移动然后分接至深圳
实作二
- 打开
ping.pe
网站,如下
tracert 能告诉我们路径上的节点以及大致的延迟等信息,那么它背后的原理是什么?本问题可结合第二部分的 Wireshark
实验进行验证。
答:Tracert 命令使用 IP 生存时间 (TTL) 字段和 ICMP 回应包来确定从一个主机到网络上其他主机的路由。可以通过TTL确定路由。
在以上两个实作中,如果你留意路径中的节点,你会发现无论是访问百度还是棋歌教学网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,你的解释是什么?
答:因为从本机访问其他网站时,都需要经过校内的交换机然后进入移动的通信子网。因此第一跳甚至是前几个节点都是相同的。
在追踪过程中,你可能会看到路径中某些节点显示为 * 号,这是发生了什么?
答:出于安全考虑或网络问题没有回应。
arp
实作一
- 如图输入
arp-a
缓存有ip以及ip地址对应的设备的物理地址及记录类型。
如下图,ping的该ip地址加入了缓存中。
计算机会将 ping
过的得到回应的MAC地址记录下来,下次ping
的时候直接从缓存取出而不用广播。
实作二
如图,输入arp/?
实作三
你可能会在实作三的操作中得到 “ARP 项添加失败: 请求的操作需要提升” 这样的信息,表示命令没能执行成功,你该如何解决?
答:出现这种字样是因为没有使用管理员的权限打开。但是使用管理员权限打开后,虽然没有出现这种字样,但是还是没有修改为静态。想要修改为静态还需做如下操作:
(1)使用netsh i i show in
查看Idx
(2)然后使用netsh -c i i add neighbors 【Idx】 【IP地址】【mac地址】
修改指定 IP 的 mac
如图所示,指定的ip变为了静态。
在实作三中,为何缓存中常常有网关的信息?
答:ARP缓存记录访过的PC网卡MAC物理地址,方便下次使用。
我们将网关或其它计算机的 arp 信息设置为静态有什么优缺点?
答:优点:利于管理,同时将 IP-MAC 绑定可以有效的防治 ARP 欺骗,并且可以免除用户进行身份认证的繁琐操作。
缺点:合法用户分配的地址可能被非法盗用,不仅对网络的正常使用造成影响,也容易给合法用户造成损失和潜在的安全隐患。
DHCP
实作一
- 如图输入
ipconfig/release
- 如图输入
ipconfig/renew
在Windows系统下,如果由于某种原因计算机不能获取 DHCP 服务器的配置数据,那么Windows将会根据某种算法自动配置为 169.254.x.x 这样的 IP 地址。显然,这样的 IP 以及相关的配置信息是不能让我们真正接入 Internet 的,为什么?既然不能接入 Internet,那么Winodws系统采用这样的方案有什么意义?
答:Windows操作系统为了防止主机脱网,为网卡设置169.254.x.x的保留IP。当主机收到这样的ip时,就会知道该计算机不能获取DHCP服务器的配置数据。这是一种可以保持通讯的紧急网络处理方案。
在我校不少地方如教室,计算机都采用了 DHCP 来获得网络配置。假如某天因 DHCP 服务器问题从而不能获得网络配置,那么我们可以查看隔壁教室计算机的配置信息来手动进行网络配置,从而使该计算机能够接入 Internet。
经常的,在一个固定地方的网络配置我都喜欢采用 静态/手动配置,而不是动态 DHCP 来进行。你能想到是什么原因吗?
答:动态DHCP获取需要一定的时间搜索可用的ip,如果DHCP服务器有问题,将搜索整个网段。并且相较来说静态配置的ip更稳定。
netstat
实作一
-
找到该文件,如下
常用的端口号有:80(web服务)443(加密的web服务)1433(SQL-Server服务)
实作二
-
如图输入
netstat -an
DNS
实作一
-
打开文件如下所示:
hosts文件记录的是地址的映射关系。在进行dns请求之前,会先检查hosts文件中是否有这个映射关系。从而加快了域名的解析。
实作二
-
使用
ipconfig /displaydns
命令,如图:缓存如上所示,接着使用
ipconfig /flushdns
命令
实作三
- 使用
nslookup qige.io
命令,如图;
使用指定的CloudFlare(1.1.1.1)
,如图
上面秘籍中我们提到了使用插件或自己修改
hosts
文件来屏蔽广告,思考一下这种方式为何能过滤广告?如果某些广告拦截失效,那么是什么原因?你应该怎样进行分析从而能够成功屏蔽它?
答:Hosts文件相当于网站的通讯录,记录着不同域名对应的ip地址。
在操作系统中Hosts文件的优先级高于DNS服务器,通过将错误的ip地址与广告域名绑定,就实现了过滤广告的效果。
原因有多种:比如浏览器使用了代理工具,关闭这些代理工具即可。部分浏览器有DNS缓存和系统DNS缓存,刷新缓存即可。还有可能是服务器设置了kepp-alive
长链接,关闭所有的长链接即可。
cache
实作一
加载页面花费了 729ms;除了 jquery.scrollUp.min.js 和 favicon.png 以外都被 cache 了。
实作二
禁用缓存后,加载页面花费了2.82秒。
可以发现禁用缓存后,进入页面的速度明显下降。可知缓存的作用就是加快速度,已经加载过的可以不重复加载,这就是进入同一个页面速度更快的原因。