目录
IPv4地址根据网络号可分为A、B、C、 D、E 5大类(其中A、B、C、D为单播,D为组播、E为保留地址)
A类地址
网络号:0开头,第1位到第8位是网络号(00000000~01111111——0到127)
具体的IPv4地址范围:0.0.0.0~127.255.255.255
可用的IPv4地址范围:其中0.0.0.0~0.255.255.255和127.0.0.0~127.255.255.255保留
B类地址
网络号:10开头,第1位到第16位是网络号(10000000.00000000~10111111.11111111——128.0~191.255)
具体的IPv4地址范围:128.0.0.0~191.255.255.255
可用的IPv4地址范围:其中128.0.0.0~128.0.255.255和191.255.0.0~191.255.255.255保留
C类地址
网络号:110开头,第1位到第24位是网络号(11000000.00000000.00000000~11011111.11111111.11111111——192.0.0~223.255.255.255)
具体的IPv4地址范围:192.0.0.0~223.255.255.255
可用的IPv4地址范围:其中192.0.0.0~192.0.0.255和223.255.255.0~223.255.255.255保留
D类地址
网络号:1110开头,第1到32位为网络号,没有主机号(用于组播)224.0.0.0~239.255.255.255
E类地址
网络号:以11110开头,240.0.0.0~255.255.255.255
其中255.255.255.255为广播地址
IPv4单播地址按照地址使用范围分为公网和私网两大类
公网地址(在互联网上使用)
A: 1.0.0.0~9.255.255.255
11.0.0.0~126.255.255.255
B: 128.0.0.0~172.15.255.255
172.32.0.0~191.255.255.255
C: 192.0.0.0~192.167.255.255
192.169.0.0~223.255.255.255
私网地址(在局域网内使用)
A:10.0.0.0~10.255.255.255
B:172.16.0.0~172.31.255.255
C:192.168.0.0~192.168.255.255
按照通信的类型来分类
单播地址
针对A、B、C类地址:主机号不全为0的地址就是单播地址
组播地址
D类地址都是组播地址,没有主机号
广播地址
针对A、B、C类地址:主机号全为0的地址就是广播地址(E类地址的255.255.255.255也是一个广播地址)
点分十进制写法
分为4段,每段8bit二进制(每段最大255)
192.168.100.100/24
/24为掩码长度,用来确定网络号和主机号
为什么要划分子网
如果直接使用A、B、C类地址,会造成IP地址资源浪费;因此可以把一个大的子网划分为多个小的子网,以此减少IP地址的浪费
并且可以缩小广播域、减少广播范围(一般在进行网络规划的时候,一个子网为一个广播域)实现方式
通过掩码来进行子网划分(具体实现方法是向主机位借位)
具体的计算公式(如果一个子网原先的掩码是a,然后向主机借了m位)
可划分的子网数量:2^m个子网
每个子网可用的主机数量:2^(32-a-m) - 2子网划分举例
要求
一个公司分配了一个192.168.0.0/24网段,为以下部门分配
生产部门100人 销售部50人 财务部 20人 客服部10人
生产部100人
100<128-2=2^7-2 因此主机位为7,网络号借1为25
可划分的网段为(二选一)
192.168.0.0/25(地址范围:192.168.0.0~192.168.0.127)
192.168.0.128/25
销售部50人
50<64-2=2^6-2 因此主机位为6,网络号借2为26
可划分的网段为(四选一)
192.168.0.0/26 ×(生产部已占用)
192.168.0.64/26 ×
192.168.0.128/26(地址范围:192.168.0.128~192.168.0.191)
192.168.0.192/26
财务部20人
20<32-2=2^5-2 因此主机位为5,网络号借3为27
可划分的网段为(8选1)
192.168.0.0/27 ×
192.168.0.32/27 ×
192.168.0.64/27 ×
192.168.0.96/27 ×
192.168.0.128/27 ×
192.168.0.160/27 ×
192.168.0.192/27(地址范围:192.168.0.192~192.168.0.223)
192.168.0.224/27
客服部10人
10<16-2=2^4-2 因此主机位为4,网络号借4为28
可划分的网段为(16选1)
192.168.0.224之前不可选
192.168.0.224/28(地址范围:192.168.0.224~192.168.0.239)
192.168.0.240/28
综上:生产部门100人 192.168.0.0/25(地址范围:192.168.0.0~192.168.0.127)
销售部50人 192.168.0.128/26(地址范围:192.168.0.128~192.168.0.191)
财务部 20人 192.168.0.192/27(地址范围:192.168.0.192~192.168.0.223)
客服部10人 192.168.0.224/28(地址范围:192.168.0.224~192.168.0.239)
TCP/IP网络参考模型(端口号、TCP滑动窗口、TCP拥塞控制、IP协议号、以太网帧)_tcp/ip参考模型-CSDN博客
IANA已经于2011年将IPv4地址分配完毕,以后获取可用的IPv4地址将非常困难
现阶段IP网络新业务需要大量的IP地址,此时IPv6地址就提出来了(由32bit转为128bit)
IPv6地址分为单播、组播、任播地址,没有广播地址的概念
冒号分十六进制
IPv6一共128bit
书写时分为8段,每段16bit(4位十六进制)
0101:FF01:0000:0000:0F00:0000:0F01:0001/64
其中/64为前缀长度(掩码),用来确定前缀(网络号)和接口ID(主机号)
一般写掩码时建议写为4的倍数,在判断是否为同一网段时比较方便
简写规则
1、每段前面的0可以省略
101:FF01:0:0:F00:0:F01:1/64
2、连续多段为0的可以使用::代替,不过::一个地址只可以出现一次
101:FF01::F00:0:F01:1/64
公网地址(全球单播地址)——2000::/3
此处3指的是前3bit固定,即前3bit为001的就是全球单播地址
即0010和0011开头,准确来说就是2/3开头的就是全球单播地址
私网地址(唯一本地地址)——FC00::/7
此处7指的是前7bit固定,即前7bit为1111 110的就是唯一本地地址
即1111 1100和1111 1101开头,也就是FC/FD开头的就是唯一本地地址
特殊地址
全0地址 ::/128
环回地址 ::1/128
链路本地地址(Link-load) FE80::/10
前10bit固定位1111 1110 10
即1111 1110 1000、1111 1110 1001、1111 1110 1001、1111 1110 1011开头
也就是FE8、FE9、FEA、FEB开头的为链路本地地址
链路本地地址使用范围
链路本地地址可使用的范围是本链路内的(即广播域内)
只需要广播域不冲突就可以
链路本地地址不需要掩码长度
链路本地地址作用
链路本地地址一般用来建立邻居关系
通过链路本地地址建立邻居关系后,链路本地地址是ping不通的(因为链路本地地址只是本地有效)
ospfv3、ISISv3建立邻居只能通过链路本地地址,BGPv3支持公网和私网建立邻居
链路本地地址的生成方式
自动生成——通过EUI-64生成或软件生成
(在配置全球单播地址或者唯一本地地址时会通过EUI-64自动生成链路本地地址)
手工配置
相关配置命令
ipv6 add 2001:: 64 eui-64 根据地址前缀通过EUI-64生成全球单播地址地址
ipv6 add 2001::1 64 配置全球单播地址/唯一本地地址
ipv6 add auto link-local 自动生成链路本地地址(通过EUI-64生成)
例如:mac地址为 00e0-fc57-5485 fe80::2e0:fcff:fe57:5485
ipv6 add fe80::1 link-local 手动配置链路本地地址
此方式只能生成64bit
生成规则
将MAC地址前24位作为IPv6地址的24位(并将第7位由0变为1)
将MAC地址后24位作为IPv6地址的后24位
然后在前24位和后24位之间插入FFFE
例子
MAC地址:000E-0C82-C4D4;转换后:020E:0CFF:FE82:C4D4。
地址格式
FF+flag(4bit)+scope(4bit)+112bit
flag(地址时效)
0代表永久地址
1代表临时地址
scope(地址应用范围)
1代表节点
2代表广播域链路
部分地址含义
FF02::1——链路本地范围的所有节点
FF02::2——链路本地范围的所有路由器
FF02::5——OSPFv3路由器
FF02::6——OSPVv3 DR&BDR
FF02::1:FF+24bit——被请求组播地址(在ICMPv6中使用)
被请求组播地址——在广播域内生效
该地址主要应用于邻居发现和地址重复检测功能
组播MAC
3333+IPv6地址后32bit
任播地址和单播地址使用相同的地址空间,为服务提供冗余功能,实现服务的负载分担
可以理解为多台服务器配置为一样的全球单播地址,提供统一服务,用户访问时可靠性更高
具体实现方式
目的地址是任播地址的数据包将发送给其中路由意义上最近的一个网络接口
配置命令
IPv6 add 2222::2 anycast 配置任意地址

