从IP到Ping命令:了解计算机网络连接的基础

本文最后更新于:1 年前

人生如戏,我们都是自己故事的主角,用心演绎,精彩纷呈。

破冰

当今世界已经变得日益连接,而在这个连接的网络中,IP(Internet Protocol)扮演着至关重要的角色。无论是浏览网页、发送电子邮件,还是进行网络游戏,我们都要依赖 IP 地址来建立和维持网络连接。在这篇博客中,我们将深入探讨 IP 的概念,并重点介绍公网 IP 和内网 IP 的区别及其在网络通信中的作用。

首先,我们将从 IP 的基础知识开始,探索什么是 IP 地址以及它们的结构和分类方式。我们将了解 IP 地址包含的信息,以及如何将其分配给计算机和设备来实现通信。不仅如此,我们还将深入了解网络连接中的公网 IP 和内网 IP 的区别,以及它们在不同网络环境中的应用。

在接下来的部分,我们将带您一起了解 Ping 命令的重要性和用途。Ping 命令作为一种网络诊断工具,可以帮助我们测试网络连接的可靠性和性能。我们将探究 Ping 命令的出处和使用方式,了解如何通过 Ping 命令来检测网络的故障和延迟问题。

作为这篇博客的第一部分,我们希望通过介绍 IP 的概念、公网 IP 和内网 IP,以及 Ping 命令的出处和使用,为读者提供计算机网络基础知识。未来,我们还将分享更多类似的计算机网络方面的内容,以帮助读者深入了解和掌握网络连接的要点。

随着技术的不断进步和网络的不断发展,了解 IP 的基础知识和掌握 Ping 命令的使用变得愈发重要。我们相信通过这篇博客,读者将能够更好地理解网络连接的基本原理,并能够自信地使用 Ping 命令进行网络诊断。让我们一起探索计算机网络的奥秘吧!

正文

IP

介绍

什么是 IP ?

  • 在庞大的计算机网络当中,每一台计算机都需要一个唯一标识来确定自己在网络中的位置,这个标识就叫 IP
  • 以上是我对 IP 的理解,下面给出 IP 标准定义:
1
IP地址,全称(Internet Protocol Address)翻译成中文就是指互联网协议地址,所有的计算机分配一个统一格式的、唯一的虚拟地址编号。就像每个人都有一个身份证一样,IP地址就是每台计算机都有自己上网用的身份编号,在网络上交互时,不管是发送数据还是接收数据,通过IP地址互相访问。

IP 查询

  • 我们直接百度“ IP ”关键词,页面显示 IP 如下:

image-20230711115126654

  • 注意,该 IP 为该计算机所连接的网络 IP 地址,并非本机 IP ,可以简单理解为路由器 IP
  • 查询本机 IP ,只需在命令行下执行以下命令(Windows):
1
ipconfig
  • 查询结果如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
C:\WINDOWS\system32>ipconfig

Windows IP 配置

未知适配器 本地连接:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

无线局域网适配器 本地连接* 9:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

无线局域网适配器 本地连接* 10:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

以太网适配器 VMware Network Adapter VMnet1:

连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::7f58:5e0:a3cf:b38%4
IPv4 地址 . . . . . . . . . . . . : 192.168.152.1
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . :

以太网适配器 VMware Network Adapter VMnet8:

连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::261:257a:b98e:6653%14
IPv4 地址 . . . . . . . . . . . . : 192.168.88.1
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . :

无线局域网适配器 WLAN:

连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::e579:8da4:ddea:b21d%12
IPv4 地址 . . . . . . . . . . . . : 192.168.0.102
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.0.1
  • 很显然,查询到的本机 IP 地址为:
1
IPv4 地址 . . . . . . . . . . . . : 192.168.0.102
  • 注意这个 IP 是在动态变化着的

公网 IP 和内网 IP

公网/内网

  • 在解释公网 IP 和内网 IP 之前,我们首先要了解两个概念:公网/内网
1
公网:又名外网、广域网(Wide Area Network,WAN),是连接不同地区局域网或城域网计算机通信的远程网。它能连接多个地区、城市和国家,或横跨几个州并能提供远距离通信,形成国际性的远程网络。
1
内网:又名私网、局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。
  • 简单来讲,公网就是大范围的网络,内网就是小区域内的网络
  • 内、外网是相对于防火墙而言的,在防火墙内部叫做内网,反之就是外网

