博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
计算机网络基础12:IPV4与IPV6的区别
阅读量:2041 次
发布时间:2019-04-28

本文共 4133 字,大约阅读时间需要 13 分钟。

描述 IPv4 IPv6
地址 长度为 32 位(4 个字节)。地址由网络和主机部分组成,这取决于地址类。根据地址的前几位,可定义各种地址类:A、B、C、D 或 E。IPv4 地址的总数为 4 294 967 296。IPv4 地址的文本格式为 nnn.nnn.nnn.nnn,其中 0<=nnn<=255,而每个 n 都是十进制数。可省略前导零。最大打印字符数为 15 个,不计掩码。 长度为 128 位(16 个字节)。基本体系结构的网络数字为 64 位,主机数字为 64 位。通常,IPv6 地址(或其部分)的主机部分将派生自 MAC 地址或其他接口标识。根据子网前缀,IPv6 的体系结构比 IPv4 的体系结构更复杂。IPv6 地址的数目比 IPv4 地址的数目大 1028(79 228 162 514 264 337 593 543 950 336)倍。IPv6 地址的文本格式为 xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx,其中每个 x 都是十六进制数,表示 4 位。可省略前导零。可在地址的文本格式中使用一次双冒号(::),用于指定任意数目的 0 位。例如,::ffff:10.120.78.40 表示 IPv4 映射的 IPv6 地址。
地址分配 最初,按网络类分配地址。随着地址空间的消耗,使用“无类域间路由”(CIDR)进行更小的分配。没有在机构和国家或地区之间平均分配地址。(此说法不正确,美国拥有更多的IPV4地址) 分配尚处于早期阶段。“因特网工程任务组织”(IETF )和“因特网体系结构委员会”(IAB)建议基本上为每个组织、家庭或实体分配一个 /48 子网前缀长度。它将保留 16 位供组织进行子网划分。地址空间是足够大的,可为世界上每个人提供一个其自己的 /48 子网前缀长度。(说的不清楚,实际上现在也不需要弄的很明白,各个应用场景不太一样)
地址生存期 通常,除使用 DHCP 分配的地址之外,此概念不适用于 IPv4 地址。 IPv6 地址有两个生存期:首选生存期和有效生存期,而首选的生存期总是小于等于有效的生存期。首选生存期到期后,如果有同样好的首选地址可用,那么该地址便不再用作新连接的源 IP 地址。 有效生存期到期后,该地址不再用作入局信息包的有效目标 IP 地址或源 IP 地址。根据定义,某些 IPv6 地址有无限多个首选生存期和有效生存期,如本地链路。(这个好像也没有多大用处)
地址掩码 用于从主机部分指定网络。 未使用。
地址前缀 有时用于从主机部分指定网络。有时根据地址的表示格式写为 /nn 后缀。 用于指定地址的子网前缀。按照打印格式写为 /nnn(最多 3 位十进制数字,0 <= nnn <= 128)后缀。例如 fe80::982:2a5c/10,其中前 10 位组成子网前缀。
地址解析协议(ARP) IPv4 使用 ARP 来查找与 IPv4 地址相关联的物理地址(如 MAC 或链路地址)。 IPv6 使用因特网控制报文协议版本 6(ICMPv6)将这些功能嵌入到 IP 自身作为无状态自动配置和邻节点发现算法的一部分。因此,不存在类似于 ARP6 之类的东西。
地址作用域 此概念不适用于单点广播地址。有指定的专用地址范围和回送地址。将该范围之外的地址假设为全局地址。 在 IPv6 中,地址作用域是该体系结构的一部分。单点广播地址有两个已定义的作用域,包括本地链路和全局链路;而多点广播地址有 14 个作用域。为源和目标选择缺省地址时要考虑作用域。作用域区域是特定网络中作用域的实例。因此,有时必须输入 IPv6 地址或使它与区域标识相关联。语法是 %zid,其中 zid 是一个数字(通常较小)或名称。区域标识写在地址之后前缀之前。 例如,2ba::1:2:14e:9a9b:c%3/48。(这个问题需再仔细确认一下)
地址类型 IPv4 地址分为三种基本类型:单点广播地址、多点广播地址和广播地址。 IPv6 地址分为三种基本类型:单点广播地址、多点广播地址和任意广播地址。有关描述。
通信跟踪 通信跟踪是一个收集进入和离开系统的 TCP/IP(及其他)信息包的详细跟踪资料的工具。 同样支持 IPv6。(没有用过)
配置 新安装的系统必须在进行配置之后才能与其他系统通信;即,必须分配 IP 地址和路由。 根据所需的功能,配置是可选的。IPv6 可与任何以太网适配器配合使用并且可通过回送接口运行。IPv6 接口是使用 IPv6 无状态自动配置进行自我配置的。还可手工配置 IPv6 接口。这样,根据网络的类型以及是否存在 IPv6 路由器,系统将能与其他本地和远程的 IPv6 系统通信。
域名系统(DNS) 应用程序使用套接字 API gethostbyname() 接受主机名,然后使用 DNS 来获得 IP 地址。

应用程序还接受 IP 地址,然后使用 DNS 和 gethostbyaddr() 获得主机名。

对于 IPv4,逆向查找域为 in-addr.arpa。

