您的位置:首页 > 其它

我们为什么需要IPv6

2012-06-07 14:58 591 查看
昨天是世界IPv6日,google的首页给出一个IPv6状况的说明。



学校的网管中心也办了很多活动宣传IPv6对互联网的意义。
但是我一直不太理解为什么IPv6是需要的,其必要性在什么地方呢?我们现在也不是每个主机都有一个IP地址的,这个世界不是照常运转吗?所以看了一些网络的东西,来讨论IPv6的必要性。
以一个三个人的寝室为例,我们通过一个路由器上网,我们的IP地址为192.168.1.1, 192.168.1.2 192.168.1.2.显然这是路由器给分配的内部地址,我们三个都是没有实际IP地址的。



那我们是怎么联网的呢?
IP包头部是



,因此当我上外网的时候一个请求是这样的,



显然,路由器是不能直接把这个包发送给216.92.56.91的。
因为如果发出去的话,216.92.56.91只会给192.168.0.1对应的实际主机回信, 而我们的IP 192.168.0.1只是局域网内部虚拟的.我的主机根本不可能收到回信。
路由器(比如实际IP为205.206.163.40)会做一下改动,把包转化为



发送出去。
等一会儿,外网主机回信了,回的是



因此我们的路由器(205.206.163.40)收到了回信,但是这时路由器遇到了一个问题,路由器应该把这个信发送给局域网上的那个主机呢?是192.168.0.1还是192.168.0.2或者是192.168.0.3呢?
路由器该把这个包交给那个主机呢?
这里就用到了网络地址转换NAT,比如可以加入考虑TCP/UDP层的端口后这样进行转换:
内网IP   外网IP
192.168.1.55:5566 219.152.168.222:9200
192.168.1.59:80   219.152.168.222:9201
192.168.1.59:4465 219.152.168.222:9202
从而当路由器收到网络请求时在内网IP和外网IP之间进行转换。

既然一个支持NAT转换的路由器,就可以连接多台没有真是IP地址的主机;也就是说只需给路由器分配IP地址就可以通信了,2**32个路由器在可见的将来足够用了吧,那我们为什么还要IPv6呢?
我想可能的原因是下面三个方面:(才疏学浅,欢迎拍砖)
1, NAT并不是万能的。只要不是每个主机都有一个特定的IP,就总是会出现很复杂的转换问题。当一个局域网里的主机很多的时候,很难找到一个非常有效的映射,使得内网IP能唯一地对应一个外网IP.
2, NAT一般都需要用到高层协议的字段(端口号port),因此每收到一个包,需要解包才能计算转换关系,增加了计算量。而且如果转换计算需要用到port的话,那局域网内部主机直接基于IP层的应用就会受阻。
3, 互联网在急速发展,接入互联网的终端数量种类都在增加,NAT的转换会越来越复杂。如果以后进入物联网时代,每个传感器都联网,会更复杂。

所以IPV6是一个简单有效的解决方案。
但是这个解决方案的未来怎么样,依然是未知的。

参考:
网络地址转换NAT
how a router works
计算机网络 谢希仁
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: