IPV4地址介绍

4.1IP地址简介

目前的全球因特网所采用的协议族是TCP/IP协议族。IP是TCP/IP协议族中网络层的协议,是TCP/IP协议族的核心协议。IP协议定义了一种地址编码,称为IP地址,它是网络中网络段、网络设备接口、主机的编码,它并不是一种物理地址,而是逻辑地址,即地址是可以被分配、并且非固定、可修改的。

IPv4,是互联网协议(Internet Protocol,IP)的第四版,也是第一个被广泛使用,构成现今互联网技术的基石的协议。1981年 Jon Postel 在RFC791中定义了IP,IP可以运行在各种各样的底层网络上,比如端对端的串行数据链路、卫星链路等等。局域网中最常用的是以太网。

IPv4的下一个版本就是IPv6,IPv6正处在不断发展和完善的过程中,它在不久的将来将取代目前被广泛使用的IPv4。

4.1.1 IP报文

IP协议有版本之分,分别是IPv4和IPv6。目前,Internet上的IP报文主要都是IPv4报文,但是逐步在向IPv6过渡。若无特别声明,本章所提及的IP均指IPv4,IPV4的报文格式如图4-1所示:

IPv4(Internet Protocol Version 4)协议族是TCP/IP协议族中最为核心的协议族。它工作在TCP/IP协议栈的网络层,该层与OSI参考模型的网络层相对应。

IPv6(Internet Protocol Version 6)是网络层协议的第二代标准协议,也被称为IPng(IP Next Generation)。它是Internet工程任务组IETF(Internet Engineering Task Force)设计的一套规范,是IPv4(Internet Protocol Version 4)的升级版本,后面的章节我们再做详细介绍。

图4-1 IP报头

其包头主要内容如下:

  • Version:4 bit,4:表示为IPv4;6:表示为IPv6。
  • Header Length:4 bit,首部长度,如果不带Option字段,则为20,最长为60。
  • Type of Service:8 bit,服务类型。只有在有QoS差分服务要求时,这个字段才起作用。
  • Total Length:16 bit,总长度,整个IP数据包的长度。 包括首部和数据之和,单位为字节,最长65535,总长度必须不超过最大传输单元MTU。
  • Identification:16 bit,标识,主机每发一个报文,加1,分片重组时会用到该字段。
  • Flags:3 bit,标志位。
  • Fragment Offset:12 bit,片偏移,分片重组时会用到该字段。
  • Time to Live:8 bit,生存时间。
  • Protocol:8 bit,协议:下一层协议。指出此数据包携带的数据使用何种协议,以便目的主机的IP层将数据部分上交给哪个进程处理。

常见值:

1: ICMP, Internet Control Message;

2: IGMP, Internet Group Management;

6: TCP , Transmission Control Protocol;

17: UDP, User Datagram Protocol。

  • Header Checksum:16 bit,首部检验和。
  • Source IP Address:32 bit,源IP地址。
  • Destination IP Address:32 bit,目的IP地址。
  • Options:可变,选项字段。
  • Padding:可变,填充字段,全填0。

    

4.1.2 IP地址表示方法和范围

  1. 二进制与十进制的转换

在学习IP地址的时候,我们首先要搞懂什么是十进制、什么是二进制,并且要知道他们之间的转化过程,掌握这些知识对我们学习IP地址有很大的益处。

首先我们看一下什么是十进制,比如我今天买了一本书128元,这个数字128就是十进制,我们就数字128来分析一下十进制。

        • 十进制一共有10个数字:0 1 2 3 4 5 6 7 8 9
        • 128=1x102+2x101+8x100=1x100+2x10+8x1=128,在十进制中,10代表权,N代表幂,其中个位为100,十位为101,百位为103。

掌握了十进制以后,我们来看一个二进制:

        • 二进制一共有2个数字:0 1
        • 1101化成十进制为1x23+1x22+0x21+1x20=1x8+1x4+0+1=13,在二进制中,2代表权,N代表幂,从二进制的右边开始依次为20  21  22 ---。

  1. IP地址的表示