同样支持 IPv6。使用 AAAA(四个 A)记录类型和逆向查找(IP 到名称)支持 IPv6。应用程序可选择(是否)从 DNS 接受 IPv6 地址,然后(是否)使用 IPv6 进行通信。
套接字 API gethostbyname() 仅支持 IPv4。对于 IPv6,使用新的 getaddrinfo() API 以仅获取 IPv6 或获取 IPv4 和 IPv6 地址(在应用选择上)。
对于 IPv6,用于逆向查找的域为 ip6.arpa,如果找不到,那么会使用 ip6.int。
动态主机配置协议(DHCP) DHCP 用于动态获取 IP 地址及其他配置信息。IBM i 支持对 IPv4 使用 DHCP 服务器。 通过 IBM i 实现的 DHCP 不支持 IPv6。但是,可以使用 实现。
文件传输协议(FTP) FTP 允许通过网络发送和接收文件。 同样支持 IPv6。
片段 如果一个信息包对于要传送它的下一链路来说太大,那么可由发送方(主机或路由器)对其分段。 对于 IPv6,只能在源节点进行分段,且只能在目标节点完成重新装配。使用分段扩展报头。
主机表 将因特网地址与主机名关联的可配置表,例如,127.0.0.1 用于回送。在开始 DNS 查找之前或者 DNS 查找失败之后(由主机名搜索优先级确定),套接字名称解析器将使用此表。 同样支持 IPv6。
IBM Navigator for i支持 IBM Navigator for i提供完整的 TCP/IP 配置解决方案。 同样支持 IPv6。
接口 概念性或逻辑实体,由 TCP/IP 用来发送和接收信息包,即使不以 IPv4 地址命名也始终与 IPv4 地址紧密关联。有时称为逻辑接口。
可使用 IBM Navigator for i以及使用 STRTCPIFC 和 ENDTCPIFC 命令彼此独立并独立于 TCP/IP 启动和停止 IPv4 接口。
同样支持 IPv6。
因特网控制报文协议(ICMP) 由 IPv4 用来进行网络信息通信。 由 IPv6 的使用情况类似;然而,因特网控制报文协议版本 6(ICMPv6)提供一些新的属性。保留了基本错误类型,如目标不可到达、回传请求和应答。 添加了新的类型和代码以支持邻节点发现和相关的功能。
因特网组管理协议(IGMP) IGMP 由 IPv4 路由器用来查找需要特定多点广播组通信的主机,并由 IPv4 主机用来向 IPv4 路由器通告(主机上)现有的多点广播组侦听器。 IGMP 在 IPv6 中由 MLD(多播侦听器发现)协议取代。MLD 执行 IGMP 对 IPv4 所执行的必要操作,但通过添加一些特定于 MLD 的 ICMPv6 类型值来使用 ICMPv6。(这点非常重要,但是上面的话等于没说)
IP 报头 根据提供的 IP 选项,有 20-60 个字节的可变长度。 40 个字节的固定长度。没有 IP 报头选项。通常,IPv6 报头比 IPv4 报头简单。
IP 报头选项 IP 报头(在任何传输报头之前)可能附带各种选项。 IPv6 报头没有选项。而 IPv6 添加了附加(可选)的扩展报头。扩展报头包括 AH 和 ESP(和 IPv4 的一样)、逐跳扩展、路由、分段和目标。目前,IPv6 支持一些扩展报头。
IP 报头协议字节 传输层或信息包有效负载的协议代码,例如,ICMP。 报头类型紧跟在 IPv6 报头后面。使用与 IPv4 协议字段相同的值。此结构的作用是允许以后的报头使用当前定义的范围并且易于扩展。下一个报头将是传输报头、扩展报头或 ICMPv6。
回送地址 回送地址是地址为 127.*.*.*(通常是 127.0.0.1)的接口,只能由节点用来向自身发送信息包。该物理接口(线路描述)被命名为 *LOOPBACK。 与 IPv4 的概念相同。单个回送地址为 0000:0000:0000:0000:0000:0000:0000:0001 或 ::1(简短版本)。虚拟物理接口被命名为 *LOOPBACK。
端口 TCP 和 UDP 有独立的端口空间,分别由范围为 1-65535 之间的端口号标识。 对于 IPv6,端口的工作与 IPv4 相同。因为它们处于新地址系列,现在有四个独立的端口空间。 例如,有应用程序可绑定的两个 TCP 端口 80 空间,一个在 AF_INET 中,一个在 AF_INET6 中。(这个我做实验是不成功的)
传输层 TCP、UDP 和 RAW。 IPv6 中存在相同的传输。
未指定地址 顾名思义,未定义的地址。套接字编程将 0.0.0.0 用作 INADDR_ANY。 定义为 ::/128(128 个 0 位)。 它在某些邻节点发现信息包和各种其他的上下文(如套接字)中用作源 IP。套接字编程将 ::/128 用作 in6addr_any。

 

转载地址:http://mzjof.baihongyu.com/

你可能感兴趣的文章
剑指offer 33.第一个只出现一次的字符
查看>>
剑指offer 34.把数组排成最小的数
查看>>
剑指offer 35.数组中只出现一次的数字
查看>>
剑指offer 36.数字在排序数组中出现的次数
查看>>
剑指offer 37.数组中重复的数字
查看>>
剑指offer 38.丑数
查看>>
剑指offer 39.构建乘积数组
查看>>
剑指offer 57. 删除链表中重复的结点
查看>>
剑指offer 58. 链表中环的入口结点
查看>>
剑指offer 59. 把字符串转换成整数
查看>>
剑指offer 60. 不用加减乘除做加法
查看>>
剑指offer 61. 求1+2+3+...+n
查看>>
剑指offer 62. 孩子们的游戏
查看>>
剑指offer 63.扑克牌顺子
查看>>
剑指offer 64. 翻转单词顺序列
查看>>
剑指offer 65. 左旋转字符串
查看>>
剑指offer 66. 和为S的两个数字
查看>>
leetcode 热题 Hot 100-5. 二叉树的最大深度
查看>>
leetcode 热题 Hot 100-2. 有效的括号
查看>>
leetcode 热题 Hot 100-3. 合并两个有序链表
查看>>