JavaEE-一文了解IP协议与IP地址

news/2024/5/14 20:51:01/文章来源:https://blog.csdn.net/st200112266/article/details/130330747

目录

    • IP协议
    • 什么是IP地址
    • IP地址的组成
    • 动态分配IP
    • NAT机制(网络地址转换)

IP协议

IP协议是不可靠、无连接的
不可靠:表示IP协议不能保证IP数据报能成功的到达目的地。IP仅提供传输服务,任何可靠性的要求都必须由上层来提供(如TCP)。如果传输过程发生错误,IP协议简单的丢弃该数据报,然后发送ICMP消息给发送端。
无连接:表示IP协议不维护任何关于后续数据报的状态信息,每个数据报都是相互独立的。这也说明,IP数据报可能不是按照发送顺序被接收到的,很有可能后发送的数据被先收到。
在这里插入图片描述

4位版本号(version):指定IP协议的版本,对于IPv4来说,就是4.
4位头部长度(header length):用于标识首部长度,以4字节为单位,所以首部的最大长度为60字节,最小为20字节
8位服务类型(Type Of Service):3位优先权弃用,4位TOS字段,1位保留必须值0(TOS字段:最大吞吐量ftp、最小延时ssh、最高可靠性snmp、最小成本nntp)
16位总长度(total length):IP数据报整体占多少个字节
16位标识(id):唯一的标识主机发送的报文。如果IP报文在数据链路层被分片了,那么每一个片里面的这个id都是相同的
3位标志:第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到)。第
二位置为1表示禁止分片,这时候如果报文长度超过MTU,IP模块就会丢弃报文。第三位表
示"更多分片",如果分片了的话,最后一个分片置为1,其他是0。类似于一个结束标记
13位分片偏移:描述当前分片在原始报文中的位置,相对起始位置的偏移量,以8字节为单位
8位TTL:报文的最大生存周期,设置数据报可以经过的最多路由器数量,每经过一个路由器,该值就减去1。当该值为0时,数据报就被丢弃。通常初始值为32或64,防止路由环路
8位协议:表示上层协议的类型
16位校验和:校验数据一致性
32位源地址和32位目标地址:表示发送端和接收端

什么是IP地址

IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。

IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)例如:00111001.11001001.00110001.00110010
通常用“点分十进制”的方式来表示,即 a.b.c.d 的形式.
例如我的ip地址为10.13.81.107
在这里插入图片描述

IP协议目前有两种 IPv4与IPv6 ,现在一般默认情况下☞的都是IPv4;
IPv4由4个字节的二进制数组成可提供约为42亿9千万个IP地址.

IP地址的组成

ip地址是由“网络号”和“主机号”组成的。
网络号: 标识网段,保证相互连接的两个网段具有不同的标识;
主机号:表示主机,同一网段内,主机之间有相同的网络号,但是必须有不同的主机号;

IP地址分为五类:
A类地址的第一位为0;
B类地址的前两位为10;
C类地址的前三位为110;
D类地址的前四位为1110;
E类地址的前五位为11110.
在这里插入图片描述

大多通过子网掩码来区分网络位和主机位,子网掩码跟IP地址一一对应,子网掩码为1的是网络位,为0的是主机位。
例如: 10.13为网络号 81.107为主机号
在这里插入图片描述

动态分配IP

正如上述所说IP地址大约42亿9千万,而现在地球上差不多有70亿的人口,就算每人一个也不够用,所以就产生了动态分配IP的机制.
简单来说就是设备上网才进行IP地址的分配,不上网就不进行IP地址的分配.

但这也是杯水车薪解决不了问题,于是就有了NAT机制与IPv6,一开始IPv4需要更换设备并不受大家所欢迎,而NAT只需要升级软件即可.

NAT机制(网络地址转换)

过去一个IP地址代表一个人,快递员只要知道IP地址就能找到这个人,而NAT技术就是把一个IP地址变成一个小区,快递员只需要把包裹交给门卫,门卫再将包裹交给住户,反过来如果住户要寄包裹,也是交给门卫,小区之外是公网,小区之内是私网.
意思也就是说你在内网的IP地址为10.13.81.107,访问外网时经过NAT路由器,路由器会将源IP由10.13.81.107替换为外网的IP.

