一文搞懂IP

IP

    • 1. 基本介绍
    • 2. IP地址定义
    • 3. IP地址分类
    • 4. 子网掩码
    • 5. 全局地址与私有地址

1. 基本介绍

TCP/IP 协议的心脏是网络层,主要“实现节点之间的通信”,即“点对点(end-to-end)通信”。

网络层包含IP(Internet Protocol)及DNS(Domain Name System)、ARP(Address Resolution Protocol)ICMP(Internet Control Message Protocol)等协议。

网络层与数据链路层的关系

数据链路层提供两个直连设备间的通信,网络层通过IP实现不同数据链路上节点间的通信。

在这里插入图片描述

为了从A地到达B地需要制定行程表,并且购买相应的机票与火车票。

行程表的作用就相当于网络层。机票与火车票用于在某一限定“区间内”移动,“区间内”就相当于通信网络上的数据链路,“区间内”的出发地点和目的地点就如同某一个数据链路的源地址(源 MAC)和目标地址(目的MAC)等首部信息。

2. IP地址定义

IP 地址用于在“连接到网络中的所有主机中识别出进行通信的目标地址”。

(1)IPv4

IPv4 地址由 32 位正整数来表示,在计算机内部以二进制方式被处理。 2 32 = 4 , 294 , 967 , 296 2^{32}=4,294,967,296 232=4,294,967,296理论上可将43亿台计算机设备同时连接到网络。

一般将32 位的IP地址以每8位为一组,分成4组,每组以“.”隔开,再将每组数转换为十进制数。 10101100. 00010100. 00000001. 00000001 10101100. \; \;00010100. \; \;00000001. \; \;00000001 10101100.00010100.00000001.00000001 172. 20. 1. 1 172.\; \;\; \;\; \; \;\;\; \; \;20.\; \;\; \;\; \; \;\;\; \; \;1.\; \;\; \;\; \;\; \; \;\;\; \; \;\; \;1\; \;\; \;\; \; \;\;\;\; \;\; 172.20.1.1

(2)IPv6

IPv6地址由128位正整数表示 2 128 ≈ 3.4 × 1 0 28 2^{128}\approx 3.4 \times 10 ^{28} 21283.4×1028

一般将128位比特的IPv6地址每16bit为一组,每组用冒号(:)分割标记。如果出现连续的0,可以将0省略,并用两个冒个(::)隔开。

e.g.

二进制: 1111111011011100 : 1011101010011000 : 0111011001010100 : 0011001000010000 : 1111111011011100 : 1011101010011000 : 0111011001010100 : 0011001000010000 1111111011011100:1011101010011000:\\0111011001010100:0011001000010000:\\1111111011011100:1011101010011000:\\0111011001010100:0011001000010000 1111111011011100:1011101010011000:0111011001010100:0011001000010000:1111111011011100:1011101010011000:0111011001010100:0011001000010000十六进制: F E D C : B A 98 : 7654 : 3210 : F E D C : B A 98 : 7654 : 3210 FEDC:BA98:7654:3210:\\FEDC:BA98:7654:3210 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210二进制: 0001000010000000 : 0000000000000000 : 0000000000000000 : 0000000000000000 : 0000000000000100 : 0000100000000000 : 0010000000001100 : 0100000101111010 0001000010000000:0000000000000000:\\0000000000000000:0000000000000000:\\0000000000000100:0000100000000000:\\0010000000001100:0100000101111010 0001000010000000:0000000000000000:0000000000000000:0000000000000000:0000000000000100:0000100000000000:0010000000001100:0100000101111010十六进制(省略后): 1080 : : 8 : 800 : 200 C : 417 A 1080::8:800:200C:417A 1080::8:800:200C:417A

3. IP地址分类

IP地址由“网络标识(网络地址)+主机标识(主机地址)”组成,根据IP地址第1位到第四位的值,分为A、B、C、D四类地址。

在这里插入图片描述
(1)A类地址

A类地址以0开头,第1至8位为网络地址,后面24位为主机地址。网络地址范围为: 0.0.0.0 ∼ 127.0.0.0 0.0.0.0\sim127.0.0.0 0.0.0.0127.0.0.0由于全0和全1的地址为保留地址,因此一个A类网段可以分配 2 24 − 2 = 16777214 2^{24}-2=16777214 2242=16777214个主机。

在这里插入图片描述

(2)B类地址

B类地址以10开头,第1至16位为网络地址,后面16位为主机地址。网络地址范围为: 128.0.0.0 ∼ 191.0.0.0 128.0.0.0\sim191.0.0.0 128.0.0.0191.0.0.0由于全0和全1的地址为保留地址,因此一个B类网段可以分配 2 16 − 2 = 65534 2^{16}-2=65534 2162=65534个主机。
在这里插入图片描述
(3)C类地址

