【计算机网络】网络层-IPv4与IPv6

34 阅读2分钟

IPv4

  • IP:标识一台主机,负责在「没有直连」的两个网络之间进行通信传输。

  • IPv4:32位二进制数

  • IP 地址的分类:为了更好地管理IP,已废弃

    • A类:0+网络号7位+主机号24位
    • B类:10+网络号14位+主机号16位
    • C类:110+网络号21位+主机号8位
    • D类:1110+组播地址28位
    • E类:1111+留待后用28位
    • 广播:主机号全1,指定某个网络:主机号全0
  • 无分类地址 CIDR:IP = 网络地址+主机地址/x 表示前 x 位属于网络号,使得 IP 地址更加具有灵活性。

    • 子网掩码:前x位为1
    • 网络地址:标识广播域,在广播域内可直接通信
    • 子网划分:IP = 网络地址+(子网网络地址+子网主机地址)
  • 私有IP地址:10、172、192.168

  • 环回地址:在本机进行通信,不会发出去:127.0.0.1

路由控制

根据IP地址的网络地址进行路由控制:

  • 路由表:根据网络地址进行路由转发,主机、路由器都有。
  • 从路由控制表中找到与目标地址具有相同网络地址的记录进行转发,有多条就长匹配。没有就走默认路由。

IP分片与重组

  • 以太网的 MTU 是 1500 字节

  • 分片: IP 数据包大小大于 MTU

  • 重组:对分片拼接,目标主机负责。分片丢失一个就报废

  • TCP 引入了 MSS,避免在IP层分片

IPv6

Why?

IPv4只有42亿个,不够用。

How?

  • 128位:8组16位二进制

  • 即插即用:没有DHCP也能自行分配

  • 地址分类:

    • 未定义:::/128
    • 环回地址:::1/128
    • 唯一本地地址:FC00::/7,内网里单播通信
    • 链路本地单播地址:FE80::/10,同一链路单播通信,不经过路由器
    • 多播地址:FF00::/8
    • 全局单播地址:其他,互联网通信

IPv4 首部与 IPv6 首部

IPv6 相比 IPv4 的首部改进:

  • 取消了首部校验和字段。 因为在数据链路层和传输层都会校验,因此 IPv6 直接取消了 IP 的校验。
  • 取消了分片/重新组装相关字段。 分片与重组是耗时的过程,IPv6 不允许在中间路由器进行分片与重组,这种操作只能在源与目标主机,这将大大提高了路由器转发的速度。
  • 取消选项字段。 选项字段不再是标准 IP 首部的一部分了,但它并没有消失,而是可能出现在 IPv6 首部中的「下一个首部」指出的位置上。删除该选项字段使的 IPv6 的首部成为固定长度的 40 字节。