网络通信

  • 当今时代,我们每天无时不刻都在上网:玩网络游戏、刷短视频、视频聊天、点外卖等等,这些都属于网络通信的范畴
  • 不论是浏览玩网络游戏,还是刷视频,本质上我们都是在对后台的服务器发送请求,获取资源,也就是访问服务器
  • 而网络之间通信是以公网 IP 地址进行识别,所以联网必须使用公网 IP 地址,也就是说,我们要上网,必须要使用公网 IP 去访问服务器

内网 IP

  • 我们使用手机、电脑等电子设备来上网,那我们为什么能联网呢?
  • 简单的回答当然是家里有路由器了!有了路由器,我们的电脑手机就能联网,就能上网了
  • 这样的回答没有问题,路由器确实给我们提供了网络环境,但是路由器给我们我们使用的是局域网,即内网,那分配给我们的电子设备的 IP 就是内网 IP
  • 前面谈到,要进行网络通信,必须使用公网 IP ,那这中间必然存在一个内网 IP 转公网 IP 的过程
  • 我们在使用内网 IP 进行网络通信时,通过 NAT(Network Address Translation 网络地址转换)技术,将内网 IP 地址修改为公网 IP 地址,如此一来,内网计算机就可以向 Internet 请求数据了
  • 这个转换过程,我们称为端口映射

端口映射

  • 什么是端口映射?下面给出定义:
1
端口映射是 NAT 的一种,它将外网主机的 IP 地址的一个端口映射到内网中的一台机器,提供相应的服务。当用户访问该 IP 的这个端口时,服务器自动将请求映射到对应局域网内部的机器上。
  • 现在市场上的家庭路由器都具备 NAT 功能,也可以实现端口映射,这就是我们使用内网 IP 也能联网的原因

公网 IP

  • 上面反复提到,任何设备只有使用公网 IP 地址,才能进行网络通信,那究竟什么是公网 IP 呢?
  • 首先了解下公网 IP /内网 IP 地址是怎么分配的:
1
公有地址(Public address):由 Inter NIC(Internet Network Information Center 因特网信息中心)负责。这些 IP 地址分配给注册并向Inter NIC提出申请的组织机构,公有 IP 全球唯一,通过它直接访问因特网
1
私有地址(Private address):属于非注册地址,专门为组织机构内部使用,说白了,私有 IP 不能直接上网。
  • 总的来说,公网 IP 是运营商分配的,是唯一的,使用公网 IP 可直接进行网络通信
  • 内网 IP 是由路由器/交换机分配的,内网的所有 IP 地址都是通过同一个公网 IP 进行上网的
  • 内网 IP 只在局域网中有效,互联网上无法直接访问到内网的 IP 地址用户,即我们在自己电脑上查到的都是私有 IP
  • 两个 IP 同时存在,一个对内,一个对外
  • 那有人可能会问,如何判断一个 IP 是公网 IP 还是内网 IP 呢?当然,公网 IP 和内网 IP 也很好分辨:
1
2
3
4
5
如下3个区域就是处于私网:
1:10.*.*.*
2:172.16.*.*至172.31.*.*
3:192.168.*.* (*为0到255之间的任意数字)
以上3个区域外的就是处于公网之中了

公网 IP 申请

  • 国内有很多厂商提供云服务,如阿里云、腾讯云、百度云、华为云、亚马逊云等等
  • 我们在购买云服务器后,能够注意到该服务器已经被分配了一个公网 IP ,并且是唯一的
  • 即购买相关服务或者租用服务器后,即可向服务提供商申请独立 IP 地址,所申请的 IP 地址为“公网 IP ”

运营商

  • 国内三大运营商:移动、电信、联通
  • 我们之前提到过,通过 NAT 技术,可以将我们的内网 IP 转换成公网 IP 来进行网络通信,这个过程的详细流程是这样的:
  • 国内的三大运营商向 Inter NIC 申请并购买了一些公网 IP,然后通过这些公网 IP ,再分给国内用户使用
  • 我们在家里安装了宽带,在局域网下,通过路由器分出几个 IP ,让家里的手机、电脑都能联网
  • 只不过我们平时上网用的都是内网 IP ,或者说是私有 IP ,真正拥有公网 IP 的是运营商(当然,我们可以租用一个公网 IP ,就是上面提到的购买云服务器的方法)
  • 这里注意到,两个家庭的局域网 IP 相同是有可能的也很正常,因为这两个家庭上网还是通过运营商的公网 IP ,而公网 IP 是唯一的
  • 那么我们的上网过程就是这样的:我们平时经过路由器,通过宽带,最终去到运营商那边,数据是从运营商出去,最终数据是回到运营商那边,运营商再把数据发送到用户的电脑

Ping

出处

  • 众所周知,声纳音是是各国海军进行水下监视使用的主要技术,它利用声波在水中的传播和反射来进行导航和测距
  • 我们现在使用的 Ping 命令,就是以声纳音“ping”来命名的

