win10下的Cmd命令认识
一、 ipconfig命令
1.介绍
显示所有当前 TCP/IP 网络配置值并刷新动态主机配置协议 (DHCP) 和域名系统 (DNS) 设置。 在没有参数的情况下使用, ipconfig 显示 Internet 协议版本 4 (IPv4) 以及所有适配器的 IPv6 地址、子网掩码和默认网关。Microsoft-> ipconfig
相关参数说明
参数 | 说明 |
---|---|
/all | 显示所有适配器的完整 TCP/IP 配置。 适配器可表示物理接口(例如已安装的网络适配器)或逻辑接口(如拨号连接) |
/displaydns | 显示 DNS 客户端解析程序缓存的内容,其中包括从本地主机文件预加载的条目,以及由计算机解析的名称查询的任何最近获取的资源记录。 DNS 客户端服务使用此信息在查询其配置的 DNS 服务器之前快速解决经常查询的名称。 |
/flushdns | 刷新并重置 DNS 客户端解析程序缓存的内容。 在 DNS 疑难解答过程中,可以使用此过程从缓存中丢弃否定缓存条目,以及动态添加的任何其他条目。 |
/registerdns | 为在计算机上配置的 DNS 名称和 IP 地址启动手动动态注册。 你可以使用此参数对失败的 DNS 名称注册进行故障排除,或解决客户端与 DNS 服务器之间的动态更新问题,而无需重新启动客户端计算机。 TCP/IP 协议的高级属性中的 DNS 设置确定哪些名称在 DNS 中注册。 |
/release [] | 向 DHCP 服务器发送一条 DHCPRELEASE 消息,以释放当前的 DHCP 配置,并放弃所有适配器 (的 IP 地址配置,如果未指定适配器) 或对于特定适配器,如果包含了 该适配器参数,则为 。 此参数为配置为自动获取 IP 地址的适配器禁用 TCP/IP。 若要指定适配器名称,请键入在不带参数的情况下使用 ipconfig 时显示的适配器名称。 |
/release6[] | 向 DHCPv6 服务器发送一条 DHCPRELEASE 消息,以释放当前的 DHCP 配置,并放弃所有适配器 (的 IPv6 地址配置,如果未指定适配器) 或对于特定适配器,如果 包含该适配器参数,则为 。 此参数为配置为自动获取 IP 地址的适配器禁用 TCP/IP。 若要指定适配器名称,请键入在不带参数的情况下使用 ipconfig 时显示的适配器名称。 |
/renew [] | 如果未指定适配器,则续订所有适配器的 DHCP 配置 (如果包含 适配器 参数,则为特定适配器) 或。 此参数仅在配置为自动获取 IP 地址的适配器的计算机上可用。 若要指定适配器名称,请键入在不带参数的情况下使用 ipconfig 时显示的适配器名称。 |
/renew6 [] | 如果未指定适配器,则 (为所有适配器续订 DHCPv6 配置) 如果包含 适配器 参数,则为特定适配器续订。 此参数仅在配置为自动获取 IPv6 地址的适配器的计算机上可用。 若要指定适配器名称,请键入在不带参数的情况下使用 ipconfig 时显示的适配器名称。 |
/setclassid [] | 配置指定适配器的 DHCP 类 ID。 若要设置所有适配器的 DHCP 类 ID,请使用星号 (*) 通配符来替换 适配器。 此参数仅在配置为自动获取 IP 地址的适配器的计算机上可用。 如果未指定 DHCP 类 ID,则删除当前类 ID。 |
/showclassid | 显示指定适配器的 DHCP 类 ID。 若要查看所有适配器的 DHCP 类 ID,请使用星号 (*) 通配符来替换 适配器。 此参数仅在配置为自动获取 IP 地址的适配器的计算机上可用。 |
/? | 在命令提示符下显示帮助。 |
目前ipconfig
不加参数和ipconfig /all
为常用参数,示例试下
ipconfig
ipconfig /all
明显可以看出ipconfig /all
显示出更多关于IP的参数。
2.实操
2.1.使用ipcongfig /all
查看自己主机IP地址
该主机的IP,子网掩码,网关地址。
2.2查看其它电脑IP
对比两台主机ip,说说不同之处
相同:两台主机都有ipv4,子网掩码,网关
不同:两台主机的ipv4,子网掩码,网关的具体数值不同
提问:你的计算机和旁边的计算机是否处于同一子网,为什么?
根据子网掩码于IP地址与得出的结果为
本机网络号:10.160.0.0
客机网络号:202.202.250.0
可以看出两个主机没有在一个子网下
🌏 参考
- https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/ipconfig
- https://www.itread01.com/articles/1475880029.html
- https://zh.wikipedia.org/wiki/Ipconfig
二、 ping命令
1.介绍
通过向另一台 TCP/IP 计算机发送 Internet 控制消息协议 (ICMP) 回响请求消息来验证 IP 级连接。 将显示相应的回响回复消息以及往返时间。 ping 是用于排查连接性、可访问性和名称解析的主要 TCP/IP 命令。 使用没有参数的情况下,此命令显示帮助内容。
你还可以使用此命令测试计算机的计算机名和 IP 地址。 如果成功完成了 IP 地址的 ping 操作,但不对计算机名称进行 ping 操作,则可能存在名称解析问题。 在这种情况下,请确保你指定的计算机名可以通过本地主机文件进行解析,方法是使用域名系统 (DNS) 查询,或通过 NetBIOS 名称解析方法。Microsoft->ping
备注:仅当Internet协议(TCP/IP)作为组件安装在“网络连接”中网络适配器的属性中时,此命令才可用。
Microsoft->ping
相关参数说明
参数 | 说明 |
---|---|
/? | 在命令提示符下显示帮助。 |
/t | 指定 ping 继续向目标发送回显请求消息,直到中断。 若要中断和显示统计信息,请按 CTRL + ENTER。 若要中断并退出此命令,请按 CTRL + C。 |
/a | 指定在目标 IP 地址上执行的反向名称解析。 如果此操作成功,则 ping 将显示相应的主机名。 |
/n | 指定发送的回送请求消息数。 默认值为 4。 |
/l | 指定回显请求消息中的 数据 字段的长度(以字节为单位)。 默认值为 32。 最大大小为65527。 |
/f | 指定发送回显请求消息时,如果 IP 标头中的 " 不分段 " 标志设置为1,则在 IPv4 上仅) 可用 (。 目标的路径中的路由器无法对 echo 请求消息进行分段。 此参数可用于排查路径最大传输单元 (PMTU) 问题。 |
/I | 指定发送回显请求消息的 IP 标头中的 “生存时间” (TTL) "字段的值。 默认值为主机的默认 TTL 值。 最大 TTL 为255。 |
/v | 发送的回响请求消息的 IP 标头中的服务 (TOS) 字段指定类型的值。 默认值为 0。 TOS 指定为介于0到255之间的十进制值。 |
/r | 指定 IP 标头中的 " 记录路由 " 选项,用于记录回显请求消息使用的路径,以及相应的回显回复消息 (仅在 IPv4 上提供) 。 路径中的每个跃点都使用 记录路由 选项中的条目。 如果可能,请指定一个等于或大于源和目标之间的跃点数的 计数 。 计数 的最小值必须为1,最大值为9。 |
/s | 指定 IP 标头中的 Internet 时间戳 选项用于记录每个跃点的回显请求消息到达的时间和相应的回显答复消息。 计数 的最小值必须为1,最大值为4。 这对于链接本地目标地址是必需的。 |
/j | 指定 echo 请求消息使用 IP 标头中的 " 松散源路由 " 选项,其中包含 hostlist 中指定的中间目标集, (仅在 IPv4 上提供) 。 使用松散源路由时,可通过一个或多个路由器分隔连续的中间目标。 主机列表中的最大地址或名称数为9。 主机列表是一系列以点分隔的十进制表示法 (的 IP 地址,) 用空格分隔。 |
遇到 | 指定 echo 请求消息使用 IP 标头中的 " 严格源路由 " 选项,其中包含 hostlist 中指定的中间目标集, (仅在 IPv4 上提供) 。 使用严格源路由时,下一个中间目标必须是直接可访问的 (它必须是路由器的接口) 上的邻居。 主机列表中的最大地址或名称数为9。 主机列表是一系列以点分隔的十进制表示法 (的 IP 地址,) 用空格分隔。 |
/w | 指定等待回送答复消息对应于给定回响请求消息的时间量(以毫秒为单位)。 如果在超时时间内未收到回显回复消息,则会显示 “请求超时” 错误消息。 默认超时为 4000 (4 秒) 。 |
/R | 指定 (仅) 的 IPv6 上跟踪往返路径。 |
/S | 指定要使用的源地址 (仅) 上可用的 IPv6。 |
/4 | 指定用于 ping 的 IPv4。 使用 IPv4 地址标识目标主机时不需要此参数。 只需按名称标识目标主机即可。 |
/6 | 指定用于 ping 的 IPv6。 使用 IPv6 地址标识目标主机时不需要此参数。 只需按名称标识目标主机即可。 |
指定目标的主机名或 IP 地址。 |
2、 实操
2.1 测试到某计算机与某Web 服务器的连通性
ping www.cqjtu.edu.cn
可以看出这里没有ping通。那么我们现在来检查一下是否可以直接进行网页访问。
web服务器可以通过网络直接访问,那为什么不可以ping通呢?
通过以上原理介绍可以得知,ping命令是通过向另一台TCP/IP 计算机发送 Internet 控制消息协议 (ICMP) 回响请求消息来验证 IP 级连接。即ping是由ICMP协议负责响应。在防火墙打开时,ICMP协议规则,未必启用时便出现了不可以ping通,但网络是可以访问的情况。
因此由以上分析可以得出Ping不通,不代表,服务器网络不通,必须对方客机打开ICMP协议规则才可以ping通。
ping中TTL、时间的信息意思
TTL:TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。TTL是IPv4报头的一个8 bit字段。TTL-百度百科
TTL 是由发送主机设置的,以防止数据包不du断在 IP 互联网络上永不终止地循环。转发 IP 数据包时,要求路由器至少将 TTL 减小 1。
时间:表示从你的电脑到Internet的某Web的延迟时间为多少毫秒
2.2 熟悉ping的其他参数
ping /?
该指令可以在命令提示符下显示帮助。
那我们来上手试试以上一些参数的实例吧。
ping -t www.baidu.com
这里ping百度的网址是出现了
www.a.shifen.com
,于是进行了在网络上进行了查询,得知该域名为百度IP的别名,目的是防止黑客攻击。但自己之前在Web是输入该域名时却出现了报错。目前该问题的解释。
ping -a 14.215.177.38
/a 参数并没有出现将地址解析为主机名,通过网络资料查到,该指令它只能反向解析自己主机上hosts文件内的主机名,并不能进行解析其他ip主机名。
其他的指令验证待后续有时间再进行一一验证。
2.3一些问题
问题一:假设你不能 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,那么说明本机网络软件硬件工作正常,否则,问题在本机,检查本机 TCP/IP 配置即网卡状态等
2.ping 192.168.1.64 ,测试到旁边计算机的连通性,如果OK,那么说明本子网内部工作正常,否则,问题在本机网络出口到交换机之间,检查本机网卡到交换机的连线等
3.ping 192.168.1.1,测试到网关的连通性,如果 OK,那么说明本子网出口工作正常,否则,问题在网关,这是你无能为力的事情,报告给网管
4.ping 14.215.177.39,测试到百度的连通性,如果 OK,那就 OK,否则,问题在网关以外,这也是你无能为力的事情,报告给网管或者李彦宏?
通过以上分析可以清楚得知ping命令是将指令信息一个节点一个节点进行传输命令的过程。
问题2:假设在秘籍中进行的网络排查中,ping 百度的 IP 即 ping 14.215.177.39 没问题,但 ping 百度的域名即 ping www.baidu.com 不行,那么可能的原因是什么?如何进行验证和解决?
另外,经常有同学问到的:“能上 QQ,但不能上网” 跟这个问题的原因是相似的。
通过查阅资料得知:
1、能ping通ip,说明目标是存在的,并且是可以访问的;
2、不能ping通域名,说明dns解析失败;
因为输入的域名首先要由主机当地的DNS服务器转换为对应的ip地址,然后根据ip地址发送ICMP数据包测试;由于DNS服务器故障或者设置错误,就会出现可以ping通ip却不能ping通域名的情况。
解决方法:
1、咨询当地电信部门,是否当地dns服务器故障;
2、百度搜索当地dns服务器地址,检查当前dns服务器设置是否正确;
3、可临时设置dns服务器地址为8.8.8.8,该服务器延迟会比较大。百度经验
课文资料拓展:
ping指的是端对端连通,通常用来作为可用性的检查, 但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用作服务器或者进行网络测试,可以放心的选中它,保护你的电脑。
🌏 参考
- https://bkso.baidu.com/item/ping/6235?fromtitle=PING%E5%91%BD%E4%BB%A4&fromid=670278
- https://blog.csdn.net/hebbely/article/details/54965989
- https://sites.google.com/site/goh1933/ping-zhi-ling-gao-ji-yong-fa
三、 tracert命令
1.介绍
此诊断工具通过向目标发送Internet控制消息协议(ICMP)回显请求或ICMPv6消息,以递增的生存时间(TTL)字段值来确定到达目标的路径。路径上的每一个路由器都需要在转发前将IP包中的TTL减少至少1。实际上,TTL是一个最大链路计数器。当包上的TTL达到0时,路由器将向源计算机返回ICMP超时消息。
该命令通过发送TTL为1的第一个回显请求消息来确定路径,并在每次后续传输时将TTL递增1,直到目标响应或达到最大跳数。默认情况下,最大跃点数为30,可以使用/h参数指定。
路径是通过检查中间路由器返回的ICMP超时消息和目标返回的echo应答消息来确定的。但是,有些路由器不会为TTL值过期的数据包返回超时消息,并且对tracert命令是不可见的。在本例中,将为该跃点显示一行星号(*)。显示的路径是源主机和目的地之间的路径中路由器的近/侧路由器接口列表。近/侧接口是路由器的接口,在路径中最靠近发送主机。Microsoft-tracert
备注:仅当Internet协议(TCP/IP)协议作为组件安装在网络连接中网络适配器的属性中时,此命令才可用。
要跟踪路径并为路径中的每个路由器和链路提供网络延迟和数据包丢失,请使用pathping命令命令。
参数说明:
参数 | 说明 |
---|---|
/? | 在命令提示下显示帮助。 |
/d | 停止尝试将中间路由器的IP地址解析为其名称。这可以加快结果的返回。 |
/h | 指定在路径中搜索目标(目标)的最大跃点数。默认值为30跳。 |
/j | 指定回显请求消息使用IP标头中的Loose Source Route选项,并在中指定一组中间目标。对于松散源路由,连续的中间目的地可以由一个或多个路由器分开。列表中地址或名称的最大数目为9。是一系列由空格分隔的IP地址(以点分隔的十进制表示法)。仅在跟踪IPv4地址时使用此参数。 |
/w | 指定等待接收到与给定回显请求消息相对应的ICMP超时时间或回显回复消息的时间量(毫秒)。如果在超时时间内未收到,则显示星号(*)。默认超时为4000(4秒)。 |
/R | 指定IPv6路由扩展头用于将回显请求消息发送到本地主机,将目标用作中间目标并测试反向路由。 |
/S | 指定要在回显请求消息中使用的源地址。仅在跟踪IPv6地址时使用此参数。 |
/4 | 指定tracert.exe只能对此跟踪使用IPv4。 |
指定由IP地址或主机名标识的目标。 |
2、 实操
2.1 追踪主机到百度路由路径
输入以下指令:
tracert www.baidu.com
但可以看到某行的信息中出现了*
和请求超时
的情况,这里我们来探究一下是什么原因导致的。
解释:这表示这个路由节点和当前我们使用的宽带,是无法联通的。至于原因,就有很多种了,比如:特意在在通信子网中做了过滤限制;比如是路由的问题等,具体问题具体分析。
如果在测试的时候,大量的都是*和返回超时,那就说明这个IP,在各个路由节点都有问题。
根据反馈的信息,主机访问百度通过了个12路由。通过在IP查询网进行IP查询,得知10、172
开头的是内网IP地址,222
开头的是中国重庆电信的IP地址,219、14
是中国广东省广州市电信IP地址。
问题:在第九个路由器出现了
90.96.135.219.broad.fs.gd.dynamic.163data.com.cn [219.135.96.90]
上网进行搜索了资料,发现前面的IP地址进行反向就是
219.135.96.90
与最后出现的[219.135.96.90]一样,并且该IP地址是中国广东省广州市电信且163data.com.cn也为中国广东省广州市电信的域名。前面的90.96.135.219.broad.fs.gd.dynamic.163data.com.cn
是电信对219.135.96.90
进行了反向解析PTR记录
,以来防止垃圾邮件,减少黑客攻击等等。但也有一部分资料称是电信的垃圾广告,目前双方解释我没有查到官方解释,如有大佬清楚,麻烦告知,谢谢。
之后又对百度进行了一次路由追踪,也出现了刚才的路由地址,只不过进行了动态变化。
2.2 ping pe 探测主要的 ISP(网络服务提供商) 到某站点的线路状态
2.2.1ping pe介绍
PingPe 是一个非常强大的免费站长工具,从全世界30 个节点检测网站Ping时间、MTR 和封包传输速度,站长们只要输入查询的IP或域名就能从全世界30个测试点来测试封包的传输时间、经过节点和掉包率等资讯。【ping.pe】| 网站世界节点检测工具,好用的站长工具
主页首页会显示你目前的来源IP、地区以及IP 的Whois 拥有者资讯。
不过该网页的重头戏是Ping.pe 能让我们检测各个IP 或网址的连线情形。在左上角输入要检测的IP 或网域名称(网址),就会开始进行测试。
使用者能查看每一个测试点的MTR(My traceroute)资讯,也就是从该点连线到你检测的IP会经过那些线路节点及封包传输情形,当网站难以连线时有助于厘清问题并排除障碍。
Ping.pe会先分析出该网域名称的IP位址、所在地区,目前支援的监测点包括:加拿大、美国、荷兰、卢森堡、德国、义大利、瑞典、立陶宛、乌克兰、俄罗斯、新加坡、日本、澳大利亚、巴西和南非,比较特别的是Ping.pe还有在国内的节点,分别是中国北京、深圳、江苏和上海,亦能测试网站能不能从中国大陆正常解析连线。
每个节点都有提供MTR 资讯,非常好用,点选后可以打开MTR 记录,看到从该节点连线到检测目标会经过的几条线路、封包传输速度等资讯。还有一个很实用的小工具,点选下方「Save as Image」就能将检测结果撷图、转成一张图片链结。转载至-PingPe|网站世界节点检测工具
如有喜欢该知识的读者也可以跳转至该博客进行学习。推荐一个在线测试服务器延迟和丢包的工具 Ping.pe
备注:检测之后绿色表明畅通,红色表明不通
2.2.2ping pe实操
目前先了解一下主要ISP到qige.io
的网络连接情况。
通过下图分析到中国江苏的中国移动对于qige.io
网址的丢包率有点高,便可以点击了show
进行了详细分析。
可以看出IP地址为221.183.55.45
的丢包率有35%,并通过ASNAME,得出他为中国移动网络IP。
🌏 参考
- https://zh.wikipedia.org/wiki/Traceroute
- https://support.microsoft.com/zh-cn/help/314868/how-to-use-tracert-to-troubleshoot-tcp-ip-problems-in-windows
- http://www.ttlsa.com/tools/how-to-use-tracert/
2.3问题
问题一
tracert 能告诉我们路径上的节点以及大致的延迟等信息,那么它背后的原理是什么?本问题可结合第二部分的 Wireshark 实验进行验证。
Tracert 先发送 TTL 为 1 的回应数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。
问题二
在以上两个实作中,如果你留意路径中的节点,你会发现无论是访问百度还是棋歌教学网,路径中的第一跳都是相同的,甚至你应该发现似乎前几个节点都是相同的,你的解释是什么?
因为在校园网中,主机访问除内网之外的服务器或者主机是要经过相同的路由网关。
问题三
在追踪过程中,你可能会看到路径中某些节点显示为 * 号,这是发生了什么?
这表示这个路由节点和当前我们使用的宽带,是无法联通的。至于原因,就有很多种了,比如:特意在路上上做了过滤限制;比如确实是路由的问题等,具体问题具体分析。
四、 ARP
1.介绍
显示和修改地址解析协议(ARP)缓存中的条目。ARP缓存包含一个或多个表,用于存储IP地址及其解析的以太网或令牌环物理地址。每台计算机的网络适配器上都安装了一个以太网令牌。在没有参数的情况下使用,arp显示帮助信息。Microsoft-ARP
另一种通俗解释:ARP(Address Resolution Protocol)即地址解析协议,是用于根据给定网络层地址即 IP 地址,查找并得到其对应的数据链路层地址即 MAC地址的协议。
参数说明:
参数 | 说明 |
---|---|
/a | 显示所有接口的当前arp缓存表。 |
-g | 与 -a 相同。 |
-v | 在详细模式下显示当前 ARP 项。所有无效项和环回接口上的项都将显示。 |
inet_addr | 指定 Internet 地址。 |
-N if_addr | 显示 if_addr 指定的网络接口的 ARP 项。 |
-d | 删除 inet_addr 指定的主机。inet_addr 可以是通配符 *,以删除所有主机。 |
-s | 添加主机并且将 Internet 地址 inet_addr与物理地址 eth_addr 相关联。物理地址是用连字符分隔的 6 个十六进制字节。该项是永久的。 |
eth_addr | 指定物理地址。 |
if_addr | 如果存在,此项指定地址转换表应修改的接口的 Internet 地址。如果不存在,则使用第一个适用的接口。 |
2、 实操
查看当前的 arp 缓存
- arp -a
arp -a
- ping旁边电脑
命令了解该命令的各种选项
设置网关为静态类型
- 假设当前网关的 IP 地址是
192.168.0.1
,MAC 地址是5c-d9-98-f1-89-64
,请使用arp -s 192.168.0.1 5c-d9-98-f1-89-64
命令设置其为静态类型的。
如果设置失败请用管理员身份打开Cmd。
一般而言,arp 缓存里常常会有网关的缓存,并且是动态类型的。
- 问题一:将网关或其它计算机的 arp 信息设置为静态有什么优缺点?
补充:ARP病毒的传播原理是:让中毒计算机的网卡不断发送虚假的ARP数据包,告诉网内其他计算机网关的MAC地址是中毒计算机的MAC地址,使其他计算机将本来发送到网关的数据发送到中毒计算机上。
此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让网络上特定计算机或所有计算机无法正常连线。
优点:是网关与MAC地址进行静态绑定,防止中ARP病毒。ARP防范方法与优缺点对比
缺点:在移动或者经常变化的网络环境中,这种手工维护MAC表的方式不适用。
五、 DHCP
1.介绍
动态主机配置协议(DHCP)是一种客户机/服务器协议,它自动向Internet协议(IP)主机提供其IP地址和其他相关配置信息,如子网掩码和默认网关。rfc2131和2132将DHCP定义为基于Bootstrap协议(BOOTP)的Internet工程任务组(IETF)标准,Bootstrap协议与DHCP共享许多实现细节。DHCP允许主机从DHCP服务器获取所需的TCP/IP配置信息。
Windows Server 2016包括DHCP服务器,这是一个可选的网络服务器角色,您可以将其部署在网络上,以便向DHCP客户端租用IP地址和其他信息。所有基于Windows的客户端操作系统都将DHCP客户端作为TCP/IP的一部分,DHCP客户端在默认情况下是启用的。Microsoft-DHCP
DHCP(Dynamic Host Configuration Protocol)即动态主机配置协议,是一个用于 IP 网络的网络协议,位于 OSI 模型的应用层,使用 UDP 协议工作,主要有两个用途:
用于内部网或网络服务供应商自动分配 IP 地址给用户
用于内部网管理员对所有电脑作中央管理
简单的说,DHCP 可以让计算机自动获取/释放网络配置。
2、 实作
自动获取的网络配置
- 一般地,我们自动获取的网络配置信息包括:IP 地址、子网掩码、网关 IP 以及 DNS 服务器 IP 等。使用
ipconfig/release
命令释放自动获取的网络配置,并用ipconfig/renew
命令重新获取,了解 DHCP 工作过程和原理。
ipconfig/release
ipconfig/renew
DHCP 工作过程和原理:
1.客户机通过将搜索消息广播到本地子网上的有限广播地址 (255.255.255.255) 来搜索 DHCP 服务器。
2.在 DHCP 服务器确定客户机的网络之后,便会选择相应的 IP 地址并确认该地址尚未使用。
3.客户机会根据所提供的服务的数量和类型来选择最佳内容。客户机会广播一条请求来指定提供最佳内容的服务器的 IP 地址。
4.被选中的服务器会为客户机分配 IP 地址,并将信息存储到 DHCP 数据存储中。
5.客户机会监视租用时间。当设定的时间段过去时,客户机会向所选的服务器发送一条新消息来延长租用时间。
- ✎ 问题
在Windows系统下,如果由于某种原因计算机不能获取 DHCP 服务器的配置数据,那么Windows将会根据某种算法自动配置为 169.254.x.x 这样的 IP 地址。显然,这样的 IP 以及相关的配置信息是不能让我们真正接入 Internet 的,为什么?既然不能接入 Internet,那么Winodws系统采用这样的方案有什么意义?
Windows操作系统为了防止主机脱网,为网卡设置169.254.x.x的保留IP,此时就算由于某种原因计算机不能获取 DHCP 服务器的配置数据时,他们还通过保留地址还可以互相通讯。
六、 netstat
1.介绍
显示活动的TCP连接、计算机正在侦听的端口、以太网统计信息、IP路由表、IPv4统计信息(对于IP、ICMP、TCP和UDP协议)和IPv6统计信息(对于IPv6、ICMPv6、TCP over IPv6和UDP over IPv6协议)。如果不使用参数,此命令将显示活动的TCP连接。Microsoft-Netstat
参数 | 说明 |
---|---|
-a | 显示所有连接和侦听端口。 |
-b | 显示在创建每个连接或侦听端口时涉及的可执行程序。在某些情况下,已知可执行程序承载多个独立的组件,这些情况下,显示创建连接或侦听端口时涉及的组件序列。在此情况下,可执行程序的名称位于底部 [] 中,它调用的组件位于顶部,直至达到 TCP/IP。注意,此选项可能很耗时,并且在你没有足够权限时可能失败。 |
-e | 显示以太网统计信息。此选项可以与 -s 选项结合使用。 |
-f | 显示外部地址的完全限定域名(FQDN)。 |
-n | 以数字形式显示地址和端口号。 |
-o | 显示拥有的与每个连接关联的进程 ID。 |
-p proto | 显示 proto 指定的协议的连接;proto 可以是下列任何一个: TCP、UDP、TCPv6 或 UDPv6。如果与 -s选项一起用来显示每个协议的统计信息,proto 可以是下列任何一个:IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。 |
-q | 显示所有连接、侦听端口和绑定的非侦听 TCP 端口。绑定的非侦听端口不一定与活动连接相关联。 |
-r | 显示路由表。 |
-s | 显示每个协议的统计信息。默认情况下, 显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息; -p 选项可用于指定默认的子网。 |
-t | 显示当前连接卸载状态。 |
-x | 显示 NetworkDirect 连接、侦听器和共享 终结点。 |
-y | 显示所有连接的 TCP 连接模板。无法与其他选项结合使用。 |
interval | 重新显示选定的统计信息,各个显示间暂停的 间隔秒数。按 CTRL+C 停止重新显示统计信息。如果省略,则 netstat 将打印当前的配置信息一次。 |
netstat /?
2.实作
查看常用的端口号分配
Windows 系统将一些常用的端口与服务记录在C:\WINDOWS\system32\drivers\etc\services
文件中,请查看该文件了解常用的端口号分配。
查看计算机当前的网络连接状况
使用 netstat -an
命令,查看计算机当前的网络连接状况。
七、 DNS
1.介绍
域名系统(DNS)是由TCP/IP组成的一套行业标准协议,DNS客户端和DNS服务器共同为计算机和用户提供计算机名到IP地址映射的名称解析服务。Microsoft-DNS
2. 实作
查看固定的/静态的 DNS 信息
Windows 系统将一些固定的/静态的 DNS 信息记录在 C:\WINDOWS\system32\drivers\etc\hosts
文件中,如我们常用的 localhost
就对应127.0.0.1
。请查看该文件看看有什么记录在该文件中。
清除所有的 DNS 缓存
解析过的 DNS 记录将会被缓存,以利于加快解析速度。请使用 ipconfig /displaydns
命令查看。我们也可以使用ipconfig /flushdns
命令来清除所有的 DNS 缓存。
部分内容截图
ipconfig /flushdns
使用默认的 DNS 服务器查询该域名
使用 nslookup qige.io
命令,将使用默认的 DNS 服务器查询该域名。
八、 cache
1.介绍
cache 即缓存,是 IT 领域一个重要的技术。我们此处提到的 cache 主要是浏览器缓存。
浏览器缓存是根据 HTTP 报文的缓存标识进行的,是性能优化中简单高效的一种优化方式了。一个优秀的缓存策略可以缩短网页请求资源的距离,减少延迟,并且由于缓存文件可以重复利用,还可以减少带宽,降低网络负荷。棋歌教学网网
2.实作
查看网页缓存
打开 Chrome 或 Firefox 浏览器,访问 https://qige.io
,接下来敲 F12
键 或Ctrl + Shift + I
组合键打开开发者工具
,选择Network 面板
后刷新页面,你会在开发者工具底部看到加载该页面花费的时间。请进一步查看哪些文件被 cache了,哪些没有。
http缓存主要针如css,js,图片等更新频率不大的静态文件。
禁止网页缓存
接下来仍在 Network 面板
,选择Disable cache
选项框,表明当前不使用 cache,页面数据全部来自于 Internet,刷新页面,再次在开发者工具底部查看加载该页面花费的时间。你可比对与有 cache 时的加载速度差异。
禁用缓存之后,网页加载的速度明显变慢了。
九、 总结
通过此次的验证性实验的学习,我了解了各个Cmd的命令,对计算机网络原理中的部分内容也有了深刻印象;同时对于一些基本的网络连接检查,网关设置,网页缓存等有了相关认识。计算机网络原理的知识看似繁多,但通过一步步分模块学习还是有很大进步。在此特别感谢老师和同学们的帮助。