IP地址是长度是32 bit,由4个字节组成。为了阅读和书写方便,IP地址通常采用点分十进制数来表示,但通信设备在对IP地址进行计算时使用的是二进制的操作方式。例如,采用点分十进制表示的IP地址192.168.10.1也可以用二进制表示,它的对应关系如图4-2所示:

图4-2 IP地址二进制与十进制的关系

        如果大家对二进制和十进制的转换非常清楚了就可以知道IP地址的范围用二进制表示为:00000000.00000000.00000000.00000000-11111111.11111111.11111111.11111111,化成十进制为:0.0.0.0-255.255.255.255。

4.1.3 IP地址构成

IP地址被划分为网络部分和主机部分,如图4-3所示,网络部分负责表示所在的逻辑网络区域,主机部分表示该主机在网段中的具体逻辑位置。同一网络区域中所有主机的网络部分是同一个。

图4-3 IP地址构成

如果把IP地址和电话号码做类比:电话号码0731-85015906中,0731是区号,代表湖南省长沙市,类似于IP地址中的网络部分;85015906是湖南省长沙市内某一个电话机的确切号码,类似于IP地址中的主机部分。

4.1.4 IP地址分类

为了方便IP地址的管理及组网,IP地址分成五类,如图4-4所示:

图4-4 IP地址的分类

A类地址:第一个bit必须为0,这样就能计算出A类地址的第一个字节的取值范围为0-127或(00000000)2-(01111111)2,第一个字节为网络位区间,后三个字节为主机位区间。在A类地址中当第一个字节为0或127时,它不归属于A类网络,我们在4.2.3中介绍。

B类地址:前2bit必须为10,那么B类网络地址第一个字节的取值范围为128-191或(10000000)2-(10111111)2,前两个字节段为网络位区间,后两个字节段为主机位区间。

C类地址:前3bit必须为110,第一个字节取值范围为192-223或(11000000)2-(11011111)2。C类地址前三个字节为网络位区间,第四个字节为主机位区间。

D类地址:这一类被定义为组播地址。

E类地址:用于科学研究。

4.4.5 IP地址的计算

  1. IP地址的分类

读者朋友们要记住A类IP地址的范围为1-126,B类IP地址的范围为128-191,C类IP地址的范围为192-223,D类IP地址的范围为224-239。只要记住这些知识就能很快的区分IP地址的范围。

  1. 网络位和主机位

读者朋友只要记住A类IP地址网络位为8位,主机位为24位,B类IP地址网络位为16位,主机位为16位,C类IP地址的网络位为24位,主机位为8位。就能很快的看出一个IP地址的网络位和主机位

举例1:10.1.1.1属于A类IP地址,因为A类IP地址的范围为1-126

举例2:172.16.1.1属于B类IP地址,因为B类IP地址的范围为128-191

举例3:192.168.1.1属于C类IP地址,因为C类IP地址的范围为192-223

  1. 子网掩码

子网掩码的定义:网络全为1,主机位全为0

举例1:10.1.1.1它的子网掩码为255.0.0.0,因为10.1.1.1的网络位有8位,主机位有24位,所以应该为:

11111111.000000000.00000000.00000000(255.0.0.0)子网掩码

举例2:172.16.1.1它的子网掩码为255.255.0.0,因为172.16.1.1的网络位有16位,主机位有16位,所以应该为:

11111111.11111111.00000000.00000000 (255.255.0.0) 子网掩码

举例3:192.168.1.1它的子网掩码为255.255.255.0,因为192.168.1.1的网络位为24位,主机位为8位,所以应该为:

11111111.1111111.1111111.00000000(255.255.255.0)子网掩码

  

  1. 网络地址

网络地址定义:网络位不变,主机机位全为0

举例1:10.1.1.1它的网络地址为10.0.0.0,因为10.1.1.1的网络位有8位,主机位有24位,所以前面8位网络位不变,主机位全部为0,所以应该为:

10.00000000.00000000.00000000 (10.0.0.0) 网络地址

举例2:172.16.1.1它的网络地址为172.16.0.0,因为172.16.1.1的网络位有16位,主机位有16位,网络位不变,主机位全部置0,所以应该为:

172.16.00000000.00000000(172.16.0.0)网络地址

