导言
-
当今世界已经变得日益连接,而在这个连接的网络中,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 标准定义:
IP地址,全称(Internet Protocol Address)翻译成中文就是指互联网协议地址,所有的计算机分配一个统一格式的、唯一的虚拟地址编号。就像每个人都有一个身份证一样,IP地址就是每台计算机都有自己上网用的身份编号,在网络上交互时,不管是发送数据还是接收数据,通过IP地址互相访问。
IP 查询
-
我们直接百度“ IP ”关键词,页面显示 IP 如下:
-
注意,该 IP 为该计算机所连接的网络IP地址,并非本机 IP ,可以简单理解为路由器 IP
-
查询本机 IP ,只需在命令行下执行以下命令(Windows):
ipconfig
-
查询结果如下:
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 地址为:
IPv4 地址 . . . . . . . . . . . . : 192.168.0.102
-
注意这个 IP 是在动态变化着的
公网 IP 和内网 IP
-
有关这部分内容的介绍,可以先看下面几篇文章:
公网/内网
-
在解释公网 IP 和内网 IP 之前,我们首先要了解两个概念:公网/内网
公网:又名外网、广域网(Wide Area Network,WAN),是连接不同地区局域网或城域网计算机通信的远程网。它能连接多个地区、城市和国家,或横跨几个州并能提供远距离通信,形成国际性的远程网络。
内网:又名私网、局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。
-
简单来讲,公网就是大范围的网络,内网就是小区域内的网络
-
内、外网是相对于防火墙而言的,在防火墙内部叫做内网,反之就是外网
网络通信
-
当今时代,我们每天无时不刻都在上网:玩网络游戏、刷短视频、视频聊天、点外卖等等,这些都属于网络通信的范畴
-
不论是浏览玩网络游戏,还是刷视频,本质上我们都是在对后台的服务器发送请求,获取资源,也就是访问服务器
-
而网络之间通信是以公网 IP 地址进行识别,所以联网必须使用公网 IP 地址,也就是说,我们要上网,必须要使用公网 IP 去访问服务器
内网 IP
-
我们使用手机、电脑等电子设备来上网,那我们为什么能联网呢?
-
简单的回答当然是家里有路由器了!有了路由器,我们的电脑手机就能联网,就能上网了
-
这样的回答没有问题,路由器确实给我们提供了网络环境,但是路由器给我们我们使用的是局域网,即内网,那分配给我们的电子设备的 IP 就是内网 IP
-
前面谈到,要进行网络通信,必须使用公网 IP ,那这中间必然存在一个内网 IP 转公网 IP 的过程
-
我们在使用内网 IP 进行网络通信时,通过NAT(Network Address Translation 网络地址转换)技术,将内网 IP 地址修改为公网 IP 地址,如此一来,内网计算机就可以向 Internet 请求数据了
-
这个转换过程,我们称为端口映射
端口映射
-
什么是端口映射?下面给出定义:
端口映射是 NAT 的一种,它将外网主机的 IP 地址的一个端口映射到内网中的一台机器,提供相应的服务。当用户访问该 IP 的这个端口时,服务器自动将请求映射到对应局域网内部的机器上。
-
现在市场上的家庭路由器都具备 NAT 功能,也可以实现端口映射,这就是我们使用内网 IP 也能联网的原因
公网 IP
-
上面反复提到,任何设备只有使用公网 IP 地址,才能进行网络通信,那究竟什么是公网 IP 呢
-
首先了解下公网 IP /内网 IP 地址是怎么分配的:
公有地址(Public address):由 Inter NIC(Internet Network Information Center 因特网信息中心)负责。这些 IP 地址分配给注册并向Inter NIC提出申请的组织机构,公有 IP 全球唯一,通过它直接访问因特网
私有地址(Private address):属于非注册地址,专门为组织机构内部使用,说白了,私有 IP 不能直接上网。
-
总的来说,公网 IP 是运营商分配的,是唯一的,使用公网 IP 可直接进行网络通信
-
内网 IP 是由路由器/交换机分配的,内网的所有 IP 地址都是通过同一个公网 IP 进行上网的
-
内网 IP 只在局域网中有效,互联网上无法直接访问到内网的 IP 地址用户,即我们在自己电脑上查到的都是私有IP
-
两个 IP 同时存在,一个对内,一个对外
-
那有人可能会问,如何判断一个 IP 是公网 IP 还是内网 IP 呢?当然,公网 IP 和内网 IP 也很好分辨:
如下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”来命名的
介绍
-
Ping命令的原理及多种用法哔哩哔哩bilibili
-
Ping命令是网络管理命令中的一种常见命令,基于ICMP协议,用于测试网络的连通性
-
互联网中的Ping命令包含两个过程:
-
Ping 请求和Ping 响应
Ping命令就是发送数据包到目标端,然后等待Ping返回数据
根据Ping返回的数据来判断是否可以抵达目标端
并分析出数据返回时间、与目标端的距离等等信息
Ping的五步法
-
我们需要进行以下五个步骤来验证电脑上的Ping工具是否正常使用:
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地址、数据包传输时间、数据包生命周期、数据字节等等,如下:
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命令
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命令的使用,我们可以有效地测试和诊断网络连接的可靠性和性能。
-
希望这篇博客为读者提供了有益的计算机网络基础知识,让您能够更加自信地掌握网络连接和故障排查的要点。继续关注我们的博客,将会有更多有趣的计算机网络相关内容与大家分享。谢谢阅读!