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

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: JavaEE-一文了解IP协议与IP地址

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地址的替换销毁都需要额外开销,性能会受影响


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
5月前
|
网络协议 Linux 数据库
计算机网络知识之URL、IP、子网掩码、端口号
计算机网络知识之URL、IP、子网掩码、端口号
|
7月前
|
域名解析 网络协议 Linux
TCP/IP协议及配置、IP地址、子网掩码、网关地址、DNS与DHCP介绍
TCP/IP协议及配置、IP地址、子网掩码、网关地址、DNS与DHCP介绍
|
7月前
|
网络协议 安全 Java
【JavaEE初阶】 TCP协议详细解析
【JavaEE初阶】 TCP协议详细解析
|
存储 网络协议 Java
【JavaEE】数据链路层-以太网协议-DNS
JavaEE & 网络原理补充-数据链路层 & 以太网协议 数据链路层更接触底层,也就离我们更远了,所以只需要了解即可,在本文章也不会涉及太深! 1. 以太网数据帧 以太网数据帧就是对IP数据报进一步的包装的数据报 以太网协议,属于数据链路层也属于物理层 数据链路层和物理层之间还是有很多联系的,有很多重合
249 2
|
存储 缓存 网络协议
交换机、IP地址、ARP协议
划分洪泛范围—隔离广播域(收到所有洪泛信息的设备集合) 每一个接口都是一个广播域 转发数据 路由表
122 0
|
网络协议
JavaEE-了解数据链路层主要协议
JavaEE-了解数据链路层主要协议
|
网络协议 网络性能优化 网络架构
JavaEE-轻松了解网络原理之TCP协议
JavaEE-轻松了解网络原理之TCP协议
|
域名解析 安全 网络协议
JavaEE-网络原理之UDP协议
JavaEE-网络原理之UDP协议
|
网络协议 Java 定位技术
【JavaEE】IP协议详细讲解
JavaEE & IP协议 1. 地址管理 我们希望,每个网络上的设备,要能分配到一个地址(唯一) 1.1 IP协议报文格式
97 0
|
网络协议 测试技术 网络架构
TCP/IP IP地址概念与应用
TCP/IP IP地址概念与应用
194 0