IPv6主要由基本报头和扩展报头组成的

流标签
IPv4是通过五元组来抓取流,现在可以自定义标签来抓取流,提高了QoS效率
下一报头
下一报头(十进制) 下一报头(十六进制) 跟随在基本报文头后的信息类型 0 0 IPv6逐条选项扩展报头 6 6 TCP 8 8 EGP(外部网关协议) 17 11 UDP 41 29 IPv6封装 43 2b 用于IPv6的路由扩展报头 44 2c 用于IPv6的分段报头 46 2e RSVP 47 2f GRE 50 32 ESP 51 33 AH 51 33 ICMPv6 59 3b IPv6无下一报头 60 3c IPv6目的地址选项扩展报头
逐跳选项报头——巨型帧负载(超大包)
当载荷长度超过65535字节时,使用逐跳选项报头承载(由选项类型、选项长度、超大有效载荷长度组成),占32bit,能够表示4294967295
具体实现方式
当载荷长度超过65535字节时,IPv6基本报头种的有效载荷长度值将被置为0,数据包的真正有效载荷长度用超大有效载荷长度字段表示(只是承载载荷长度)
其它用途
RSVP资源预留、路由器错误提醒
可以通过此扩展报文携带预留资源或路由器错误信息发送给每台路由器,让每个设备都收到此报文
目的选项报头——移动的IPv6
在Wlan三层漫游场景可用
IPv4场景
在AP1获得的IP地址时192.168.1.1,由于人员移动到了AP2,重新获取新的IP地址10.0.0.1,此种情况会导致手机向服务器重新申请服务,此时会中断应用(因为IP变了)
IPv4的解决方案时使用家乡代理来解决,即移动到AP2后会使用原来的192.168.1.1的IP地址去访问服务器,不过会造成次优路径
IPv6使用扩展目的选项报头解决
发送时携带目的选项报头,将现在的IP地址与之前的IP地址联系起来
路由报头——强制报文经过某台设备
指定报文必须经过的中间节点,不再依靠IGP路由
分段报头——进行数据分片
当报文超过了MTU时就需要将报文分段发送,通过分段扩展头部来完成
在进行分段传输前,会先通过Path MTU报文协商MTU
中间路由器不再处理分片,只在产生数据的源节点进行分片
省却中间路由器为处理分片而耗费的大量CPU资源
认证报头——进行认证(AH技术)
封装安全净载报头——进行认证和加密(ESP技术)
IPv6提供了对IPSec的完美支持,上层协议可以省去许多安全选项
工作原理
在IPv6中当设备收到报文后,发现报文长度比下一跳转发接口的MTU值大时,会将其丢弃
并同时将转发接口的MTU值通过ICMPv6报文的“Packet Too Big”消息发送给源段主机
源端主机以该值重新发送IPv6报文,减少由于重传带来的额外流量开销
工作范围
Path MTU发现协议可以动态发现整条传输路径上各链路的MTU值
注意事项
IPv6要求链路层所支持的最小MTU为1280