网络层
IP报文的结构
IPV4
- Ip internet protocol IP协议地址
版本 4 头部长度 服务类型 流分类qos
- 生存时间:time to live 避免环路,因为环路占用带宽 占用资源
- TTL字段占8个bit 最大255设置了数据包可以经过的路由器数目。
- 一旦经过一个路由器,TTL值就会减1,当该字段值为0时,数据包将被丢弃。
- IPv4地址由如下两部分组成:
- 网络部分 (网络号):用来标识一个网络。
- IP地址不能反映任何有关主机位置的地理信息,只能通过网络号码字段判断出主机属于哪个网络。
- 对于网络号相同的设备,无论实际所处的物理位置如何,它们都是处在同一个网络中。
- 主机部分 (主机号):用来区分一个网络内的不同主机。
IPV4地址分类
- A 0.0.0.0 127.255.255.255
- B 128.0.0.0 191.255.255.255
- C 192.0.0.0.0 223.255.255.255
- D 224.0.0.0 239.255.255.255
- E 240.0.0.0 255.255.255.255
IPV4子网划分
- 192.168.1.00000000
- 假设a需要100台 那么就需要 102的地址(100+网络地址和广播地址)那么 一看 2的 7次方是 127 够用 那么主机位就是7 网络位就是 25 192.168.1.0 000000 -192.168.1.0 1111111 0-127
- 假设b需要40台 那么需要至少为42个地址 那么一看 2的 6次方是 64 够用 那么主机位就是 6 网络位是 26 192.168.1.10 000000 -192.168.1.10 111111 128-191
- 为何是192.168.10 呢 我估计是 因为要根据上一个各的 25开始
- 假设 c需要20台 那么至少需要22个地址 那么一看 2的5次方是 32 够用 那么主机位就是 5 网络位是 27 192.168.1.110 00000 -192.168.110 11111 192- 223
- 假设d需要10台 那么至少需要12个地址 那么一看 2的 4次方是16 够用 那么主机位 就有4的 1 网络位 是 28 192.168.1.1110 0000 -192.168.1.1110 1111 224- 239
IPV6
“无限”地址 地址层次化分配 即插即用 简化的报文头部 IPv6安全特性 保证端到端通信完整性 对移动性的支持 增强的QoS特性 |
IPV4
公网地址枯竭 包头设计不合理 路由表过大,查表效率低 对ARP的依赖,导致广播泛滥 |
IPV6 组成
由前缀 和接口标识
- 简写方法
- 1.前导0 可以省略
- 2.连续为零的 段 可以简写 为双::
- IPv6地址的长度为128 bit。一般用冒号分割为8段,每一段16 bit,每一段内用十六进制表示
- Traffic class 流类别 与ipv4tos 服务类型相识
- Flow label 流标签 。IPv6中的新增字段,用于区分实时流量,不同的流标签+源地址可以唯一确定一条数据流,中间网络设备可以根据这些信息更加高效率的区分数据流
- Hop Limit:跳数限制
- Next Header:下一个包头, 类似ipv4的protcol
IPV6 地址分类
三种分类:单播 组播 任播(ipv6实现的一种效果:就近原则,跟服务器一样减轻压力{理想化状态很难实现})
单播和组播如同IPV4的A类B类一样也有范围
单播里的分类
由前缀 和接口标识构成 前缀相当于网络部分,接口标识相当于主机部分 接口标识生成有三种 手工分配,自动获取,eui-64
既将mac地址分开在中间加入 FFFE 并且将mac地址第七位变成1
全球单播地址(Global Unicast Address)类似IPV4的公网地址
啥样的是全球单播地址呢? 前三个比特固定为001
Ipv6 唯一本地地址 (Unique Local Address )类似IPV4的私网地址
啥样的是唯一本地地址呢? 使用FC00::/7 1111110 前7位是固定的
目前仅使用了 FD00::/8 (11111101) FC00::/8为以后使用
LLA链路本地地址( Link-Local Address) 每个接口都有链路本地地址,也可以有全球单播地址)
只在本链路有效 就是两条链路上可以同时使用
啥样的是链路本地地址呢? FE80::/10 FE10 固定 (8421)
66+48的mac 然后在中间劈开加入fffe 128的第七个比特取反
组播的分类
Ospf的目的ip组播地址(224.0.0.5 和224.0.0.6)
FF02::5 FF02::6 是OSPF的 组播地址
前八个比特全为1
Flages 标识临时永久活临时组播组
0000表示永久分配或众所周知 ; FF0 永久的 FF1 临时的
Scope:0:预留;1:节点本地范围;单个接口有效,仅用于Loopback通讯。如果是FF01 ::1 标识只能用于该接口 2:链路本地范围;例如FF02::1。最多用的 5:站点本地范围;指内网 8:组织本地范围;多个园区网E:全球范围;哪都能发 F:预留。
组播16比特后那80个比特必须为0
组播mac 前16位是33:33 把ipv6后面的32比特拿下来 组成
被请求节点组播地址 :
相当于 ipv6无广播 但是arp怎么传输 于是传输发送类似arp报文 发送ns报文有ip(组播地址)和mac地址 但 arp无ip报文
::1 相当于 127.0.0.1
被请求节点的组播地址 代替了广播的ipv6地址
格式:FF02 0000 0000 0000 0000 0001 FF 24位位接口的后24位
FF02::1:FFXX:XXXX
任播地址
在IPv6中没有广播的概念,但是有任播地址,它的范围和全球单播地址一致,只不过可以重复配置,用于用户访问最近的业务节点,任播地址也是只能作为目的地址使用。