私网ip : 10.*
172.16.* - 172.31*
192.168.*(不同局域网中可重复出现).
公网ip: 剩下的ip(必须唯一)

当然NAT机制也有缺陷:
1.公网无法访问私网
2.一但NAT设备异常,TCP连接就会断开
3.IP地址的替换销毁都需要额外开销,性能会受影响

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

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

相关文章

【Cpp】手撕搜索二叉树(KV模型)

文章目录 二叉搜索树的应用搜索二叉树(KV模型)代码:二叉搜索树的性能分析 二叉搜索树的应用 K模型:K模型即只有key作为关键码,结构中只需要存储Key即可,关键码即为需要搜索到的值。 比如:给一个单词word,判断该单词是…

QGIS--开发OpenSCENARIO动态场景(三)--制作动态场景

一、添加scenario&#xff0c;carla的环境变量 export CARLA_ROOT/path/to/your/carla/installation export SCENARIO_RUNNER_ROOT/path/to/your/scenario/runner/installation export PYTHONPATH$PYTHONPATH:${CARLA_ROOT}/PythonAPI/carla/dist/carla-<VERSION>.egg ex…

Java核心技术 卷1-总结-12

Java核心技术 卷1-总结-12 具体的集合链表数组列表 具体的集合 下表中除了以 Map结尾的类之外&#xff0c; 其他类都实现了 Collection 接口&#xff0c;而以 Map结尾的类实现了 Map 接口。 集合类型描述ArrayList一种可以动态增长和缩减的索引序列LinkedList一种可以在任何位…

MySql知识

架构分层 模块详解 Connector&#xff1a;支持各种语言和SQL的交互&#xff0c;如PHP&#xff0c;Python&#xff0c;JAVA JDBC Management Services & Utilities&#xff1a;系统管理和控制工具&#xff0c;包括备份恢复&#xff0c;MySQL复制&#xff0c;集群等 Connec…

机器学习算法 随机森林

文章目录 一、概述1.1 集成学习1.2 决策树1.3 随机森林 二、Sklearn中的随机森林2.1 分类树API2.2 参数 2.2 回归树API2.2.1 重要参数 2.3 随机森林调参 三、总结 一、概述 1.1 集成学习 多个模型集成成为的模型叫做集成评估器&#xff08;ensemble estimator&#xff09;&am…

一文带你入门MySQL

目录 一、MySQL登陆1.配置MySQL环境变量2.MySQL登陆命令 二、MySQL基础知识1.数据类型&#xff08;1&#xff09;整型&#xff08;2&#xff09;浮点型&#xff08;3&#xff09;日期型&#xff08;4&#xff09;字符型&#xff08;5&#xff09;数据类型小结 2.MySQL的约束【重…

图解PMP项目管理马斯洛需求层次理论在公司管理中的应用!

马斯洛的需求层次结构是心理学中的激励理论&#xff0c;包括人类需求的五级模型&#xff0c;通常被描绘成金字塔内的等级。 从层次结构的底部向上&#xff0c;需求分别为&#xff1a;生理&#xff08;食物和衣服&#xff09;&#xff0c;安全&#xff08;工作保障&#xff09;…

【UE】保存游戏的demo

效果 注意左上角的打印信息&#xff0c;每当我按下k键&#xff0c;值就加1。当我关闭后重进游戏&#xff0c;按下k键&#xff0c;值是从上次退出游戏的值开始累加的。 步骤 1.新建蓝图&#xff0c;父类为“SaveGame” 命名为“MySaveGame”并打开 新建一个整型变量&#xff0c…

CentOS7(二)Go、Java、Python、Node开发环境配置

文章目录 Go环境配置Java环境配置Python环境配置Node 环境配置 CentOS7&#xff08;一&#xff09;安装和基础配置 CentOS7&#xff08;二&#xff09;Go、Java、Python、Node开发环境配置 根据前文&#xff0c;我们将所有的自定义环境变量&#xff0c;都收拢在了 /root/.bash_…

可视化Echarts 柱状图、饼状图、折线图的设置