举例3:192.168.1.1它的网络地址为192.168.1.0,因为192.168.1.1的网络位为24位,主机位为8位,网络位不变,主机位全部置0,所以应该为:

192.168.1.00000000(192.168.1.0)网络地址

  1. 广播地址

广播地址定义:网络位不变,主机位全为1

举例1:10.1.1.1它的广播地址为10.255.255.255,因为10.1.1.1的网络位有8位,主机位有24位,前面8位网络位不变,后面24位主机位全部为1,所以应该为:

10.11111111.11111111.11111111 (10.255.255.255) 广播地址

举例2:172.16.1.1它的广播地址为172.16.255.255,因为172.16.1.1的网络位有16位,主机位有16位,网络位不变,主机位全部置1,所以应该为:

172.16.111111111.11111111(172.16.255.255)广播地址

举例3:192.168.1.1它的广播地址为192.168.1.255,因为192.168.1.1的网络位为24位,主机位为8位,网络位不变,主机位全部置1,所以应该为:

192.168.1.11111111(192.168.1.255)网络地址

  1. 主机地址

主机地址算法:网络地址加1,广播地址减1。

举例1:10.1.1.1的网络地址为10.0.0.0,广播地址为10.255.255.255,所以主机地址为10.0.0.1至10.255.255.254

举例2:172.16.1.1的网络地址为172.16.0.0,广播地址为172.16.255.255,所以主机地址为172.16.0.1至172.16.255.254。

举例3:192.168.1.1的网络地址为192.168.1.0,广播地址为192.168.1.255,所以主机地址为192.168.1.1至192.168.1.254。

  1. 主机数

主机数的算法:2N-2,其中N代表主机位。

举例1:10.1.1.1的网络位为8位,主机位为24位,所以它的主机数为224-2=16777214。

举例2:172.16.1.1的网络位为16位,主机位为16位,所以它的主机数为216-2=65534。

举例3:192.168.1.1的网络位为24位,主机位为8位,的以它的主机数为28-2=254。

以上内容总结见表4-1

                                                    表4-1 IP地址的计算

IP地址

类别

网络位

主机位

子网掩码

网络地址

广播地址

主机地址

主机数

10.1.1.1

A

8

24

255.0.0.0

10.0.0.0

10.255.255.255

10.0.0.1-10.255.255.254

224-2

172.16.1.1

B

16

16

255.255.0.0

172.16.0.0

172.16.255.255

172.16.0.1-172.16.255.254

216-2

192.168.1.1

C

24

8

255.255.255.0

192.168.1.0

192.168.1.255

192.168.1.1-192.168.1.254

28-2

4.4.7  私有IP地址

为了解决IP地址短缺的问题,提出了私有地址的概念。私有地址是指内部网络或主机地址,这些地址只能用于某个内部网络,不能用于公共网络。

  • 公网IP地址:连接到Internet的网络设备必须具有由IANA(Network Address Translation, 网络地址转换)分配的公网IP地址。
  • 私网IP地址:私网IP地址的使用使得网络可以得到更为自由地扩展,因为同一个私网IP地址是可以在不同的私有网络中重复使用的。
  • 私有IP地址的了分为A类、B类和C类。

A类:10.0.0.0~10.255.255.255

B类:172.16.0.0~172.31.255.255

C类:192.168.0.0~192.168.255.255

私有网络连接到Internet:私有网络由于使用了私网IP地址,是不允许连接到Internet的。后来在实际需求的驱动下,许多私有网络也希望能够连接到Internet上,从而实现私网与Internet之间的通信,以及通过Internet实现私网与私网之间的通信。私网与Internet的互联,必须使用网络地址转换 (NAT)技术实现。

4.4.8  特殊IP地址

IP地址空间中,有一些特殊的IP地址,这些IP地址有特殊的含义和作用如图4-5所示:

