IPV4地址的原理和配置
第三章:IP地址的配置
IPv4(Internet Protocol Version 4)协议族是TCP/IP协议族中最为核心的协议族。它工作在TCP/IP协议栈的网络层,该层与OSI参考模型的网络层相对应。网络层提供了无连接数据传输服务,即网络在发送分组时不需要先建立连接,每一个分组(也就是IP数据报文)独立发送。
3.1IP地址概述
网络层位于数据链路层与传输层之间。网络层中包含了许多协议,其中最为重要的协议就是IP协议。网络层提供了IP路由功能。理解IP路由除了要熟悉IP协议的工作机制之外,还必须理解IP编址以及如何合理地使用IP地址来设计网络。
- IPV4包头格式如图3-1所示:
表3-1 IPV4包头格式
Version | Header length | Type of service | Total length | |
Identification | Flags | Fragment offset | ||
TTL | protocol | Header checksum | ||
Source ip address | ||||
Destination ip address | ||||
Options | padding | |||
- 4位版本号(version)指定IP协议的版本。对IPv4来说,其值是4,对于IPV6来说,其值为6。
- 4位头部长度(header length)表示IP报文头部的长度,以32比特为单位递增,最小值为5,最大值为15,所以IP报文头部长度最小为20字节,最大为60字节。
- 8位服务类型(Type Of Service,TOS)只有在有QoS差分服务要求时这个字段才起作用。
- 16位总长度(total length)是指整个IP数据报的长度,以字节为单位,因此IP数据报的最大长度为65535(216-1)字节。但由于MTU的限制,长度超过MTU的数据报都将被分片传输,所以实际传输的IP数据报(或分片)的长度都远远没有达到最大值。接下来的3个字段则描述了如何实现分片。
- 16位标识(identification)唯一地标识主机发送的每一个数据报。其初始值由系统随机生成;每发送一个数据报,其值就加1。该值在数据报分片时被复制到每个分片中,因此同一个数据报的所有分片都具有相同的标识值。
- 3位标志字段的第一位保留。第二位(Don’t Fragment,DF)表示“禁止分片”。如果设置了这个位,IP模块将不对数据报进行分片。在这种情况下,如果IP数据报长度超过MTU的话,IP模块将丢弃该数据报并返回一个ICMP差错报文。第三位(More Fragment,MF)表示“更多分片”。除了数据报的最后一个分片外,其他分片都要把它置1。
- 13位分片偏移(fragmentation offset)是分片相对原始IP数据报开始处(仅指数据部分)的偏移。实际的偏移值是该值左移3位(乘8)后得到的。由于这个原因,除了最后一个IP分片外,每个IP分片的数据部分的长度必须是8的整数倍(这样才能保证后面的IP分片拥有一个合适的偏移值)。
- 8位生存时间(Time To Live,TTL)是数据报到达目的地之前允许经过的路由器跳数。TTL值被发送端设置(常见的值是64)。数据报在转发过程中每经过一个路由,该值就被路由器减1。当TTL值减为0时,路由器将丢弃数据报,并向源端发送一个ICMP差错报文。TTL值可以防止数据报陷入路由循环。
- 8位协议(protocol)用来区分上层协议,其中,ICMP是1,TCP是6,UDP是17。
- 16位头部校验和(header checksum)由发送端填充,接收端对其使用CRC算法以检验IP数据报头部(注意,仅检验头部)在传输过程中是否损坏。
- 32位源IP地址(Source ip address)表示发送者的IP地址。
- 32位目的IP地址(Destination ip address)表示接受者的IP地址。
- 选项字段(option)用于安全,测试等目的。
- 填充(padding)长度可变,在使用选项的过程中,有可能造成数据包包头部分不是32比特的整数部,那么需要填充数据来补齐。
- IP地址分类如图3-2所示:
表3-2 IP地址分类
类别 | 强制 | 地址范围 | 作用 |
A | 0xxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx | 0.0.0.0~127.255.255.255 | 大型企业 |
B | 10xxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx | 128.0.0.0~191.255.255.255 | 中型企业 |
C | 110xxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx | 192.0.0.0~223.255.255.255 | 小型企业 |
D | 1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx | 224.0.0.0~239.255.255.255 | 组播 |
E | 1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx | 240.0.0.0~255.255.255.255 | 科学研究 |
- IP地址专业术语
- 网络位:用来标识一个网络,代表IP地址所属网络。
- 主机位:用来区分一个网络内的不同主机,能唯一标识网段上的某台设备。
- 网络地址:用于标识一个网络。
- 广播地址:用于向该网络中的所有主机发送数据的特殊地址。
- 子网掩码:网络掩码一般与IP地址结合使用,其中值为1的比特对应IP地址中的网络位;值为0的比特对应IP地址中的主机位,以此来辅助我们识别一个IP地址中的网络位与主机位。即网络掩码中1的个数就是IP地址的网络号的位数,0的个数就是IP地址的主机号的位数。
4、私有IP地址
- A: 10.0.0.0~10.255.255.255 即10.0.0.0/8
- B:172.16.0.0~172.31.255.255即172.16.0.0/12
- C:192.168.0.0~192.168.255.255 即192.168.0.0/16
3.2实验一:IP地址配置
- 实验目的
掌握接口IPv4地址的配置方法
- 实验拓扑
IP地址配置的实验拓扑如图3-1所示:
图3-1 IP地址配置
- 实验步骤
(1):R1的配置
<Huawei>system-view //进入到系统视图
[Huawei]undo info-center enable //关闭路由器输出信息
[Huawei]sysname R1 //修改设备名为R1
[R1]interface g0/0/0 //进入到接口g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.12.1 24 //配置IP地址和子网掩码
[R1-GigabitEthernet0/0/0]undo shutdown //打开接口
[R1-GigabitEthernet0/0/0]quit //退出
(2) 查看R1接口的ip地址
[R1] display ip interface brief //查看接口的ip地址
*down: administratively down //“*”表示该接口被管理员手动关闭,例如在接口执行命令“shutdown”
^down: standby //“^”表示该接口是备份接口
(l): loopback //(l)代表环回
(s): spoofing //(s)代表欺骗
The number of interface that is UP in Physical is 2 //表示物理状态up的接口数量为2
The number of interface that is DOWN in Physical is 2 //表示物理状态down的接口数量为2
The number of interface that is UP in Protocol is 2 //表示协议状态up的接口数量为2
The number of interface that is DOWN in Protocol is 2 //表示协议状态down的接口数量为2
Interface IP Address/Mask Physical Protocol
GigabitEthernet0/0/0 192.168.12.1/24 up up
GigabitEthernet0/0/1 unassigned down down
GigabitEthernet0/0/2 unassigned down down
NULL0 unassigned up up(s)
【技术要点】
华为设备上支持两种配置子网掩码的方式:
- 点分十进制:[R1-GigabitEthernet0/0/0]ip address 192.168.12.1 255.255.255.0//配置IP地址和子网掩码
- 前缀长度:[R1-GigabitEthernet0/0/0]ip address 192.168.12.1 24 //配置IP地址和子网掩码
(3):R2的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 192.168.12.2 24
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
- 实验调试
R1访问R2,使用ping命令进行测试
<R1>ping 192.168.12.2 //ping测试192.168.12.2的连通性
PING 192.168.12.2: 56 data bytes, press CTRL_C to break //使用CTRL_C可以终止测试
Reply from 192.168.12.2: bytes=56 Sequence=1 ttl=255 time=70 ms
Reply from 192.168.12.2: bytes=56 Sequence=2 ttl=255 time=40 ms
Reply from 192.168.12.2: bytes=56 Sequence=3 ttl=255 time=90 ms
Reply from 192.168.12.2: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 192.168.12.2: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 192.168.12.2 ping statistics ---
5 packet(s) transmitted //发送五个包
5 packet(s) received //接收到五个包
0.00% packet loss //0%的丢包率
round-trip min/avg/max = 30/52/90 ms //来回旅程延迟分别为最小30ms、最大90ms、平均52ms
【技术要点】
ping命令是最常见的用于检测网络设备可访问性的调试工具,它使用ICMP报文信息可以来检测:
远程设备是否可用。
与远程主机通信的来回旅程(round-trip)的延迟(delay)。
包(packet)的丢失情况。
3.3实验二:子网地址配置
- 实验需求
- 掌握子网地址的配置
- 实验拓扑
子网地址的配置的实验拓扑如图3-2
图3-2 子网地址配置
- 实验步骤
(1):路由器R1的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 172.16.1.1 24
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
(2):路由器R2的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 172.16.1.2 24
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
- 实验调试
<R1>ping 172.16.1.2
PING 172.16.1.2: 56 data bytes, press CTRL_C to break
Reply from 172.16.1.2: bytes=56 Sequence=1 ttl=255 time=100 ms
Reply from 172.16.1.2: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 172.16.1.2: bytes=56 Sequence=3 ttl=255 time=40 ms
Reply from 172.16.1.2: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 172.16.1.2: bytes=56 Sequence=5 ttl=255 time=70 ms
--- 172.16.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/60/100 ms
【技术要点】
172.16.1.0/24是172.16.0.0/16的一个子网:
子网掩码:255.255.255.0
网络地址:172.16.1.0
广播地址:172.16.1.255
主机地址:172.16.1.1至172.16.1.254
3.4实验三:节点地址配置
- 实验需求
① 掌握节点地址的配置
- 实验拓扑
节点地址配置的实验拓扑如图3-3所示:
图3-3 节点地址配置
- 实验步骤
(1):路由器R1的配置
<Huawei>system-view
[Huawei]sysname R1
[Huawei]undo info-center enable
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 172.16.1.0 16
[R1-GigabitEthernet0/0/0]undo shutdown
[R1-GigabitEthernet0/0/0]quit
(2):路由器R2的配置
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname R2
[R2]interface g0/0/1
[R2-GigabitEthernet0/0/1]ip address 172.16.2.0 16
[R2-GigabitEthernet0/0/1]undo shutdown
[R2-GigabitEthernet0/0/1]quit
- 实验调试
<R1>ping 172.16.2.0
PING 172.16.2.0: 56 data bytes, press CTRL_C to break
Reply from 172.16.2.0: bytes=56 Sequence=1 ttl=255 time=60 ms
Reply from 172.16.2.0: bytes=56 Sequence=2 ttl=255 time=30 ms
Reply from 172.16.2.0: bytes=56 Sequence=3 ttl=255 time=40 ms
Reply from 172.16.2.0: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 172.16.2.0: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 172.16.2.0 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/38/60 ms
【技术要点】
很多的初学者对上面的内容比较难理解,最后一位数为0了,这难道还是一个IP地址?
172.16.0.0/16
子网掩码:255.255.0
网络地址:172.16.0.0
广播地址:172.16.255.255
主机地址:172.16.0.1至172.16.255.254
172.16.1.0后面16位主机位不是全0,也不是全1,所以它是一个可用的IP地址。
同理172.16.2.0也是一个可用的IP地址。
3.5IP地址命令汇总
表3-3列出了本章使用的命令
表3-3 IP地址配置命令汇总
命令 | 作用 |
interface g0/0/0 | 进入到接口g0/0/0 |
ip address | 配置IP地址 |
undo shutdown | 打开接口 |
Display ip interface brief | 查看接口的ip简要信息 |
本文出自作者的《华为认证HCIA-datacom认证实验指南》
相关文章:

IPV4地址的原理和配置
第三章:IP地址的配置 IPv4(Internet Protocol Version 4)协议族是TCP/IP协议族中最为核心的协议族。它工作在TCP/IP协议栈的网络层,该层与OSI参考模型的网络层相对应。网络层提供了无连接数据传输服务,即网络在发送分…...

软件测试面试准备——(一)Selenium(1)基础问题及自动化测试
滴滴面试:1. 自己负责哪部分功能?农餐对接系统分为了两大子系统,一个是个人订餐系统,二是餐馆、个人与农产品供应商进行农产品交易系统。我主要负责组织测试人员对该系统进行测试。我们测试分为两个阶段:一、功能测试阶…...
AcWing 1230.K倍区间
AcWing 1230. K倍区间 题目描述 给定一个长度为 NNN 的数列,A1,A2,…ANA_1, A_2, … A_NA1,A2,…AN ,如果其中一段连续的子序列 Ai,Ai1,…AjA_i, A_{i1}, … A_jAi,Ai1,…Aj 之和是 KKK 的倍数,我们就称这个区间 [i,j][i,j][i,…...

kubernetes集群部署springcloud项目【AL】【未写完】
kubernetes集群部署springcloud项目【AL】 (先手工做,非自动化) #环境: 192.168.73.138 master 192.168.73.139 node1 192.168.73.140 node2 192.168.73.137 harbor、mysqlgit clone https://github.com/lizhenliang/simple-…...

各种音频接口比较
时间 参考:https://www.bilibili.com/video/BV1SL4y1q7GZ/?spm_id_from333.337.search-card.all.click&vd_source00bd76f9d6dc090461cddd9f0deb2d51, https://blog.csdn.net/weixin_43794311/article/details/128941346 接口名字时间公司支持格式…...

软件测试面试理论(超详细)
【面试理论知识】1、你的测试职业发展是什么? 测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己…...
c++学习笔记-二进制文件操作(哔站-黑马程序员c++教学视频)
一、基本概念 以二进制的方式对文件进行读写操作 打开方式指定为 ios::binary 优点:可以写入自己定义的数据类型 1、写文件 二进制方式写文件:流对象调用成员write 函数原型:ostream& write(const char * buffer,int len);参数解释…...

内网渗透(二十三)之Windows协议认证和密码抓取-Mimikatz介绍和各种模块使用方法
系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内网渗透(五)之基础知识-Active Directory活动目录介绍和使用 内网渗透(六)之基…...
Nginx if的使用教程
if指令该指令用来支持条件判断,并根据条件判断结果选择不同的Nginx配置。语法if (condition){...}默认值—位置server、locationcondition为判定条件,可以支持以下写法:1. 变量名。如果变量名对应的值为空字符串或"0",i…...

备考蓝桥杯【快速排序和归并排序】
🌹作者:云小逸 📝个人主页:云小逸的主页 📝Github:云小逸的Github 🤟motto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前…...

Taro使用微信OCR插件无法调用onSuccess回调问题
Taro使用微信插件无法调用onSuccess回调问题小程序后台添加插件在开放社区购买相应的套餐详细步骤1.在app.config.js中添加如下代码2.在页面的page.config.js添加插件3.使用ocr-navigator识别身份证小程序后台添加插件 在开放社区购买相应的套餐 购买地址 详细步骤 1.在app.…...

【Java】代码块的细节你搞懂了吗(基础知识七)
希望像唠嗑一样,one step one futher。 目录 (1)代码块的应用场景 (2)代码块的细节 1.static 代码块只加载一次 2.当调用类的静态成员时,类会加载 3. 使用类的静态成员时,static代码块会被执…...

设计模式C++实现12:抽象工厂模式
参考大话设计模式; 详细内容参见大话设计模式一书第十五章,该书使用C#实现,本实验通过C语言实现。 抽象工厂模式(Abstract Factory),提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们…...

目标检测论文阅读:GraphFPN算法笔记
标题:GraphFPN: Graph Feature Pyramid Network for Object Detection 会议:ICCV2021 论文地址:https://ieeexplore.ieee.org/document/9710561/ Abstract 特征金字塔已经被证明在需要多尺度特征的图像理解任务中是强大的。SOTA的多尺度特征…...

实测2023款哪吒U-II,智驾功能对女司机很友好
最近,我们受邀试驾了2023款哪吒U-II。这是一款A级新能源SUV,是哪吒U的改款车型。哪吒U系列自2020年3月上市到2023年1月,累计销售数量达76688台,也因此被称为15万级智能天花板。2023款哪吒U-II的一大亮点是:针对以往哪吒…...

Python自动化测试【软件测试最全教程(附笔记、学习路线)】,看完即就业
最近看到很多粉丝在后台私信我,叫我做一期Python自动化测试的教程,其实关于这个问题,我也早就在着手准备了,我录制了一整套完整的Python自动化测试的教程,上传到网盘里了,大家有兴趣的可以去文末交流群免费…...

2023/2/13总结
今天主要学习了哈夫曼树。 哈夫曼树 哈夫曼树是二叉树的一种,它是一种WPL最优二叉树。 叶子结点(也称叶节点):指的是自己下面不再连接有节点的节点(即末端),称为叶子节点(又称为终…...
webSock前端
1.什么是webSocket WebSocket是一种在单个TCP连接上进行全双工通信的协议。允许服务端主动向客户端推送数据。 2.如何使用webSocket WebSocket 构造函数WebSocket 对象作为一个构造函数,用于新建 WebSocket 实例。 代码如下: let ws = new WebSocket(网址); 2.websock事件: …...
AcWing 3956. 截断数组(每日一题)
AcWing 3956. 截断数组 题目描述 给定一个长度为 nnn 的数组 a1,a2,…,ana_1, a_2, …, a_na1,a2,…,an 。 现在,要将该数组从中间截断,得到三个非空子数组。 要求,三个子数组内各元素之和都相等。 请问,共有多少种不同…...

Android 一体机研发之修改系统设置————屏幕亮度
Android 一体机研发之修改系统设置————屏幕亮度 Android 一体机研发之修改系统设置————声音 Android 一体机研发之修改系统设置————自动锁屏 前言 最近工作略微有点儿空闲,抽空给大家总结一下:近期一直搞得一体机app研发,适用…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...