Cracking the coding interview--Q17.3

Hawstein | February 5, 2013

题目

原文:

Compare and contrast the IPv4 and IPv6 protocols.

译文:

比较IPv4和IPv6协议。

解答

IPv4和IPv6是因特网协议,应用于网络层。IPv4是现在应用得最广泛的协议, 而IPv6是因特网的下一代协议。

  • IPv4是因特网协议的第4个版本,它使用32位寻址技术。IPv6是下一代因特网协议, 用的是128位寻址。

  • IPv4最多允许4,294,967,296个独立IP地址,而IPv6可以允许34, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000个IP地址。 (34后面带36个0)

  • IPv4中,IP地址分为以下几类:A,B,C,D和E。 A,B,C是3类实际在网络中使用的IP地址。D类地址为组播保留。E类地址是保留地址, 意味着它们不应该在IP网络上使用。(除非是一些研究机构出于实验目的才会使用)

  • IPv6地址大致可分为3类:
    1. 单播地址。一个单播地址就是一个单一接口的标识符。 一个发送到单播地址的IPv6报文会被传送到该地址所标识的接口。
    2. 组播地址。组播地址就是一组接口的标识符,这些接口可能属于不同的节点。 一个发送到组播地址的IPv6报文会被传送到多个接口。
    3. 任播地址(任一广播地址)。任播地址是一组接口的标识符, 这些接口可能属于不同节点(这点和组播地址相同)。一个发送到任播地址的IPv6 报文会被传送到这组接口中的其中一个。
  • IPv4地址表示:239.255.255.255, 255.255.255.0

  • IPv6地址用分号“:”分成8段,用16进制表示。比如: 2001:cdba:0000:0000:0000:0000:3257:9652

由于人口数量的增加(对IP地址的需求增加),IPv6的需求日益明显,它能带来以下好处:

  1. 增加地址空间

  2. 更高效的路由

  3. 降低管理要求

  4. 改善更换ISP的方法

  5. 更好的移动支持

  6. 多宿主

  7. 安全

  8. 作用域地址:本地链路,本地站点和全局地址空间

全书题解目录:

Cracking the coding interview–问题与解答

全书的C++代码托管在Github上:

https://github.com/Hawstein/cracking-the-coding-interview

声明:自由转载-非商用-非衍生-保持署名 | 创意共享3.0许可证,转载请注明作者及出处
出处:http://hawstein.com/2013/02/05/17.3/