图4-5 特殊的IP地址

  1. 255.255.255
  • 这个地址称为有限广播地址,它可以作为一个IP报文的目的IP地址使用。
  • 路由器接收到目的IP地址为有限广播地址的IP报文后,会停止对该IP报文的转发。
  1. 0.0.0.0
  • 如果把这个地址作为网络地址,它的意思就是“任何网络”的网络地址;如果把这个地址作为主机接口地址,它的意思就是“这个网络上主机接口”的IP地址。
  • 例如:当一个主机接口在启动过程中尚未获得自己的IP地址时,就可以向网络发送目的IP地址为有限广播地址、源IP地址为0.0.0.0的DHCP请求报文,希望DHCP服务器在收到自己的请求后,能够给自己分配一个可用的IP地址。
  1. 127.0.0.0/8
  • 这个地址为环回地址,它可以作为一个IP报文的目的IP地址使用。其作用是测试设备自身的软件系统。
  • 一个设备产生的、目的IP地址为环回地址的IP报文是不可能离开这个设备本身的。
  1. 169.254.0.0/16
  • 如果一个网络设备获取IP地址的方式被设置成了自动获取方式,但是该设备在网络上又没有找到可用的DHCP服务器,那么该设备就会使用169.254.0.0/16网段的某个地址来进行临时通信。

本文出自作者的《HCIA Datacom学习指南》
 

在文章最后加作者VX:可以免费领取以下资料

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

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

相关文章

【 Quartz框架中各个表及其字段含义】

Quartz框架中各个表及其字段含义 Quartz是一个强大的任务调度框架,它通过在数据库中维护多张表来存储和管理任务信息。了解这些表的结构和字段含义,有助于我们更好地理解Quartz的工作原理,并在实际应用中进行有针对性的优化和管理。 想了解Quartz框架其他信息可以参考下面的博…

Linux离线一键安装Docker及docker-compose环境

背景: 在当前软件部署运维环境中由于Docker容器化优势越来越明显,因些被许多公司运维所采用,那首先如何快速安装Docker及docker-compose基础环境就第一时间被人们关注,本人同样在经过多次手工逐条用命令安装的过程,整理…

基于51单片机的温湿度控制系统

一.硬件方案 本设计采用51单片机每2秒钟从DHT11温湿度传感器中读入温度和湿度,在液晶屏上即时显示。液晶屏上同时显示温湿度上限值,该上限值保存外外部EEPROM存储器中,掉电不失,并且可以通过四只按键上调或下调。当温度或湿度值超…

[猫头虎分享21天微信小程序基础入门教程]第21天:小程序的社交分享与消息推送

[猫头虎分享21天微信小程序基础入门教程]第21天:小程序的社交分享与消息推送 第21天:小程序的社交分享与消息推送 📲 自我介绍 大家好,我是猫头虎,一名全栈软件工程师。今天我们继续微信小程序的学习,重…

vue项目部署二级目录访问时的nginx环境刷新404问题

location / {root D:/bunkerSystem/admin/;index index.html;try_files $uri $uri/ /mixing-admin/index.html;}

MySQL8.0.35简介

MySQL 8.0.35 是 MySQL 数据库管理系统的一个具体版本,该版本包含了多种特性和改进。以下是关于 MySQL 8.0.35 的主要信息,包括其发布背景、性能提升、以及安装和配置的相关内容: 1. 发布背景 MySQL 8.0 系列自 2017 年起开始开发&#xff…

MQ第②讲~保证消息可靠性

前言 上一讲我们讲了MQ实际工作中常见的应用场景,这一节讲一下消息的可靠性,如果对MQ掌握程度比较高的铁子,可以不用看,节省您宝贵的时间。 消息的大致链路 消息从投递到消费需要考虑如下几个问题 生产者的消息是否成功投递到消…

虚拟机改IP地址