C类地址以110开头,第1至24位为网络地址,后面8位为主机地址。网络地址范围为: 192.0.0.0 ∼ 223.255.255.0 192.0.0.0\sim223.255.255.0 192.0.0.0223.255.255.0由于全0和全1的地址为保留地址,因此一个C类网段可以分配 2 8 − 2 = 254 2^{8}-2=254 282=254个主机。
在这里插入图片描述
(4)D类地址

D类地址以1110开头,第1至32位为网络地址,后面8位为主机地址。网络地址范围为: 224.0.0.0 ∼ 239.255.255.255 224.0.0.0\sim239.255.255.255 224.0.0.0239.255.255.255

D类地址没有主机标识,常被用于多播(将包发送给特定组内的所有主机)。

4. 子网掩码

子网掩码(subnet mask)用来标识网络地址与主机地址,实现网络地址长度的灵活标识。

子网掩码也是一个32位的数字,对应IP地址网络标识部分的位全部为1,对应IP主机标识部分的位全部为0。

e.g.

IP地址:172.20.100.52
子网掩码:255.255.255.192

由于192的二进制表示为:11000000,因此172.20.100.52的前26位是网络地址,有时也表示为 172.20.100.52/24

在这里插入图片描述

5. 全局地址与私有地址

互联网中任何一台主机或路由器必须有一个唯一的IP地址,这个全局IP地址由互联网名称与数字地址分配机构ICANN,Internet Corporation for Assigned Names and Numbers)进行管理。

ICANN是一个非营利性的国际组织,成立于1998年10月,负责全球IP地址的分配等工作。

