本文最后更新于 2024-11-01,文章内容可能已经过时。

IP(Internet Protocol,互联网协议)是计算机网络中最为基础和核心的协议之一,它在TCP/IP协议栈中处于网络层。

一、主要作用

1、设备标识与定位

  • 唯一标识:IP地址是网络中每个设备的唯一标识符,确保了数据包能够准确地发送到目标设备。每个连接到互联网的设备(如计算机、服务器、路由器等)都有一个唯一的IP地址。
  • 网络和主机划分:IP地址由网络部分和主机部分组成,网络部分用于标识设备所在的网络,主机部分用于标识同一网络中的不同设备。

2、数据包传输

  • 数据封装:IP协议负责将上层协议(如TCP、UDP)传递下来的数据封装成IP数据包(Datagram),并添加必要的头部信息,如源IP地址、目的IP地址、TTL(生存时间)等。
  • 路由选择:IP协议通过路由表来确定数据包的传输路径,确保数据包能够从源设备正确地发送到目标设备。路由器根据数据包中的IP地址信息,选择最佳路径进行转发。

3、网络互联与资源共享

  • 互联互通:IP协议是实现全球互联网互联互通的基础。不同的网络设备可以通过IP地址相互通信,从而实现资源的共享和访问。
  • 异构网络连接:IP协议可以适应各种不同的数据链路层技术,如以太网、Wi-Fi、光纤等,确保数据能够在不同类型的网络中传输。