使用场景:当你从另一台电脑复制一个VMware虚拟机过来,就是遇到一个问题,虚拟的IP地址不一样(比如,一个是192.168.1.3,另一个是192.168.2.4,由于‘1’和‘2’不同,不是同一网段&#…

浅谈路由器转发数据包

当路由器转发数据包时,它会经历一系列步骤,包括接收数据包、路由表查询、以及转发数据包。以下是详细的步骤描述: 1. 接收数据包 以太网帧到达端口:当一个以太网帧到达路由器的某个网络接口(端口)时&#…

Ubuntu设置静态IP方法

Ubuntu设置静态IP方法 编辑文件:sudo vim /etc/netplan/01-network-manager-all.yaml network: version: 2 renderer: networkd ethernets: ens33: # 替换为你的网络接口名称 (可通过ifconfig查看)addresses: - 192.168.3.198/24 # 设置静态IP地址和子网掩…

20240529瑞芯微官方Toybrick TB-RK3588开发板的Debian11下使用SCP拷贝文件

20240529瑞芯微官方Toybrick TB-RK3588开发板的Debian11下使用SCP拷贝文件 2024/5/29 20:48 1、ADB链接异常。 2、BT打开之后找不到设备? 不清楚:是我拿到的开发板的问题,还是Toybrick/Rockchip官方没有做好。 3、现在最新版本的WINSCP&…

【论文解读】MD-VQA: Multi-Dimensional Quality Assessment for UGC Live Videos

原文下载地址:MD-VQA: Multi-Dimensional Quality Assessment for UGC Live Videos 时间:2023 年 级别:IEEE 作者:上海交通大学、阿里巴巴 摘要: UGC直播视频在捕获过程中常常会受到各种失真的影响,导致视觉质量多样。这些源视频在通过媒体服务器提供商分发给最终用户之…

154.找出出现至少三次的最长特殊字符串|(力扣)

代码解决 class Solution { public:int maximumLength(string s) {// 使用unordered_map来存储每个连续子串出现的次数unordered_map<string, int> mp;string key; // 存储当前的连续子串int ans -1; // 存储最终的答案&#xff0c;如果没有符合条件的子串&#xff0c…

centos系统编译openssl和openssl-lib的rpm安装包

centos系统编译openssl和openssl-lib的rpm安装包 由于漏洞原因需要升级系统的openssl版本到新的版本&#xff0c;但是openssl最新版本需要自己编译生成rpm安装文件&#xff0c;以下是编译步骤&#xff1a; 1、下载对应版本的源码包 可以去openssl github下载&#xff0c;htt…

深度学习常用命令

tensorboard —logdir路径 conda 相关 - conda env list - conda activate 环境名 - conda env export > 111.yaml 导出环境到111.yaml文件 - conda env create -f 111.yaml 根据文件创建环境 - conda list 查看当前环境安装包 - conda remove -n your_env_name --all …

高级数据结构-并查集

例题1&#xff1a; Alice和Bob玩了一个古老的游戏&#xff1a;首先画一个 &#x1d45b;&#x1d45b; 的点阵&#xff08;下图 n3 &#xff09;。 接着&#xff0c;他们两个轮流在相邻的点之间画上红边和蓝边&#xff1a; 直到围成一个封闭的圈&#xff08;面积不必为 1&#…

Cisco网络工程师和网络安全视频教程(完整版)

0001.IT技术包括的技能 0002.课程目标.mp4 0003.Internet示意图.m 0004.局域网和广域网区 0005.服务器客户机mp4 0006.应用层和表示层.m.. 0007.会话层.mp4 0008.传输层.mp4 0009.网络层数据链路层 0010.OSI参考模型和网 0011.普换法排错.mp4 0012.OSI参考模型和网. 0013.网线和…

Mysql 插入或者更新 踩坑

最近在做电商项目&#xff0c;里面存在定时同步的代理商接口&#xff0c;接口xml里面使用了 MySQL的插入或者更新语法&#xff0c;我测试的时候老是发现数据没有更新&#xff0c;点进去才发现这个坑&#xff0c;路过的xdm 可以看下. 我的代码就不贴上来了&#xff0c;写一下具…

如何更改SSH服务器端口以减少蛮力攻击

本周有一个客户&#xff0c;购买Hostease的独立服务器&#xff0c;询问我们的在线客服&#xff0c;如何更改SSH服务器端口以减少蛮力攻击&#xff1f;我们为用户提供相关教程&#xff0c;用户很快解决了遇到的问题。在此&#xff0c;我们分享这个操作教程&#xff0c;希望可以对…

8086 汇编笔记(二):寄存器(内存访问)

一、内存中字的存储 字单元的概念&#xff1a;字单元&#xff0c;即存放一个字型数据(16 位)的内存单元&#xff0c;由两个地址连续的内存单元组成 由上一章学习可知&#xff1a;高地址内存单元中存放字型数据的高位字节&#xff0c;低地址内存单元中存放字型数据的低位字节 …