计算机网络—IP
这里写目录标题
- IP的基本认识
- 网络层与数据链路层有什么关系
- IP地址基础知识
- IP 地址的分类
- 什么是A、B、C类地址
- 广播地址用来做什么
- 什么是D、E类广播
- 多播地址用于什么
- IP分类的优点
- IP分类的缺点
- 无分类地址CIDR
- 如何划分网络号和主机号
- 怎么进性子网划分
- 公有 IP 地址与私有 IP 地址
- 公有 IP 地址由谁管理呢
- IP 地址与路由控制
- 环回地址是不会流向网络
- IPv6基本认识
- IPv6的亮点
- IPv6 地址的标识方法
- IPv6 地址的结构
- IP协议相关技术
- DNS相关
- 域名解析的工作流程
- ping的工作原理
- 什么是ping
- Ping 的工作原理
- 断网了,能ping通127.0.0.1吗
- 127.0.0.1、localhost和0.0.0.0的区别
- 常见面试题
- 什么是IP地址?
- IPv4和IPv6有什么区别?
- 什么是子网掩码?
- 解释一下CIDR是什么?
- 什么是公共IP地址和私有IP地址?
- 什么是NAT(网络地址转换)?
- **什么是IP路由?
- 什么是默认网关?
- 什么是ARP(地址解析协议)?
- 什么是IPv4地址的分类?
IP (Internet Protocol) 是计算机网络中用于标识和定位设备的一种协议。它是互联网通信的基础协议之一,用于在网络中传送数据包。
IP 协议的主要功能是提供逻辑上的地址和路由选择。每个连接到互联网的设备(如计算机、路由器等)都被分配一个唯一的 IP 地址,用于在网络中唯一标识这个设备。IP 地址由一串数字表示,通常以IPv4或IPv6的格式呈现。
IPv4(Internet Protocol version 4)是目前广泛使用的 IP 版本,由四个由点分隔的十进制数字组成,每个数字的取值范围是0到255,例如 192.168.0.1。IPv4 地址空间有限,随着互联网的迅速发展,IPv6(Internet Protocol version 6)被提出并逐渐推广使用。IPv6 地址采用128位的格式,由冒号分隔的十六进制数字和字母组成,例如 2001:0db8:85a3:0000:0000:8a2e:0370:7334。
IP 协议还负责将数据包从源设备传输到目标设备。在发送数据时,数据被分割成多个 IP 数据包,每个包包含目标地址、源地址和数据等信息。通过路由选择算法,IP 协议根据目标地址选择合适的路径将数据包传递到目标设备。每个中间设备(如路由器)根据目标地址进行转发,直到数据包到达目标设备。
总结来说,IP 是计算机网络中的一种协议,用于标识和定位设备,以及提供数据包的传输和路由功能。通过 IP 地址,设备可以在网络中唯一标识和寻址。通过 IP 协议,数据可以通过路由选择算法传输到目标设备。
IP的基本认识
IP在TCP/IP参考模型处于第三层,也就是网络层。网络层的主要作用是:实现主机与主机之间的通信,也叫点对点(end to end)通信。
网络层与数据链路层有什么关系
IP 的作用是主机之间通信用的,而 MAC 的作用则是实现「直连」的两个设备之间通信,而 IP 则负责在「没有直连」的两个网络之间进行通信传输。
网络层和数据链路层是计算机网络中的两个关键层次,它们在网络通信中有不同的职责和功能。
-
数据链路层:
- 数据链路层位于OSI模型或TCP/IP模型中的第二层,负责将数据包转换为比特流传输,并在物理介质上进行传输。它处理的是相邻节点之间的通信,主要关注点是如何在物理链路上可靠地传输数据帧。
- 数据链路层提供了帧的传输、帧同步、流量控制、错误检测和纠正等功能。它通过物理地址(如MAC地址)来识别和寻址网络接口。
- 数据链路层的协议包括以太网(Ethernet)、Wi-Fi、PPP(Point-to-Point Protocol)等。
-
网络层:
- 网络层位于OSI模型或TCP/IP模型中的第三层,负责实现节点之间的逻辑通信和数据路由。它处理的是不同网络之间的数据传输,主要关注点是如何将数据从源节点传输到目标节点。
- 网络层提供了数据包的分组、转发、路由选择、地址分配和拥塞控制等功能。它通过网络地址(如IP地址)来识别和寻址主机。
- 网络层的协议包括IP(Internet Protocol)、ICMP(Internet Control Message Protocol)等。
关系:
数据链路层和网络层在计算机网络中是紧密相关的,它们协同工作以实现端到端的数据传输。数据链路层负责将数据帧从一个节点传输到下一个节点,而网络层负责将数据包从源节点传输到目标节点。网络层依赖于数据链路层提供的可靠传输服务,而数据链路层依赖于网络层提供的路径选择和地址寻址服务。
具体而言,网络层在传输数据时将数据分为多个数据包,并在每个数据包中添加源和目标的网络地址。然后,数据链路层将每个数据包封装为帧,并在物理链路上进行传输。在目标节点接收到帧后,数据链路层会将帧拆封,并将数据包传递给网络层。网络层根据目标地址对数据包进行路由选择,并将数据包传递给上层的传输层或应用层。
因此,数据链路层和网络层是协同工作的,它们共同实现了数据在计算机网络中的传输和路由。网络层依赖于数据链路层来提供物理链路上的可靠传输,而数据链路层依赖于网络层来确定数据的目标地址和路由路径。
IP地址基础知识
IP 地址(IPv4 地址)由 32 位正整数来表示,IP 地址在计算机是以二进制的方式处理的。而人类为了方便记忆采用了点分十进制的标记方式,也就是将 32 位 IP 地址以每 8 位为组,共分为 4 组,每组以「.」隔开,再将每组转换成十进制。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-52upd3Ix-1691585772369)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809201352884.png)]](https://img-blog.csdnimg.cn/014b83f24ed94e63a3eb76020ba4b410.png)
IP 地址的分类
IP 地址分类成了 5 种类型,分别是 A 类、B 类、C 类、D 类、E 类。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YRPNo9I3-1691585772371)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809201507247.png)]](https://img-blog.csdnimg.cn/65fe47e70a554ed08e14e27502bf22e7.png)
什么是A、B、C类地址
其中对于 A、B、C 类主要分为两个部分,分别是网络号和主机号。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZPLRp4qO-1691585772371)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809201716893.png)]](https://img-blog.csdnimg.cn/246bd82b65fa4878bc232de7c7857563.png)
- 主机号全为1指定某个网路下的所有主机,用于广播
- 主机号全为0指定某个网络
广播地址用来做什么
广播地址用于在同一个链路中相互连接的主机之间发送数据包
广播地址可以分为本地广播和直接广播两种。
- 在本网络内广播的叫做本地广播。例如网络地址为 192.168.0.0/24 的情况下,广播地址是 192.168.0.255 。因为这个广播地址的 IP 包会被路由器屏蔽,所以不会到达 192.168.0.0/24 以外的其他链路上。
- 在不同网络之间的广播叫做直接广播。例如网络地址为 192.168.0.0/24 的主机向 192.168.1.255/24 的目标地址发送 IP 包。收到这个包的路由器,将数据转发给 192.168.1.0/24,从而使得所有 192.168.1.1~192.168.1.254 的主机都能收到这个包(由于直接广播有一定的安全问题,多数情况下会在路由器上设置为不转发。) 。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pNyfxOkC-1691585772372)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809202203765.png)]](https://img-blog.csdnimg.cn/c9f243168fa844bc9bbe9fcc0edfc21c.png)
什么是D、E类广播
而 D 类和 E 类地址是没有主机号的,所以不可用于主机 IP,D 类常被用于多播,E 类是预留的分类,暂时未使用。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qzG3cU0p-1691585772372)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809202318642.png)]](https://img-blog.csdnimg.cn/e4e1d84c9d3446299c001d39a113888a.png)
多播地址用于什么
多播用于将包发送给特定组内的所有主机。
IP分类的优点
简单明了、选路(基于网络地址)简单
计算机网络中,IP分类(也称为IP地址分类)是一种将IP地址划分为不同的类别,以便更有效地管理和分配IP地址。IP分类的主要优点包括:
-
简单易于理解: IP分类将IP地址划分为几个不同的类别,每个类别有其固定的网络和主机部分,使得网络管理员和用户能够更容易地理解和识别网络结构。
-
地址分配: IP分类允许将IP地址划分为多个类别,每个类别可以用于不同规模和用途的网络。这使得网络管理员能够更好地分配IP地址,并根据需求进行灵活的地址规划。
-
路由表管理: IP分类使路由器能够更有效地管理路由表。每个IP地址类别都有固定的网络前缀,这样路由器可以更快速地匹配目标地址并选择正确的路由。
-
多子网支持: IP分类为多子网的创建提供了基础。不同的子网可以在同一网络内部运行,这有助于实现更好的资源分配和更精细的网络管理。
-
网络性能: 由于每个IP地址类别都有特定的网络前缀,路由器可以更快地查找目标子网,并进行更高效的数据包转发,从而提高网络性能。
IP分类的缺点
然而,IP分类也存在一些缺点,导致它逐渐被CIDR(无类别域间路由,Classless Inter-Domain Routing)取代:
-
地址浪费: IP分类中的每个类别都有固定的网络前缀长度,导致在某些情况下可能会浪费大量IP地址。这使得IP地址耗尽成为一个问题。
-
地址空间不均衡: 每个IP地址类别的地址空间分配是固定的,这可能导致某些类别的地址空间过剩,而其他类别则可能不足。
-
难以适应变化: IP分类不够灵活,难以适应网络拓扑变化和不同规模的网络需求。CIDR更加灵活,能够更好地应对不断变化的网络环境。
-
路由表大小: IP分类导致路由表大小不可控,特别是在互联网规模的网络中,可能会引发路由表爆炸问题,增加路由器的负担。
综上所述,虽然IP分类在早期的互联网中发挥了重要作用,但随着网络的增长和发展,CIDR取代了传统的IP分类,提供了更灵活和高效的IP地址分配和路由管理方法。
无分类地址CIDR
这种方式不再有分类地址的概念,32 比特的 IP 地址被划分为两部分,前面是网络号,后面是主机号
如何划分网络号和主机号
表示形式 a.b.c.d/x,其中 /x 表示前 x 位属于网络号, x 的范围是 0 ~ 32,这就使得 IP 地址更加具有灵活性。比如 10.100.122.2/24,这种地址表示形式就是 CIDR,/24 表示前 24 位是网络号,剩余的 8 位是主机号。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rCrrleZr-1691585772373)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203119158.png)]](https://img-blog.csdnimg.cn/2c96025396be42ff8496e82834f5aaa0.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qBhxKY22-1691585772374)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203150691.png)]](https://img-blog.csdnimg.cn/e3b37718f2404ddfa3cf88576142312e.png)
还有另一种划分网络号与主机号形式,那就是子网掩码,掩码的意思就是掩盖掉主机号,剩余的就是网络号。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JWYgj5Ys-1691585772374)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203246042.png)]](https://img-blog.csdnimg.cn/96af4e254f694b579c0c21bfd8fd2b6d.png)
怎么进性子网划分
在上面我们知道可以通过子网掩码划分出网络号和主机号,那实际上子网掩码还有一个作用,那就是划分子网。子网划分实际上是将主机地址分为两个部分:子网网络地址和子网主机地址。形式如下:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PIi9mdNt-1691585772375)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203354733.png)]](https://img-blog.csdnimg.cn/45409b884c244171acd014bc833c165d.png)
- 未做子网划分的 ip 地址:网络地址+主机地址
- 做子网划分后的 ip 地址:网络地址+(子网网络地址+子网主机地址)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kEMQDLiR-1691585772375)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203424135.png)]](https://img-blog.csdnimg.cn/574ac47d62d441778450d7508921f2c7.png)
公有 IP 地址与私有 IP 地址
在 A、B、C 分类地址,实际上有分公有 IP 地址和私有 IP 地址。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WJ8TYMcn-1691585772376)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203521614.png)]](https://img-blog.csdnimg.cn/daf3b09a54914db6800805be4044a583.png)
公有 IP 地址是有个组织统一分配的,假设你要开一个博客网站,那么你就需要去申请购买一个公有 IP,这样全世界的人才能访问。并且公有 IP 地址基本上要在整个互联网范围内保持唯一。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rf9yg4oF-1691585772377)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203645326.png)]](https://img-blog.csdnimg.cn/c58405ea785f49958473ec77e8d3af51.png)
公有 IP 地址由谁管理呢
私有 IP 地址通常是内部的 IT 人员管理,公有 IP 地址是由 ICANN 组织管理,中文叫「互联网名称与数字地址分配机构」。IANA 是 ICANN 的其中一个机构,它负责分配互联网 IP 地址,是按州的方式层层分配。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VPtMmJag-1691585772379)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809203721205.png)]](https://img-blog.csdnimg.cn/da88bc32525344c8993e822dfd958704.png)
- ARIN 北美地区
- LACNIC 拉丁美洲和一些加勒比群岛
- RIPE NCC 欧洲、中东和中亚
- AfriNIC 非洲地区
- APNIC 亚太地区
其中,在中国是由 CNNIC 的机构进行管理,它是中国国内唯一指定的全局 IP 地址管理的组织。
IP 地址与路由控制
IP地址的网络地址这一部分是用于进行路由控制。路由控制表中记录着网络地址与下一步应该发送至路由器的地址。在主机和路由器上都会有各自的路由器控制表。在发送 IP 包时,首先要确定 IP 包首部中的目标地址,再从路由控制表中找到与该地址具有相同网络地址的记录,根据该记录将 IP 包转发给相应的下一个路由器。如果路由控制表中存在多条相同网络地址的记录,就选择相同位数最多的网络地址,也就是最长匹配。
环回地址是不会流向网络
环回地址是在同一台计算机上的程序之间进行网络通信时所使用的一个默认地址。计算机使用一个特殊的 IP 地址 127.0.0.1 作为环回地址。与该地址具有相同意义的是一个叫做 localhost 的主机名。使用这个 IP 或主机名时,数据包不会流向网络。
IPv6基本认识
IPv4 的地址是 32 位的,大约可以提供 42 亿个地址,但是早在 2011 年 IPv4 地址就已经被分配完了。但是 IPv6 的地址是 128 位的,这可分配的地址数量是大的惊人,说个段子 **IPv6 可以保证地球上的每粒沙子都能被分配到一个 IP 地址。**但 IPv6 除了有更多的地址之外,还有更好的安全性和扩展性,说简单点就是 IPv6 相比于 IPv4 能带来更好的网络体验。但是因为 IPv4 和 IPv6 不能相互兼容,所以不但要我们电脑、手机之类的设备支持,还需要网络运营商对现有的设备进行升级,所以这可能是 IPv6 普及率比较慢的一个原因。
IPv6的亮点
- IPv6 可自动配置,即使没有 DHCP 服务器也可以实现自动分配IP地址,真是便捷到即插即用啊。
- IPv6 包头包首部长度采用固定的值
40字节,去掉了包头校验和,简化了首部结构,减轻了路由器负荷,大大提高了传输的性能。 - IPv6 有应对伪造 IP 地址的网络安全功能以及防止线路窃听的功能,大大提升了安全性。
IPv6 地址的标识方法
IPv4 地址长度共 32 位,是以每 8 位作为一组,并用点分十进制的表示方式。
IPv6 地址长度是 128 位,是以每 16 位作为一组,每组用冒号 「:」 隔开。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7dxC1NT0-1691585772380)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809204148939.png)]](https://img-blog.csdnimg.cn/23839976e348416a878204f73749f39c.png)
IPv6 地址的结构
IPv6 的地址主要有以下类型地址:
- 单播地址,用于一对一的通信
- 组播地址,用于一对多的通信
- 任播地址,用于通信最近的节点,最近的节点是由路由协议决定
- 没有广播地址
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z4hDKYNG-1691585772381)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809204219590.png)]](https://img-blog.csdnimg.cn/6f39f5afeebc4c43aa877efcc3783b2a.png)
IP协议相关技术
- DNS 域名解析
- ARP 与 RARP 协议
- DHCP 动态获取 IP 地址
- NAT 网络地址转换
- ICMP 互联网控制报文协议
- IGMP 因特网组管理协议
DNS相关
DNS 可以将域名网址自动转换为具体的 IP 地址,DNS 中的域名都是用句点来分隔的,比如 www.server.com,这里的句点代表了不同层次之间的界限。在域名中,越靠右的位置表示其层级越高。
域名的层级关系类似一个树状结构:
- 根 DNS 服务器
- 顶级域 DNS 服务器(com)
- 权威 DNS 服务器(server.com)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-50JwPebL-1691585772382)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809204438887.png)]](https://img-blog.csdnimg.cn/8a8b12516f0c424a97c84716d28671b4.png)
域名解析的工作流程
浏览器首先看一下自己的缓存里有没有,如果没有就向操作系统的缓存要,还没有就检查本机域名解析文件 hosts,如果还是没有,就会 DNS 服务器进行查询,查询的过程如下:
- 客户端首先会发出一个 DNS 请求,问 www.server.com 的 IP 是啥,并发给本地 DNS 服务器(也就是客户端的 TCP/IP 设置中填写的 DNS 服务器地址)。
- 本地域名服务器收到客户端的请求后,如果缓存里的表格能找到 www.server.com,则它直接返回 IP 地址。如果没有,本地 DNS 会去问它的根域名服务器:“老大, 能告诉我 www.server.com 的 IP 地址吗?” 根域名服务器是最高层次的,它不直接用于域名解析,但能指明一条道路。
- 根 DNS 收到来自本地 DNS 的请求后,发现后置是 .com,说:“www.server.com 这个域名归 .com 区域管理”,我给你 .com 顶级域名服务器地址给你,你去问问它吧。”
- 本地 DNS 收到顶级域名服务器的地址后,发起请求问“老二, 你能告诉我 www.server.com 的 IP 地址吗?”
- 顶级域名服务器说:“我给你负责 www.server.com 区域的权威 DNS 服务器的地址,你去问它应该能问到”。
- 本地 DNS 于是转向问权威 DNS 服务器:“老三,www.server.com对应的IP是啥呀?” server.com 的权威 DNS 服务器,它是域名解析结果的原出处。为啥叫权威呢?就是我的域名我做主。
- 权威 DNS 服务器查询后将对应的 IP 地址 X.X.X.X 告诉本地 DNS。
- 本地 DNS 再将 IP 地址返回客户端,客户端和目标建立连接。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q6QankMo-1691585772383)(C:\Users\hp\AppData\Roaming\Typora\typora-user-images\image-20230809204522221.png)]](https://img-blog.csdnimg.cn/61c67eace82345d9ac17a556d86e0085.png)
ping的工作原理
什么是ping
ping 是应用层命令,ping应用的底层,用的是网络层的ICMP协议,ICMP是利用了IP协议进行消息的传输。。
Ping 是计算机网络中常用的诊断工具,用于测试网络连接和测量网络延迟。它通过发送 ICMP(Internet Control Message Protocol)回显请求报文,并接收对应的回显应答报文来实现。
Ping 的工作原理
-
发送请求:
- 客户端(发送方)向目标主机发送一个 ICMP 回显请求报文(Echo Request)。
- ICMP 回显请求报文中包含一个随机的标识符和序列号,以及一些其他的控制字段。
-
接收回应:
- 目标主机(接收方)收到 ICMP 回显请求报文后,会返回一个 ICMP 回显应答报文(Echo Reply)。
- 回应报文中包含与请求报文相同的标识符和序列号,以及其他的控制字段。
-
计算往返时间(Round-Trip Time):
- 客户端收到 ICMP 回显应答报文后,会计算往返时间(RTT),即从发送请求到接收回应的时间差。
- RTT 可以用来测量网络连接的延迟,即从客户端到目标主机的往返时间。
-
重复发送和统计信息:
- Ping 工具通常会重复发送一定数量的 ICMP 回显请求,并对每个请求的往返时间进行统计,如最小值、最大值和平均值等。
- 这样可以更准确地评估网络的状况和性能。
需要注意的是,Ping 工具使用 ICMP 协议来进行测试,而 ICMP 报文并不属于传输层的 TCP 或 UDP 协议。因此,Ping 只能测试基于 IP 协议的网络连接,而不能测试特定端口或应用层协议的可用性。
另外,由于 ICMP 报文的优先级较低,有些网络设备或防火墙可能会限制或过滤 ICMP 报文,导致 Ping 不可用或不准确。因此,在使用 Ping 进行网络测试时,需要考虑网络环境和设备的限制。
断网了,能ping通127.0.0.1吗
当网络断开时,通常情况下是无法进行网络通信的,包括无法进行 Ping 测试。然而,在某些情况下,尽管网络连接断开,仍然可以通过本地回环地址(loopback address)127.0.0.1 进行 Ping 测试。
本地回环地址是网络协议栈中的一部分,专门用于在本地主机上进行测试和通信。它指向本地主机自身,通过回环接口(loopback interface)进行通信,而不经过物理网络接口。
因此,即使网络断开,本地主机仍然可以通过发送 ICMP 回显请求到 127.0.0.1,然后接收回显应答来进行 Ping 测试。这是因为 Ping 测试在本地主机上进行,不需要经过网络接口。
需要注意的是,尽管可以 Ping 通 127.0.0.1,但这并不意味着网络连接正常。Ping 通 127.0.0.1 只是表示本地主机的网络协议栈正常工作,而不涉及物理网络连接。如果无法 Ping 通其他 IP 地址,可能是由于物理网络连接故障、路由器配置问题或其他网络故障引起的。在这种情况下,需要进一步检查和排除网络故障。
127.0.0.1、localhost和0.0.0.0的区别
127.0.0.1、localhost 和 0.0.0.0 都是与本地主机相关的 IP 地址,它们有一些区别和不同的使用场景。
-
127.0.0.1:
- 127.0.0.1 是本地回环地址(loopback address),指向本地主机自身。它是 IPv4 的回环地址之一。
- 当你在本地主机上访问 127.0.0.1 时,实际上是通过回环接口在本地主机内部进行通信,而不经过物理网络接口。
- 它常被用于测试和调试本地网络服务或应用程序,例如通过访问本地的 Web 服务器进行测试。
- 127.0.0.1 是一个固定的地址,对应于本地主机的回环接口。
-
localhost:
- localhost 是一个主机名,在大多数系统中都映射到 127.0.0.1,用于表示本地主机。
- 当你在本地主机上使用 localhost 访问时,实际上是在访问 127.0.0.1。
- localhost 可以用于在本地主机上进行网络测试和通信。
-
0.0.0.0:
- 0.0.0.0 是一个特殊的 IP 地址,通常用作通配符地址(wildcard address)或未指定地址(unspecified address)。
- 当一个服务监听在 0.0.0.0 上时,表示该服务会监听在所有可用的网络接口上,即同时监听本地主机的所有 IP 地址。
- 0.0.0.0 通常用于服务器配置中,表示该服务会接受来自任何网络接口的连接。
总结来说:
- 127.0.0.1 是本地主机的回环地址,用于本地主机内部的测试和通信。
- localhost 是一个主机名,通常映射到 127.0.0.1,用于表示本地主机。
- 0.0.0.0 是一个特殊的 IP 地址,用作通配符地址,表示服务会监听所有可用的网络接口。
常见面试题
当涉及计算机网络中的IP(Internet Protocol)时,面试中可能会涉及以下一些常见问题:
什么是IP地址?
- IP地址是一种用于在计算机网络中标识和定位设备的数字标识。它分为IPv4和IPv6两个版本,用于唯一地标识网络上的设备。
IPv4和IPv6有什么区别?
- IPv4使用32位地址,而IPv6使用128位地址,提供了更大的地址空间。IPv6设计旨在解决IPv4中地址耗尽的问题。
什么是子网掩码?
- 子网掩码是一个32位的二进制数字,用于指示IP地址中哪些部分是网络部分,哪些部分是主机部分。它与IP地址结合使用来创建子网。
解释一下CIDR是什么?
- CIDR(无类别域间路由)是一种更灵活的IP地址分配方法,允许将IP地址分成更小的子网,而不是受限于传统的IP分类。它使用带有前缀长度的IP地址表示,例如:192.168.1.0/24。
什么是公共IP地址和私有IP地址?
- 公共IP地址是在全球范围内唯一标识设备的IP地址,用于在互联网上通信。私有IP地址是在局域网内使用的地址,不能直接从公共互联网访问。
什么是NAT(网络地址转换)?
- NAT是一种技术,允许在私有网络和公共网络之间转换IP地址。它允许多个设备共享单个公共IP地址,通过维护一个地址映射表来实现。
**什么是IP路由?
- IP路由是将数据包从源主机传输到目标主机的过程。路由器使用路由表来确定数据包的下一个跳,以便将其沿正确的路径转发。
什么是默认网关?
- 默认网关是在局域网中连接到其他网络(通常是互联网)的设备。它是数据包离开局域网进入其他网络的出口点。
什么是ARP(地址解析协议)?
- ARP是用于将IP地址解析为物理MAC地址的协议,以便在局域网上发送数据包。
什么是IPv4地址的分类?
- IPv4地址根据第一个字节(8位)的范围分为A、B、C、D和E类。每个类别有不同的网络和主机部分分配。
相关文章:
计算机网络—IP
这里写目录标题 IP的基本认识网络层与数据链路层有什么关系IP地址基础知识IP 地址的分类什么是A、B、C类地址广播地址用来做什么什么是D、E类广播多播地址用于什么IP分类的优点IP分类的缺点 无分类地址CIDR如何划分网络号和主机号怎么进性子网划分 公有 IP 地址与私有 IP 地址公…...
Java 的 Stream
一、创建 Stream 1.1、创建 Stream 流 1.1.1、List 集合获取 Stream 流 Collection<String> list new ArrayList<>(); Stream<String> s1 list.stream(); 1.1.2、Map 集合获取 stream 流 Map<String, Integer> map new HashMap<>(); // …...
SolidUI社区-Discord
背景 随着文本生成图像的语言模型兴起,SolidUI想帮人们快速构建可视化工具,可视化内容包括2D,3D,3D场景,从而快速构三维数据演示场景。SolidUI 是一个创新的项目,旨在将自然语言处理(NLP)与计算机图形学相…...
Spring MVCSpring Boot
文章目录 Spring MVC什么是MVC模式Spring MVC优点SpringMVC 运行流程SpringMVC组件SpringMVC常用的注解有哪些SpringMVC的拦截器和过滤器有什么区别?执行顺序是什么 SpringBoot对SpringBoot的理解Spring和SpringBoot的关系?SpringBoot有哪些核心注解Spri…...
01-集群安装JDK(普通用户)
机器部署 集群规划 我们准备三台服务器kk01、kk02、kk03,内存4G、硬盘50G、处理器4核心2内核(总8) kk01使用 192.168.188.128 kk02使用 192.168.188.129 kk03使用 192.168.188.130 模板机准备 我们先创建一台作为模板机,后…...
小龟带你妙写排序之选择排序
选择排序 一. 原理二. 题目三. 思路分析四. 代码 一. 原理 选择排序(Selection-sort)是一种简单直观的排序算法。 工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未…...
深入解析 SOCKS5 代理及其在网络安全与爬虫中的应用
在当今数字化时代,网络安全和数据获取成为了互联网时代的重要课题。为了实现安全的网络连接和高效的数据采集,各种代理技术应运而生。本文将深入探讨 SOCKS5 代理及其在网络安全和爬虫领域的应用,同时比较其与其他代理方式的优势与劣势。 1.…...
day9 10-牛客67道剑指offer-JZ66、19、20、75、23、76、8、28、77、78
文章目录 1. JZ66 构建乘积数组暴力解法双向遍历 2. JZ19 正则表达式匹配3. JZ20 表示数值的字符串有限状态机遍历 4. JZ75 字符流中第一个不重复的字符5. JZ23 链表中环的入口结点快慢指针哈希表 6. JZ76 删除链表中重复的结点快慢指针三指针如果只保留一个重复结点 7. JZ8 二…...
气体检测仪语音报警芯片,可自行烧录的音频芯片,WT588F02B-8S
近年来,安全问题备受关注,特别是涉及气体泄漏的危险场景。 为了进一步增强气体检测仪的安全功能,市面上便研发出了一款有害气体报警器,并采用WT588F02B-8S语音提示芯片为元器件,为产品赋予更多声音,更多警示…...
gdb 调试汇编
starti 从第一条指令开始执行并停止. nexti 执行完当前指令; 当前指令可能是call一个函数, 但是仍然下一条指令才停止; stepi 下一条指令, 如果跳转也跟着跳转; 查看寄存器值 info registers 查看通用寄存器 info registers {register_name ...}指定寄存器的值 info reg…...
WebRTC音视频通话-新增或修改SDP中的码率Bitrate限制
WebRTC音视频通话-新增或修改SDP中的码率Bitrate限制参数 之前搭建ossrs服务,可以查看:https://blog.csdn.net/gloryFlow/article/details/132257196 之前实现iOS端调用ossrs音视频通话,可以查看:https://blog.csdn.net/gloryFlo…...
深入理解与运用Android Jetpack ViewModel
在Android开发中,数据与界面的分离一直是一项重要的挑战。为了解决这个问题,Google推出了Android Jetpack组件之一的ViewModel。ViewModel是一种用于管理UI相关数据的架构组件,它能够帮助开发者实现优雅的数据驱动和生命周期管理。本文将深入…...
【数据库】P0 创建数据库环境 MySQL + DataGrip
创建数据库环境 下载安装 MySQL下载安装 DataGrip 下载安装 MySQL Windows版本_MySQL 下载地址: https://dev.mysql.com/downloads/mysql/ 下载后依照默认顺序安装即可,本博文将讲述简约安装步骤; 如需详细安装步骤可见:https:/…...
js设置css变量控制页面一行展示指定个数的元素
前置知识: CSS变量之var()函数的应用——动态修改样式 & root的使用 flex相关知识 场景: 动态设置给父元素内子元素设置每行排列几个 通过 document.body.style.setProperty(--itemNum, 5)设置样式变量,然后通过给父元素设置display: f…...
4.0 Spring Boot入门
1. Spring Boot概述 Spring Boot介绍 Spring Boot是Pivotal团队在2014年推出的全新框架,主要用于简化Spring项目的开发过程,可以使用最少的配置快速创建Spring项目。 Spring Boot版本 2014年4月v1.0.0.RELEASE发布。 2.Spring Boot特性 约定优于配…...
[国产MCU]-BL602开发实例-I2C与总线设备地址扫描
I2C与总线设备扫描 文章目录 I2C与总线设备扫描1、I2C介绍2、I2C驱动API介绍3、I2C使用实例I2C (Inter-Intergrated Circuit)是一种串行通讯总线,使用多主从架构,用来连接低速外围装置。 每个器件都有一个唯一的地址识别,并且都可以作为一个发送器或接收器。每个连接到总线的…...
Python Opencv实践 - 图像平移
import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)#图像平移 #cv.warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) # M是仿射变换矩阵,对于平移来说M是一…...
易服客工作室:WordPress 6.3性能改进
随着WordPress 6.3发布,本文总结了该版本的性能改进。虽然WordPress 6.2显著提高了Core的加载时间性能,树立了很高的标准,但WordPress 6.3性能改进已经超越了这些结果:根据进行的性能基准测试,与WordPress 6.2相比&…...
LeetCode 周赛上分之旅 #39 结合中心扩展的单调栈贪心问题
⭐️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问。 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度…...
山东布谷科技直播软件开发WebRTC技术:建立实时通信优质平台
在数字化的时代,实时通信成为了人们远程交流的主要方式,目前市场上也出现了很多带有实时通信交流的软件,实时通信符合人们现在的需求,所以在直播软件开发过程中,开发者也运用了实时通信技术为直播软件加入了实时通信的…...
大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...
MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)
macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