4、网络地址转换(NAT

  • 私有地址与公有地址转换:在企业或个人内部网络中,多个设备可能共享一个公共IP地址。通过网络地址转换(NAT),可以将内部设备的私有IP地址映射到公共IP地址上,实现与外部网络的通信。

5、安全控制

  • 访问控制:IP地址可以用于安全控制,例如防火墙可以根据IP地址进行访问控制和安全策略的设置,防止未经授权的访问。
  • 监控与审计:通过监控IP地址的流量,可以检测和防御网络攻击,保护网络的安全和稳定。

6、移动性和灵活性

  • 移动设备支持:随着移动设备的普及和网络的发展,IP协议为移动设备提供了在不同网络中切换的能力。这使得用户可以在不同地点、不同网络环境下保持网络连接和服务,极大地提高了网络的便捷性和灵活性。

7、网络测试与诊断

  • 网络测试工具:IP地址和子网掩码是网络测试和诊断的基础。通过使用ping、traceroute、nslookup等命令,可以测试网络连通性、路径和域名解析等功能。

8、网络服务支持

  • 高级网络服务:IP地址和端口号共同支持各种高级网络服务,如远程登录(SSH)、文件传输(FTP)、电子邮件(SMTP)、网页浏览(HTTP)等。这些服务的实现都离不开IP协议的支持。

二、IPv4

IPv4地址被划分为五类:A类、B类、C类、D类和E类。这种分类方式主要基于地址的前几位比特来决定,每种类别有不同的用途和特点。以下是各类型地址的详细说明:

1、A类地址

  • 范围:1.0.0.0 到 127.255.255.255
  • 网络号位数:8位
  • 主机号位数:24位
  • 默认子网掩码:255.0.0.0
  • 特点:适用于大型网络,每个A类网络可以有16,777,214个主机地址。
  • 示例:10.0.0.1
  • 特殊地址:127.0.0.1 用于回环测试,表示本机。

2、B类地址

  • 范围:128.0.0.0 到 191.255.255.255
  • 网络号位数:16位
  • 主机号位数:16位
  • 默认子网掩码:255.255.0.0
  • 特点:适用于中型网络,每个B类网络可以有65,534个主机地址。
  • 示例:172.16.0.1

3、C类地址

  • 范围:192.0.0.0 到 223.255.255.255
  • 网络号位数:24位
  • 主机号位数:8位
  • 默认子网掩码:255.255.255.0
  • 特点:适用于小型网络,每个C类网络可以有254个主机地址。
  • 示例:192.168.1.1

4、D类地址

  • 范围:224.0.0.0 到 239.255.255.255
  • 用途:多播地址(Multicast)
  • 特点:用于多播通信,即从一个源向多个目标发送数据。
  • 示例:224.0.0.1(所有主机)

5、E类地址

  • 范围:240.0.0.0 到 255.255.255.255
  • 用途:保留地址
  • 特点:主要用于研究和实验,不用于常规网络通信。
  • 示例:240.0.0.1

特殊地址

  • 127.0.0.0/8:回环地址(Loopback),用于测试本机网络接口。
  • 255.255.255.255:广播地址,用于向整个网络广播消息。

私有地址

  • A类:10.0.0.0 到 10.255.255.255
  • B类:172.16.0.0 到 172.31.255.255
  • C类:192.168.0.0 到 192.168.255.255
  • 特点:这些地址段被预留用于私有网络,可以在内部网络中自由使用,不会与互联网上的公共地址冲突。

详细说明

1、A类地址

  • 网络地址:前8位
  • 主机地址:后24位
  • 网络地址范围:00000000 到 01111111(1到126)
  • 特殊地址:127.0.0.1 用于回环测试,表示本机。

2、B类地址

  • 网络地址:前16位
  • 主机地址:后16位
  • 网络地址范围:10000000 到 10111111(128到191)
  • 特殊地址:128.0.0.0 和 191.255.0.0 为保留地址。

3、C类地址

  • 网络地址:前24位
  • 主机地址:后8位
  • 网络地址范围:11000000 到 11011111(192到223)
  • 特殊地址:192.0.0.0 和 223.255.255.0 为保留地址。

4、D类地址

  • 网络地址:前4位为1110
  • 网络地址范围:11100000 到 11101111(224到239)
  • 用途:多播地址。

5、E类地址

  • 网络地址:前4位为1111
  • 网络地址范围:11110000 到 11111111(240到255)
  • 用途:保留地址,用于研究和实验。

三、IPv6

1、IPv6 地址概述

属性说明
长度128位
表示方法八组四位十六进制数,每组之间用冒号(:)分隔
示例2001:0db8:85a3:0000:0000:8a2e:0370:7334
简化表示连续的零可以省略,用双冒号(::)表示;每组中的前导零可以省略
简化示例2001:db8:85a3::8a2e:370:7334

2、IPv6 地址类型

类型格式示例用途
全局单播地址2001:0db8:85a3:0000:0000:8a2e:0370:7334用于全球范围内的唯一标识
链路本地地址fe80::/10仅在本地链路上有效,用于本地通信
唯一本地地址fc00::/7类似于IPv4中的私有地址,用于本地网络内部通信
多播地址ff00::/8用于多播通信,即从一个源向多个目标发送数据
任播地址2001:db8:85a3::8a2e:370:7334用于向最近的一个目标发送数据,通常用于冗余和负载均衡

3、详细说明

类型前缀范围用途示例
全局单播地址2000::/3用于全球范围内的唯一标识2001:0db8:85a3:0000:0000:8a2e:0370:7334
链路本地地址fe80::/10仅在本地链路上有效,用于本地通信fe80::1
唯一本地地址fc00::/7类似于IPv4中的私有地址,用于本地网络内部通信fd00::1
多播地址ff00::/8用于多播通信,即从一个源向多个目标发送数据ff02::1(所有节点)
任播地址2000::/3用于向最近的一个目标发送数据,通常用于冗余和负载均衡2001:db8:85a3::8a2e:370:7334

4、特殊地址

地址用途
::/128未指定地址,相当于IPv4中的0.0.0.0
::1/128回环地址,相当于IPv4中的127.0.0.1
::ffff:0:0/96IPv4映射地址,用于IPv4和IPv6之间的互通
64:ff9b::/96嵌入IPv4地址,用于IPv4和IPv6之间的互通

5、简化表示

规则示例简化后的示例
连续的零用双冒号表示2001:0db8:85a3:0000:0000:8a2e:0370:73342001:db8:85a3::8a2e:370:7334
每组中的前导零省略2001:0db8:85a3:0000:0000:8a2e:0370:73342001:db8:85a3:0:0:8a2e:370:7334

四、IPv4、IPv6总结

1、IPv4 地址

特性说明
长度32位
表示方法四个十进制数,每个数之间用点号(.)分隔
示例192.168.1.1
子网掩码用于区分网络部分和主机部分
默认子网掩码A类:255.0.0.0;B类:255.255.0.0;C类:255.255.255.0
地址分类A类、B类、C类、D类(多播)、E类(保留)
私有地址A类:10.0.0.0 - 10.255.255.255;B类:172.16.0.0 - 172.31.255.255;C类:192.168.0.0 - 192.168.255.255
特殊地址127.0.0.0/8(回环);255.255.255.255(广播)

2、IPv6 地址

特性说明
长度128位
表示方法八组四位十六进制数,每组之间用冒号(:)分隔
示例2001:0db8:85a3:0000:0000:8a2e:0370:7334
简化表示连续的零可以省略,用双冒号(::)表示;每组中的前导零可以省略
简化示例2001:db8:85a3::8a2e:370:7334
地址类型全局单播地址、链路本地地址、唯一本地地址、多播地址、任播地址
特殊地址::/128(未指定地址);::1/128(回环地址);::ffff:0:0/96(IPv4映射地址);64:ff9b::/96(嵌入IPv4地址)

3、详细对比

特性IPv4IPv6
地址长度32位128位
表示方法四个十进制数,每个数之间用点号(.)分隔八组四位十六进制数,每组之间用冒号(:)分隔
地址分类A类、B类、C类、D类(多播)、E类(保留)全局单播地址、链路本地地址、唯一本地地址、多播地址、任播地址
私有地址A类:10.0.0.0 - 10.255.255.255
B类:172.16.0.0 - 172.31.255.255
C类:192.168.0.0 - 192.168.255.255
唯一本地地址:fc00::/7
链路本地地址:fe80::/10
特殊地址127.0.0.0/8(回环)
255.255.255.255(广播)
::/128(未指定地址)
::1/128(回环地址)
::ffff:0:0/96(IPv4映射地址)
64:ff9b::/96(嵌入IPv4地址)
子网掩码用于区分网络部分和主机部分不需要子网掩码,通过地址前缀区分网络部分和主机部分
地址数量约43亿个地址约3.4×10^38个地址

4、地址类型详细说明

Ⅰ、IPv4 地址类型

类别范围网络号位数主机号位数默认子网掩码用途特殊地址
A1.0.0.0 - 127.255.255.255824255.0.0.0大型网络127.0.0.1(回环)
B128.0.0.0 - 191.255.255.2551616255.255.0.0中型网络-
C192.0.0.0 - 223.255.255.255248255.255.255.0小型网络-
D224.0.0.0 - 239.255.255.255---多播地址224.0.0.1(所有主机)
E240.0.0.0 - 255.255.255.255---保留地址(研究和实验)-

Ⅱ、IPv6 地址类型

类型格式示例用途
全局单播地址2001:0db8:85a3:0000:0000:8a2e:0370:7334用于全球范围内的唯一标识
链路本地地址fe80::/10仅在本地链路上有效,用于本地通信
唯一本地地址fc00::/7类似于IPv4中的私有地址,用于本地网络内部通信
多播地址ff00::/8用于多播通信,即从一个源向多个目标发送数据
任播地址2001:db8:85a3::8a2e:370:7334用于向最近的一个目标发送数据,通常用于冗余和负载均衡

Ⅲ、特殊地址

地址范围用途
127.0.0.0/8回环地址(Loopback),用于测试本机网络接口
255.255.255.255广播地址,用于向整个网络广播消息
::/128未指定地址,相当于IPv4中的0.0.0.0
::1/128回环地址,相当于IPv4中的127.0.0.1
::ffff:0:0/96IPv4映射地址,用于IPv4和IPv6之间的互通
64:ff9b::/96嵌入IPv4地址,用于IPv4和IPv6之间的互通