IP协议

来源:互联网 发布:2017盒子看电影软件 编辑:程序博客网 时间:2024/04/28 03:08

IPv4

IPv4地址分类及特征

IP地址按作用范围可分成两类,一类是在大网使用的公共IP地址,另一类是只在内网使用的私有地址。

地址类型 特征 介绍 A类地址 第一位为0 1、第1字节为网络地址,其它3个字节为主机地址
2、地址范围:1.0.0.1—126.255.255.254
3、10.X.X.X是私有地址,范围从10.0.0.0-10.255.255.255
4、127.X.X.X是保留地址,用做环回测试。 B类地址 前两位为10 1、第1字节和第2字节为网络地址,后2个字节为主机地址
2、地址范围:128.0.0.1—191.255.255.254
3、私有地址范围:172.16.0.0—172.31.255.255
4、保留地址:169.254.X.X C类地址 前三位为110 1、前三个字节为网络地址,最后字节为主机地址
2、地址范围:192.0.0.1—223.255.255.254
3、私有地址:192.168.X.X,范围从192.168.0.0-192.168.255.255 D类地址 前四位为1110 1、不分网络地址和主机地址。
2、地址范围:224.0.0.1—239.255.255.254 E类地址 前五位为11110 1、不分网络地址和主机地址
2、地址范围:240.0.0.1—255.255.255.254

特殊IP地址:

  1. 0.0.0.0只能做源地址
  2. 255.255.255.255是广播地址
  3. 127.x.x.x为环回地址,本机使用

专用地址:
* 10/8 地址范围:10.0.0.0——10.255.255.255,
* 172.16/12 地址范围:172.16.0.0——172.31.255.255,
* 192.168/16地址范围:192.168.0.0——192.168.255.255。

IPv4数据报的格式

IPv4数据报的格式

版本

版本(Version)由4bit构成,标识IP首部的版本号。IPv4的版本号即为4,在这字段上的值也为4。

版本 简称 协议 4 IP Internet Protocol 5 ST ST Datagram Mode 6 IPv6 Internet Protocol version 6 7 TP/LX TP/IX: The Next Internet 8 PIP The P Internet Protocol 9 TUBA TUBA

报头长度

报头长度(IHL:Internet Header Length)由4bit构成,表明IP首部的大小,单位为4字节(32比特)。对于没有可选项的IP包,首部长度则设置为5,即没有可选项的IP包,首部长度为20字节(4*5=20)

服务类型

服务类型(TOS:Type Of Service)由8比特构成,用来表示服务质量。每一位的具体含义如下:

比特 含义 0 1 2 优先度 3 最低延迟 4 最大吞吐量 5 最大可靠性 6 最小代价 (3~6) 最大安全 7 未定义

这个值通常由应用指定。现在也鼓励这种结合应用的特性设定TOS的方法。

总长度

总长度(Total Length),表示IP首部与数据部分合起来的总字节数。该字段长为16bit。因此IP包的最大长度为65535(=2^16)字节。

标识

标识(ID:Identification),由16bit构成,用于分片重组。同一个分片的标识值相同,不同分片的标识值不同。通常,每发送一个IP包,它的值也逐渐递增。此外,即使ID相同,如果目标地址、源地址或协议不同的话,也会被认为是不同的分片。

标志

标志(Flags),由3bit构成,表示包被分片的相关信息。每一位的具体含义如下表所示。

比特 含义 0 未使用。现在必须是0. 1 指示是否进行分片
0- 可以分片
1- 不能分片 2 包被分片的情况下,表示是否为最后一个包(more fragment).
0- 最后一个分片的包
1- 分片中段的包

片偏移
片偏移(FO:Fragment Offset),由13bit构成,用来标识被分片的每一个分段相对于原始数据的位置。第一个分片对于的值为0.由于FO占13位,因此最多可以表示8192(=2^13)个相对位置。单位为8字节,因此最大可以表示原始数据8*8192=65535字节的位置。

生存周期

生存周期(TTL:Time To Live),由8bit构成,它最初的意思是以秒为单位记录当前包在网络上应该生存的期限。实际中它指可以中转多少个路由器的意思。每经过一个路由器,TTL会减少1,只至变成0则丢弃该包。

协议

协议(Protocol),由8bit构成,表示IP首部的下一个首部隶属于哪个协议。常见的协议编号如下:

分配编号 简称 协议 1 ICMP Internet Control Message 2 IGMP Internet Group Management 6 TCP Transmission Control 8 EGP Exterior Gateway Protocol 17 UDP User Datagram 41 IPv6 IPv6 132 SCTP Stream Control Transmission Protocol 136 UDPLite UDP-Lite

头部校验和

头部校验和(Header Checksum),由16bit构成,也叫IP首部校验和。该字段只校验数据报的首部,不校验数据部分。它主要用来确保IP数据报不被破坏。校验和的计算过程:首先要将该校验和的所有位置设置为0,然后以16比特为单位划分IP首部,并用1补数计算所有16位字的和。最后将所得到这个和的1补数赋给首部校验和字段。

源IP地址

源IP地址(Source Address),由32比特构成,表示发送端IP地址。

目标IP地址

目标IP地址(Destination Address),由32比特构成,表示接收端IP地址。

选项

选项(Options),长度可变,通常只在进行实验或诊断时使用。该字段包含如下几点信息:
* 安全级别
* 源路径
* 路径记录
* 时间戳

填充

