即然 ipv6 是为了解决 ipv4 地址不够人手一个的问题。
那么如果我们不考虑历史原因,是不是一开始有 ipv6 的话那不就是人手一个了吗?MAC 地址是不是就可以不用了?
(不对,我在想这个问题的时候,MAC 地址不就已经是人手一个唯一的了吗?怎么又衍生出 ip 了呢?
即然 ipv6 是为了解决 ipv4 地址不够人手一个的问题。
那么如果我们不考虑历史原因,是不是一开始有 ipv6 的话那不就是人手一个了吗?MAC 地址是不是就可以不用了?
(不对,我在想这个问题的时候,MAC 地址不就已经是人手一个唯一的了吗?怎么又衍生出 ip 了呢?
1.计算机网络在初次发展时,那时只有局域网。MAC 地址的局域网模式,在当时,已经够用。而且当时领导给的预算低、开发时间紧,因此第一版 MAC 方案基本上没考虑扩展性,这就给后续埋下很多坑。后来因为这玩意很好用,网络逐渐变大,单纯 MAC 地址的局域网模式,已经满足不了需求,因此逐渐对网络进行分层,加入了 IP、TCP 以及各种奇奇怪怪的补丁协议。基本上,后续每一个新协议的诞生,都是在填补以前的坑。这也是计算机网络不易被理解、不好用,而且各种协议设计地奇奇怪怪的根本原因。
2.更好用、更好理解的计算机网络方案,应该是物流协议,也就是你去菜鸟驿站发货时,写的这种收件方、发件方的地址。这种地址易于理解,易于处理,而且这套方案的地址,是动态长度,因此不存在地址被用完的问题。IEEE 其实已经收到过很多次类似物流协议的计算机网络新协议的提案,但考虑到成本问题,IEEE 并没有接纳。
3.MAC、IPv4、IPv6,这些协议都是静态的、有最大值限制的,因此在未来都会出现不够分的情况。只是很多人因为学识与眼界有限,觉得 IPv6 在现阶段已经足够大,就不愿意去探究动态的无限范围的协议。实际上,资源在划分时,无论 IPv6 的范围再怎么大,也是需要给全球分、给每个国家、组织、个人去分,这里一旦涉及到非技术问题,分下去的范围,到了组织甚至个人手上,不一定够用。就像以前 IPv4 在开始分配时,大家都觉得足够用,某国的 IPv4,首都就分掉了全国 1/4 的 IPv4 地址。当地级市为了稀缺的 IPv4 公网地址争地面红耳赤的时候,首都某些大学,连路灯都有 IPv4 公网地址。
7 回答5.3k 阅读
4 回答4k 阅读
2 回答3.2k 阅读
1 回答1.1k 阅读✓ 已解决
1 回答3k 阅读
2 回答800 阅读✓ 已解决
2 回答1.7k 阅读
1.假设互联网一开始就有Ipv6的话,是不是就不需要 MAC 地址了呢?
ipv6当然可以充当mac地址的用途,应为他们都能保证是唯一的,不过就从成本和性能的角度来讲mac地址是6字节,16字节构成,实现同样的功能交换机用来存储交换表的硬件就要扩大3倍, 当然最重要的是大量基于mac结构已经部署的硬件和软件都要更换这才是最大的阻碍;
2.MAC 地址不就已经是人手一个唯一的了吗?怎么又衍生出 ip 了呢?
mac地址和ip地址他们的用途完全不一样,mac地址用于以太网协议中处于统一局域网中的设备只需要通过交换机相连就能互相通信,而ip是位于网络层,其规模和对层次结构的需求更高,他需要负责路由和交换世界各地的主机之间的数据包,其需要处理的主机规模要大很多,并且存在明显的层次结构打个比方比如ip地址的结构是四个字节[0-255, 0-255,0-255,0-255],其中第一个字节是划分给国家的
0-100: 中国
101-255: 其他国家
第二字节是分给省的:
0-100: 广东省
101-255: 其他省
其他两个字节同理
如果一个人要发送的数据包的目的地址为100.100.xxx.xxx就知道他发送到中国广东的,并很容易将其按层级为其设计出一种简单的路由实现根据他的目的ip地址将其转发到目标地址,如果像mac地址那种设计处于转发路线上的每台设备都得记录下所有的人的信息,而不是只用关注自己负责的那一层级(比如国家级,省级)