随着互联网的迅速普及,IP地址不足的问题日趋显著,于是又出现了私有网络的IP地址,只要保证在这个网络内地址唯一即可,其地址范围如下:

  • A类 :10. 0. 0. 0 ~10. 255.255.255 (10/8)
  • B类 :172.16.0. 0 ~ 172.31. 255. 255 (172.16/12)
  • C类:192.168.0.0 ~192.168.255.255((192.168/16)

在上述范围内的IP地址都属于私有IP或内网IP,而在此之外的IP地址称为全局 IP或公网IP。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/755957.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux的基本指令讲解

1 ls指令 语法: ls [选项][目录或文件] 功能: 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。 常用选项: -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -d…

Leetcode 387. First Unique Character in a String

Problem Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1. Algorithm Use two lists: one list is used to count the letters in “s”; the other list is the position where the letter first …

Json Web Token(JWT) 快速入门

推荐视频:【从零开始掌握JWT】 目录 第一章 会话跟踪 01 使用Cookie和Session,jsessionid 02 使用token 例子一:自定义token 例子二:使用redis存储token 第一章 会话跟踪 应用背景 :浏览器访问web应用&#xff…

下拉树级带搜索功能

可以直接复制粘贴到自己的项目里,方法处把接口替换一下 <template><div><el-popoverplacement"bottom"width"200"trigger"click"><el-inputslot"reference"class"mrInput":placeholder"placehol…

天锐绿盾 | 公司内部文件数据 \ 资料加密系统,数据防泄密软件

#防止设计图纸、各种类型文件、各种类型软件、财务数据、客户资料、源代码&#xff0c;数据存储服务器、SVN、Git等商业核心文件数据外泄# 天锐绿盾是一款专业的企业级文件数据及资料加密系统&#xff0c;旨在为企业内部数据安全提供强有力的支持。 德人合科技 | ——天锐绿盾…

生成式人工智能如何改变商业和社会

生成式人工智能是否将带来生产力黄金时代,或在全球经济中摧毁数以百万计的生计?它是否将带人们步入个人充实的新成长道路,或引导他们一步步走入孤独和隔离的死胡同?它是否将 引领人类 走向新的高处,或播下我们集体毁灭的种子? 自ChatGPT上线以来14个月来,人们还没有完全弄清…

B站python爬虫课程笔记(Q11-15)

下面是学习的网址&#xff1a; ​​​​​​【Python爬虫】 目录 11、class定义类别的一些问题 1&#xff09;定义init初始化函数的一些问题 2&#xff09;定义两个不同函数之间要有空行 3&#xff09;print的技巧 12、class定义类别的一些问题2 13、class_inheritance类…

MySQL数据库的基本概念与安装

目录 引言 一、数据库的基本概念 &#xff08;一&#xff09;数据、表与数据库 1.数据(Data) 2.表 3.数据库 &#xff08;二&#xff09;数据库管理系统 &#xff08;三&#xff09;数据库系统 二、数据库的发展 三、主流数据库的介绍 &#xff08;一&#xff09;关…

地理数据表达方式学习——KML与SHP

一、KML-Keyhole Markup Language Keyhole Markup Language (KML)是一种XML符号&#xff0c;用于浏览器中二维地图和三维地球的地理注释和地理可视化&#xff08;地理数据包括点、线、面、多边形、多面体以及模型等&#xff09;。KML是伴随着Google Earth的使用而开发的&#x…

word的第六课笔记

1.排版的六大特点&#xff08;留白、对齐、亲密、对比、重复、可自动更新&#xff09; 先设置页边距为2厘米&#xff0c;左侧装订线考虑2.75厘米。段落间距段前段后设置一个就可以了&#xff0c;如段前0.5行 &#xff08;留白&#xff1a;让文字更加容易阅读&#xff0c;调大页…

AMRT 3D 数字孪生引擎(轻量化图形引擎、GIS/BIM/3D融合引擎):智慧城市、智慧工厂、智慧建筑、智慧校园。。。

AMRT3D 一、概述 1、提供强大完整的工具链 AMRT3D包含开发引擎、资源管理、场景编辑、UI搭建、项目预览和发布等项目开发所需的全套功能&#xff0c;并整合了动画路径、精准测量、动态天气、视角切换和动画特效等工具。 2、轻量化技术应用与个性化定制 AMRT3D适用于快速开…

体验函数式组件简单实现Loading 加载(造轮子篇)

一、前言 最近想着优化一下网站&#xff0c;在文章列表页加一个Loading操作&#xff0c;于是就想到了函数式组件&#xff0c;于是本章就来和大家一起简单探讨下实现思路。 二、Loading设计 这里我想实现的效果是&#xff1a;当我们刷新页面的时候&#xff0c;前端请求接口&…

【MySQL】中位数巧解之给定数字的频率查询中位数

力扣题 1、题目地址 571. 给定数字的频率查询中位数 2、模拟表 Numbers 表&#xff1a; Column NameTypenumintfrequencyint num 是这张表的主键(具有唯一值的列)。这张表的每一行表示某个数字在该数据库中的出现频率。 3、要求 中位数 是将数据样本中半数较高值和半数…

扭矩测量仪行业研究:规模不断扩大市场需求旺盛

一、市场趋势 扭矩测量仪是用于精确测量旋转力矩的精密仪器&#xff0c;广泛应用于汽车、航空航天、机械制造和电子产品等领域。随着工业自动化程度的提升和精密制造的需求增加&#xff0c;扭矩测量仪的市场呈现出稳步增长的趋势。 二、主要竞争者 市场上的主要竞争企业包括德国…

华为OD机试 - 求字符串中所有整数的最小和(Java JS Python C C++)

题目描述 输入字符串s&#xff0c;输出s中包含所有整数的最小和。 说明&#xff1a; 字符串s&#xff0c;只包含 a-z A-Z 合法的整数包括 1&#xff09;正整数&#xff1a;一个或者多个0-9组成&#xff0c;如 0 2 3 002 102 2&#xff09;负整数&#xff1a;负号 – 开头…

Python爬虫之Scrapy框架系列(24)——分布式爬虫scrapy_redis完整实战【XXTop250完整爬取】

目录&#xff1a; 每篇前言&#xff1a;1.使用分布式爬取豆瓣电影信息&#xff08;1&#xff09;settings.py文件中的配置&#xff1a;&#xff08;2&#xff09;spider文件的更改&#xff1a;&#xff08;3&#xff09;items.py文件&#xff08;两个项目一致&#xff01;&…

Vue el-table 合并单元格

一般常见的就是下图这种的单列&#xff0c;上下重复进行合并。 有时候可能也会需要多行多列的合并。 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content&qu…

MySQL TRIM函数

TRIM函数通常用于去除字符串的开头和结尾的空格或其他指定字符。在不同的数据库系统中&#xff0c;TRIM函数的语法可能略有不同&#xff0c;以下是一些常见数据库系统中TRIM函数的用法示例&#xff1a; ### 1. MySQL 在MySQL中&#xff0c;TRIM函数的语法如下&#xff1a; sql …

3.19网络编程

select实现的TCP并发服务器 #include <myhead.h> #define SER_IP "192.168.141.134" #define SER_PORT 8888 int main(int argc, const char *argv[]) {// 1、创建一个套接字int sfd -1;sfd socket(AF_INET, SOCK_STREAM, 0);if (sfd -1){perr…

Division by Invariant Integers using Multiplication

在处理器中&#xff0c;整数除法的成本通常是整数乘法的几倍&#xff1a; 流水线式的组合乘法器通常在不到10个周期内完成操作&#xff1b;而对于整数除法则没有硬件支持&#xff0c;或者使用的迭代除法器比乘法器慢几倍。 表 1.1 比较了一些处理器上乘法和除法的时间。这张表…