填充(Padding),也称做填充物。在有可选项的情况下,首部长度可能不是32bit的整数倍。为此,通过向字段填充0,调整为32bit的整数倍。

数据

数据(Data),存入数据。将IP上层协议的首部也作为数据进行处理。


IPv6

IPv6地址结构

IPv6地址 = 前缀 + 接口标识

前缀:相当于v4地址中的网络ID

接口标识:相当于v4地址中的主机ID

例如:2001:A304:6101:1::E0:F726:4E58

IPv6地址表示方法

  • 用十六进制表示,如: FE08:….
  • 4位一组,中间用“:”隔开,如: 2001:12FC:….
  • 若以零开头可以省略,全零的组可用“::”表示,如: 1:2::ACDR:….
  • 地址前缀长度用“/xx”来表示,如: 1::1/64

IPv6地址分类

特殊地址

地址类型 二进制前缀 IPv6标识 未指定 00…0 (128 bits) ::/128 环回地址 00…1 (128 bits) ::1/128 组播 11111111 FF00::/8 链路本地地址 1111111010 FE80::/10 网点本地地址 1111111011 FEC0::/10 全局单播 (其他) –

IPv6数据报的格式

IPv6数据报的格式

版本

版本(Version)由4bit构成,标识IP首部的版本号。IPv6的版本号即为6,在这字段上的值也为6。同IPv4。

通信量类

通信量类(Traffic Class),相当于IPv4的TOS(Type Of Service)字段,也由8bit构成。

流标号

流标号(Flow Label),由20bit构成,准备用于服务质量(QoS:Quality Of Service)控制。不使用QoS时每一位可以全部设置为0。

在进行服务质量控制时,将流标号设置为一个随机数,然后利用一种可以设置流的协议RSVP(Resource Reservation Protocol)在路由器上进行QoS设置。当某个包在发送途中需要QoS时,需要附上RSVP预想的流标号。路由器接收到这样的IP包后先将流标号作为查找关键字,迅速从服务质量控制信息中查找并做相应处理。只有流标号、源地址以及目标地址三项完全一致时,才被认为是一个流。

有效载荷长度

有效载荷长度(Payload Length),有效载荷是指包的数据部分。IPv4的TL(Total Length)是指包首部在内的所有长度。然而IPv6中的这个Playload Length不包括首部,只表示数据部分的长度。由于IPv6的可选是指连接IPv6首部的数据,因此当有可选项时,此处包含可选项数据的所有长度就是Playload Length。

下一个报头

下一个报头(Next Header),相当于IPv4中的协议字段。由8bit构成。通常表示IP的上一层协议是TCP或者UDP。不过在有IPv6扩展首部的情况下,该字段表示后面第一个扩展首部的协议类型。

跳数限制

跳数限制(Hop Limit),由8bit构成。与IPv4中的TTL意思相同。为了强调“可通过路由器个数”,故将改为“Hop Limit”。数据每经过一次路由器就减1,减到0则丢弃数据。

源地址

由128bit(8个16位字节)构成。表示发送端IP地址。

目标地址

由128bit(8个16位字节)构成。表示接收端IP地址。

IPv6扩展首部

IPv6的首部长度固定,无法将可选项加入其中。取而代之的是通过扩展首部对功能进行有效扩展。扩展首部通常介于IPv6首部与TCP/UDP首部中间。在IPv4中可选项长度固定为40字节,但在IPv6中没有这个限制。


IP协议相关技术

DNS

DNS(Domain Name System)是维护一个用来表示组织内部主机名和IP地址之间对应关系的数据库。

ARP

ARP(Address Resolution Protocol)是一种解决地址问题的协议。以目标地址为线索,用来定位下一个应该接收数据分包的网络设备对应的MAC地址。

RARP(Reverse Address Resolution Protocol)是将ARP反过来,从MAC地址定位IP地址的一种协议。

ICMP

ICMP的主要功能包括,确认IP包是否成功送达目标地址,通知在发送过程中IP包被废弃的具体原因,改善网络设置等。

ICMP消息类型

类型(十进制) 内容 0 回送应答(Echo Reply) 3 目标不可达(Destination Unreachable) 4 原点抑制(Source Quench) 5 重定向或改变路由(Redirect) 8 回送请求(Echo Request) 9 路由器公告(Router Advertisement) 10 路由器请求(Router Solicitation) 11 超时(Time Exceeded) 17 地址子网请求(Address Mask Request) 18 地址子网应答(Address Mask Reply)

DHCP

DHCP(Dynamic Host Configuration Protocol)

DHCP在分配IP地址有两种方法:一种是由DHCP服务器在特定的IP地址中自动选出一个进行分配;另一种方法是针对MAC地址分配一个固定的IP地址。而且这两种方法可以并用。

NAT

NAT(Network Address Translator)是用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术。除转换IP地址外,还出现了可以转化TCP、UDP端口号的NATP(Network Address Ports Translator)技术,由此可以实现用一个全局IP地址与多个主机的通信。

NAT的潜在问题

由于NAT(NATP)都依赖于自己的转换表,因此会有如下几点限制:
* 无法从NAT的外部向内部服务器建立连接
* 转换表的生成与装换操作都会产生一定的开销
* 通信过程中一单NAT遇到异常需要重启时,所有的TCP连接都将被重置
* 即使备置两台NAT做容灾备份,TCP连接还是会被断开

0 0
原创粉丝点击