当前位置: 首页 > news >正文

计算机网络之IPv4深度解析

一.IP地址

IP地址的组成方式:网络号 + 主机号

可以这样理解,根据网络号找路由器,根据主机号找连着路由器的主机

早期分类的IP地址

表示如下:

其中,有些特殊的IP地址:

主机号全为0,表示本网络本身,主机号全为1,表示本网络的广播地址

网络号和主机号全为0,代表自己的主机,全为1代表这个路由器的广播域进行广播

因此,我们发现,正常主机的主机号是不能全为0或者全为1的,因此,如果一个网络的主机号有N位,它最多有2^N-2个主机,同时,我们也知道,一个网络的主机号长度绝对不能为1

私有IP地址

可以理解为只能在同一个网络(连接同一个路由器)的情况下的交流

他们需要经过网络地址转换将专用网络转换为公共地址,节省了IP地址的消耗

NAT路由器通过NAT转换表更改IP地址和端口

划分子网

三级IP地址结构:网络号+子网号+主机号(请注意:划分子网的子网号实际是从主机号中划分的)

网络号相同,在同一个网络下,子网号相同,在同一个子网下

划分的子网可以大小相同,也可以不同

子网掩码:网络号和子网号全为1,主机号全为0

可与IP地址进行与运算得出对应的子网的网络地址,例如

208.115.21.15的子网掩码225.225.225.0,可以得出子网是208.115.21.0

CIDR表示IP地址:网络前缀+主机号        或 IP +子网掩码中1的长度(斜线表示法)

路由聚合:两个网络用16进制书写后进行与运算后用CIDR表示IP地址

二.协议

ARP(地址解析协议):进行IP地址到MAC地址的映射

局域网内传输数据报:1.ARP告诉缓存查看目的地址,有则硬件地址写入MAC帧       

 2.若无,封装并广播请求分组,接收方单播发送相应分组,写入ARP缓存,发送帧

DHCP(动态主机配置协议,应用层):允许计算机加入新网络和自动获取IP地址

1.客户广播“发现信息”,源地址0.0.0.0         目的地址255.255.255.255

2.服务器广播“DHCP提供信息”源地址服务器地址                 目的地址255.255.255.255

3.客户若接收地址,广播“DHCP请求消息”        源地址为0.0.0.0,目的地址为255.255.255.255

4.服务器“DHCP确认信息”分配IP地址        源地址DHCP服务器,目的地址255.255.255.255

ICMP(网际控制报文协议):差错报文,询问报文

三.IP地址习题

1.转发表

按照最长前缀匹配原则,首先是能匹配,然后看谁最长,R3的前22位是不匹配的,目的地址前22位132.19.111011,R3的前22位为132.19.111001不能是R3,答案为R2

2.划分子网

主机号剩余5位,但划分后最少剩余2位,因此子网位3位,8,当只有一个子网,不进行划分时,每个子网含IP地址最多,但要把主机号全0和全1去掉

3.两个地址

一台主机如果有两个IP地址,那么他们的网络一定不同,192属于C类网络,选C

4.多余地址

不重叠意味着IP地址一定不相同,不引入多余地址意味着两者含有所有地址,B,不重合,且聚合后为172.116.166.128/25

5.通信故障

通信故障意味着不在同一个子网中,网络号+子网号共27位,主机号共5位,A,C,D在同一个子网202.3.1.32/27中,B属于2022.3.1.64/27

6.广播地址

广播地址的主机号一定全为1,前18位为网络号+主机号,因此把原IP的后14位全部改为1即可

7.最小子网

最小子网的划分类似于A,B,C类的划分,0,10,110这样进行划分,故第五个子网的子网号为11110,占5位,7位的主机号,故答案为254

8.默认网关

默认网关的主机号全为0,子网掩码看网络号+子网号长度为27,全部置为1即可,选择D

9.源IP地址

经过R2后,改成全球IP地址,R1和R2在同一子网中,因此,R2的IP为195.123.0.33

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 黄山黄小徽光影乐园:思特科技打造沉浸式光影乐园解决方案,快乐指数拉满了!
  • LabVIEW滚动轴承故障诊断系统
  • 数值计算引擎:搭建远程容器开发环境
  • html 首行缩进2字符
  • python语言day7 函数式编程 面向对象编程
  • android13顶部状态栏里面调节背光,不隐藏状态栏面板
  • CDD数据库文件制作(十一)——服务配置(0x19_DTC Code)
  • 【Qt开发】QSerialPort串口配置、发送、接收回调函数 多线程接收的串口类封装
  • 【python基础】—离线环境下,在linux中安装python包(以sqlalchemy为例)
  • SpringBoot获取不到Nacos配置信息报错,Nacos鉴权
  • 基于Python的上市公司年报数字化词频统计:深入解析与实战
  • 倒计时:可添加可删除的倒计时函数
  • 从零开始手写STL库:Map
  • C++:list类(迭代器)
  • Spring SSM框架--MVC
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  • java中具有继承关系的类及其对象初始化顺序
  • mockjs让前端开发独立于后端
  • MySQL QA
  • mysql_config not found
  • vue-cli3搭建项目
  • 动态规划入门(以爬楼梯为例)
  • 基于Android乐音识别(2)
  • 理解在java “”i=i++;”所发生的事情
  • 前端面试之闭包
  • 日剧·日综资源集合(建议收藏)
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (11)MSP430F5529 定时器B
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (四)软件性能测试
  • (学习总结16)C++模版2
  • (一)80c52学习之旅-起始篇
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • * CIL library *(* CIL module *) : error LNK2005: _DllMain@12 already defined in mfcs120u.lib(dllmodu
  • .htaccess 强制https 单独排除某个目录
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET Core 2.1路线图
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • /3GB和/USERVA开关
  • /var/lib/dpkg/lock 锁定问题
  • @RequestMapping处理请求异常
  • @Value读取properties中文乱码解决方案
  • [ Linux Audio 篇 ] 音频开发入门基础知识
  • [ vulhub漏洞复现篇 ] AppWeb认证绕过漏洞(CVE-2018-8715)
  • [20180129]bash显示path环境变量.txt
  • [2019.3.5]BZOJ1934 [Shoi2007]Vote 善意的投票
  • [AutoSar NVM] 存储架构