介绍

1
2
3
Ping命令就是发送数据包到目标端,然后等待Ping返回数据
根据Ping返回的数据来判断是否可以抵达目标端
并分析出数据返回时间、与目标端的距离等等信息

Ping 的五步法

  • 我们需要进行以下五个步骤来验证电脑上的 Ping 工具是否正常使用:
1
2
3
4
5
ping 127.0.0.1/localhost
ping 本机IP地址
ping 默认网关
ping 目标IP地址
ping 目标主机名
  • ping 127.0.0.1:检测自己主机的网络配置是否正常,无需联网
  • ping 本机 IP 地址:ping 本机的内网 IP,检测本机网线及 WIFI 连接是否有问题
  • ping 默认网关:即 ping 路由器,检测路由器是否出现故障
  • ping 目标 IP 地址:这一步不成功的原因有很多,排除掉本机的网络连接问题,很可能是对方主机未联网、防火墙屏蔽了 ping 请求、数据包丢失等等,多是外部原因
  • ping 目标主机名:即 ping 一个域名,域名会在 DNS 里解析成 IP 地址,其原理同上

Ping 数据包

  • 我们在执行 ping 命令后,控制台上会不断地跳出提示消息,这些就是 ping 成功发送以后得到的消息
  • 这些消息包括:目标 IP 地址、数据包传输时间、数据包生命周期、数据字节等等,如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
C:\WINDOWS\system32>ping -n 20 www.baidu.com

正在 Ping www.baidu.com [39.156.66.18] 具有 32 字节的数据:
来自 39.156.66.18 的回复: 字节=32 时间=22ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=18ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=129ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=361ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=50ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=42ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=20ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=19ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=17ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=17ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=15ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=17ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=19ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=21ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=37ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=53ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=50ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=23ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=30ms TTL=52
来自 39.156.66.18 的回复: 字节=32 时间=23ms TTL=52

39.156.66.18 的 Ping 统计信息:
数据包: 已发送 = 20,已接收 = 20,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 15ms,最长 = 361ms,平均 = 49ms

常用 Ping 命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
C:\WINDOWS\system32>ping

用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
[-4] [-6] target_name

选项:
-t Ping 指定的主机,直到停止。
若要查看统计信息并继续操作,请键入 Ctrl+Break;
若要停止,请键入 Ctrl+C。
-a 将地址解析为主机名。
-n count 要发送的回显请求数。
-l size 发送缓冲区大小。
-f 在数据包中设置“不分段”标记(仅适用于 IPv4)。
-i TTL 生存时间。
-v TOS 服务类型(仅适用于 IPv4。该设置已被弃用,
对 IP 标头中的服务类型字段没有任何
影响)。
-r count 记录计数跃点的路由(仅适用于 IPv4)。
-s count 计数跃点的时间戳(仅适用于 IPv4)。
-j host-list 与主机列表一起使用的松散源路由(仅适用于 IPv4)。
-k host-list 与主机列表一起使用的严格源路由(仅适用于 IPv4)。
-w timeout 等待每次回复的超时时间(毫秒)。
-R 同样使用路由标头测试反向路由(仅适用于 IPv6)。
根据 RFC 5095,已弃用此路由标头。
如果使用此标头,某些系统可能丢弃
回显请求。
-S srcaddr 要使用的源地址。
-c compartment 路由隔离舱标识符。
-p Ping Hyper-V 网络虚拟化提供程序地址。
-4 强制使用 IPv4。
-6 强制使用 IPv6。

常见错误信息

  • 这里简单提一下常见的错误信息,具体的内容,日后有实操经验后再另作介绍
  • 请求超时、无法连接到目标 IP、硬件错误

总结

  • 在这篇博客中,我们深入探讨了 IP 的概念,重点介绍了公网 IP 和内网 IP 的区别以及 Ping 命令的基本原理和用途。
  • 通过了解 IP 地址的结构和分类,我们能够更好地理解网络连接的基础知识。同时,通过掌握 Ping 命令的使用,我们可以有效地测试和诊断网络连接的可靠性和性能。
  • 希望这篇博客为读者提供了有益的计算机网络基础知识,让您能够更加自信地掌握网络连接和故障排查的要点。继续关注我们的博客,将会有更多有趣的计算机网络相关内容与大家分享。谢谢阅读!

从IP到Ping命令:了解计算机网络连接的基础
https://test.atomgit.net/blog/2023/07/11/从IP到Ping命令:了解计算机网络连接的基础/
作者
Memory
发布于
2023年7月11日
更新于
2023年7月11日
许可协议