IP分片的原理:当ip数据包封装成帧的时候,必须符合数据帧格式的规定。当ip数据包的总长度小于或等于MTU值得时候,可以直接封装成一个数据帧。
如果ip数据包的总长度大于MTU值的时候,就必须分片,然后将每一分片封装成一个数据帧然后再转发。
IP分片的方式:
分片
再分片:当遇到MTU值更小的网络,再次分片。
分片重装:可以被源主机或其他路径上的任意路由器进行分片,然后每个分片经过路由到达慕的主机,再进行重装。
注:不同的网络有不同的MTU值。
比如以太网的MTU值是1500字节,PPP链路的MTU值是296字节
IP分片的特点:
例子:原始数据包的总长度为3000字节。
那么第一个分片的总长度为1500字节,其数据部分的长度为1500-20=1480字节,偏移0字节
第二个分片同样,其数据部分的长度为1500-20=1480 字节,偏移0字节
第三个分片,就是3000-1480-1480=40,偏移1480字节。
ip分片的安全问题。
IPv4和IPv6
IPv4缺点:1、地址空间使用效率比较低。
IPv6的优点:1、更大的地址空间
IPv6取消了分片机制,自动探测网络中的MTU最小值,选择适合的路径去传输数据。
IPv6的包头的几个重要选项:
流量类型:指明为该包提供了某种“区分服务”
流标签:用于表示属于统一业务流的包。
跳数限制:类似于ipv4的生命周期TTL。
源地址
目的地址
注:ipv6取消了广播地址,采用任播地址。
流,指的是从一个特定源发向一个特定目的地的包序列。
IPv6地址表示:
128位地址是每16位划分一段,每段被转换为一个4位十六进制数,并用冒号隔开。
这种方法叫做冒号十六进制表示法。
0010000000000001 0000010000010000 0000000000000000 00000000000001
2、压缩格式:将地址省略0的表示方法,称为压缩格式
(1)每段中开头的0可省略;
(2)连续两个或多个都是0时,可直接用 “::”表示。
(3)在压缩IPv6地址时,一个IPv6地址中只能出现一次“::”
压缩前:2001:0410:0000:0000:FB00:1400:5000:45FF
压缩后:2001:410 ::FB00:1400:5000:45FF
用于链路上的令居之间以及令居发现过程,定义IPv6子网上的节点与主机和路由器的交互方式
只能在连接到同一本地链路的节点之间使用。(局域网)
链路本地地址的结构;
Registry:注册机构前缀地址分配机构
1) ARIN:负责北美、南美、加勒比以及非洲撒哈啦部分的IP地址分配。
2) RIPE负责欧洲、中东、北非、西亚部分地区(前苏联)
3) APNIC负责亚洲、太平洋地区
interface ID是接口ID,获取IPv6接口ID的最常用分方法使用EUI-64地址。
EUI-64地址是IEEE定义的一种基于64比特的扩展唯一标识符。
在无状态自动配置时, 使用(EUI)-64 (扩展通用标识符) 格式来填充
确保所选择的地址是唯一的,需要将MAC地址的第7位取反。
universal/local U/L位,其中U=1代表全局惟一,U=0代表本地惟一
注:由于链路本地地址的前64位是固定的,所有链路本地地址的地址前缀都是FE80。
IPv6的换回地址:
0:0:0:0:0:0:0:1标识一个环回地址,也可::1
环回地址在ipv4的地址为:
127.0.0.0 255.255.255.0