IP网络层(IPv6& NAT)

                        IP网络层(IPv6& NAT)接上篇互联网服务模型

    上篇讲到,IP space不够用,从而有个缓解方案CIDR,也就是现在用的子网掩码方案,但是这只是提高了利用率,并没有实际扩充IP space(还是2^32=4G),没有彻底解决这个问题。

    于是有IPv6 和 NAT的出现。

    IPv6其实很简单,就是把IPv4的32位编址扩充成128位编址。

    128位有多大呢,官方是这么形容的:它可以给地球上的每一粒灰尘,一粒一个IP。总之,肯定是够用的。

    当然不同的编址方式有不同的Header结构,如图:

    IP网络层(IPv6& NAT)_第1张图片

为什么没有check sum?因为它认为底层的CRC检错效率足够,而且即使有错也可以交给上层传输层来解决。我只管传包就好了

没有fragmentation?因为IPv6提出这个时候网络已经发展的很快了,基本上网络带宽都很高,不需要fragmentation了。

(里面的各个参数具体什么意思,大家自己查吧,因为上课没讲,我懒得查,这个肯定百度就有的)

NAT:

IP网络层(IPv6& NAT)_第2张图片

我们可以修改寻址模式,因为其实要实现IP Model只要满足上述三点Implication就可以了,并不需要每个host一个IP。

那么如何通信?:

IP网络层(IPv6& NAT)_第3张图片

这里出现了,内网和外网的概念,其实和CIDR很像,就是把一组host统一成一个(或者几个)对外的出口。(CIDR是把IP打包,NAT是把host打包)。

IP网络层(IPv6& NAT)_第4张图片

内网的IP使用一些未注册的IP进行内网互相定位。

IP网络层(IPv6& NAT)_第5张图片

那外网可以定位这一组IP的位置,如何定位某一个host呢?

这里每个host都有两个形式上的地址,一个对内,一个对外。

对外采用统一的整个LAN的NAT外网IP(也就是真正的IP),对内使用一些没有注册过的IP地址,

NAT中保存一个table,大致格式如下:


通过NAT port来定位某个host。

 过程如图:

IP网络层(IPv6& NAT)_第6张图片

IP网络层(IPv6& NAT)_第7张图片

一些没有注册的IP:

IP网络层(IPv6& NAT)_第8张图片

然后这就导致IPv6的需求不再迫切,因为这个方式可以运作的很好。


你可能感兴趣的:(计算机网络)