柱状图 饼状图 折线图 柱状图 基本的柱状图设置 <template> <div ref"ec" id"ec"></div> </template><script> import * as echarts from "echarts"; //引用echartsexport default {mounted(){let mc ech…

【ONE·C++ || 模板进阶】

总言 主要介绍模板相关内容&#xff1a;非类型模板参数、类模板特化、模板的分离编译。 文章目录 总言1、非类型模板参数1.1、主要介绍1.2、std::array 简要说明 2、模板的特化2.1、基本介绍2.2、函数模板特化2.3、类模板特化2.3.1、基本说明2.3.2、用途举例2.3.3、分类&#…

反垃圾邮件产品技术要求和测试评价方法

声明 本文是学习信息安全技术 反垃圾邮件产品技术要求和测试评价方法. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 反垃圾邮件产品等级划分 根据产品功能要求和安全保证要求的不同&#xff0c;以及反垃圾邮件产品适用应用环境的不同&#xff0c;将…

android studio 页面布局(1)

<?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"xmlns:tools"http://schemas.android.com/too…

大孔树脂型号,A-722,ADS500,ADS600,ADS750,ADS800

一、产品介绍 基于吸附功能的聚苯乙烯特种树脂 Tulsimer ADS-600 是一款没有离子官能基的&#xff0c;由交联聚苯乙烯合成的功能强大的吸附型树脂。 Tulsimer ADS-600 主要应用于水溶液中吸附酚及其化合物&#xff0c;氯代烃等含氯物质&#xff0c;表面活性剂&#xff0…

60 openEuler 22.03-LTS 搭建MySQL数据库服务器-安装、运行和卸载

文章目录 60 openEuler 22.03-LTS 搭建MySQL数据库服务器-安装、运行和卸载60.1 安装60.2 运行60.3 卸载 60 openEuler 22.03-LTS 搭建MySQL数据库服务器-安装、运行和卸载 60.1 安装 配置本地yum源&#xff0c;详细信息请参考《openEuler 22.03-LTS 搭建repo服务器》。 清除…

【Android入门到项目实战-- 6.1】—— 如何申请用户权限

目录 一、申请权限 1、布局文件 2、MainActivity类 3、AndroidManifest文件 你在使用安卓APP时可能经历过以下场景&#xff1a;使用APP的拍照功能时需要你授权使用相机。那么APP是如何完成申请权限功能的&#xff1f; 访问&#xff1a;https://developer.android.google.cn/…

SpringCloud --- Eureka注册中心

一、场景 假如我们的服务提供者user-service部署了多个实例&#xff0c;如图 思考几个问题&#xff1a; order-service在发起远程调用的时候&#xff0c;该如何得知user-service实例的ip地址和端口&#xff1f; 有多个user-service实例地址&#xff0c;order-service调用时该…

贝叶斯学习(Bayesian Learning)提高篇

Advanced Bayesian Learning 前言Review Bayes Optimal ClassifierNaive Bayes Classifier这里其实不太懂ExampleLaplace smoothing加完之后原数据的比例会发生变化分子1&#xff0c;如何确定分母的加数 Naive Bayes for Document Classi cationProblem statementDocument repr…

DataX-阿里开源离线同步工具在Windows上实现Sqlserver到Mysql全量同步和增量同步

场景 Kettle-开源的ETL工具集-实现SqlServer到Mysql表的数据同步并部署在Windows服务器上&#xff1a; Kettle-开源的ETL工具集-实现SqlServer到Mysql表的数据同步并部署在Windows服务器上_etl实现sqlserver报表服务器_霸道流氓气质的博客-CSDN博客 上面讲过Kettle的使用&am…

【服务器数据恢复】重装系统导致分区无法访问的数据恢复案例

服务器数据恢复环境&#xff1a; 磁盘柜raid卡15块磁盘组建一组raid5磁盘阵列&#xff0c;划分2个lun&#xff1b; 上层操作系统划分若干分区&#xff0c;通过LVM扩容方式将其中一个分区加入到了root_lv中&#xff0c;其他分区格式化为XFS文件系统。 服务器故障&#xff1a; 为…