- 地址
- IPV4
- IPV6
- OSPF
- 1. 链路状态路由协议
- 2. 区域和层次结构
- 3. OSPF报文类型
- 4. 路由计算
- 5. 快速收敛
- 6. 安全性
- 7.OSPF协议在网络层对应的协议号 - IPV6 IPV4常见问题
私有(内部)IP地址 (Private IP Address)是一种在本地网络(比如家庭、公司局域网等)内部使用的IP地址,它不在互联网上使用。私有IP地址的主要目的是在局部网络中标识主机设备,而不在全球唯一标识。这意味着,同一个私有IP地址可以在不同的局域网中重复使用,但在互联网上是无法直接访问的,必须通过网络地址转换(NAT,通常在路由器上实现)或代理才能访问外部网络。
内网IP地址有以下几个保留的IP地址范围:
10.0.0.0 - 10.255.255.255(10.0.0.0/8)
/8
的意思是在32位的IP地址中,前8位是网络位,剩下的24位是主机位可用IP数量 :
16,777,216
个地址。计算方式为:2^(32−8)=2^24=16,777,216
172.16.0.0 - 172.31.255.255(172.16.0.0/12)
可用IP数量 :
1,048,576
个地址192.168.0.0 - 192.168.255.255(192.168.0.0/16)
可用IP数量 :
65,536
个地址
地址
- 网络地址: 网络号 + 子网号 + 主机号(全为0)
- 广播地址: 网络号 + 子网号 + 主机号(全为1)
- 子网掩码: 网络号(全为1) + 子网号(全为1) + 主机号(全为0)
IPV4
IP地址通常分为A、B、C、D、E五类,其中A、B、C三类是用于普通的网络通信。每一类具有不同的网络容量和适用范围。
A类地址
- 范围: 1.0.0.0 到 126.255.255.255
- 默认子网掩码: 255.0.0.0 (/8)
- 特点: A类地址通常用于非常大的网络。第一个字节用来表示网络,剩下的三个字节用来表示主机。
B类地址
- 范围: 128.0.0.0 到 191.255.255.255
- 默认子网掩码: 255.255.0.0 (/16)
- 特点: B类地址用于中型网络,前两个字节用于表示网络,后两个字节用于表示主机。
C类地址
- 范围: 192.0.0.0 到 223.255.255.255
- 默认子网掩码: 255.255.255.0 (/24)
- 特点: C类地址通常用于小型网络,前三个字节用于表示网络,最后一个字节用于表示主机。
私有IP地址(Private IP Addresses)用于本地网络(如家庭、办公室或企业网络)中,不在公共互联网中路由。这些地址由IANA(Internet Assigned Numbers Authority)在RFC 1918中定义。以下是私有IP地址的范围:
A类私有IP地址
- 范围: 10.0.0.0 到 10.255.255.255
- 数量: 总共16,777,216个地址
B类私有IP地址
- 范围: 172.16.0.0 到 172.31.255.255
- 数量: 总共1,048,576个地址
C类私有IP地址
- 范围: 192.168.0.0 到 192.168.255.255
- 数量: 总共65,536个地址
这些私有地址不能直接通过互联网访问,因此通常需要通过网络地址转换(NAT, Network Address Translation)技术来实现本地网络与互联网的连接。私有IP地址的使用非常广泛,因为它们允许多个设备在同一网络中使用相同的IP地址,而不需要在全球范围内唯一标识。
IPV6
1. 单播地址(Unicast Address)
单播地址用于标识单个网络接口。数据包发送到单播地址时,将传递给该地址指定的单个接口。
- 全球单播地址(Global Unicast Address):
- 类似于IPv4的公有地址,可以在全球范围内唯一标识一个设备。
- 通常以
2000::/3
为前缀。
- 链路本地地址(Link-Local Address):
- 仅在同一链路(或网络段)上有效,用于自动地址配置和邻居发现。
- 前缀为
FE80::/10
。 - 不会被路由器转发,因此只适用于局部网络通信。
- 唯一本地地址(Unique Local Address, ULA):
- 用于本地通信且不与全球单播地址冲突。
- 前缀为
FC00::/7
,但在实际应用中通常以FD00::/8
开头。 - 类似于IPv4的私有地址。
2. 多播地址(Multicast Address)
多播地址用于标识一组接口。发送到多播地址的数据包将传递给属于该组的所有接口。
- 前缀:
FF00::/8
。 - 多播地址用于在网络中进行高效的数据广播,例如视频流传输和路由协议更新。
3. 任播地址(Anycast Address)
任播地址分配给多个接口,但数据包将传递给距离发送者最近的一个接口。
- 任播地址没有特定的前缀,通常从单播地址空间中分配。
- 主要用于提高服务的可靠性和响应速度,例如DNS请求。
特殊用途地址
- 未指定地址(Unspecified Address):
- 表示“无特定地址”,相当于IPv4的
0.0.0.0
。 - 表示为
::
或::/128
,通常用于表示主机尚未获得有效地址。
- 表示“无特定地址”,相当于IPv4的
- 回环地址(Loopback Address):
- 用于主机自我通信,相当于IPv4的
127.0.0.1
。 - 表示为
::1
或::1/128
。
- 用于主机自我通信,相当于IPv4的
OSPF
OSPF是一种基于链路状态的路由协议,主要特点和功能如下:
1. 链路状态路由协议
- OSPF使用Dijkstra算法(最短路径优先算法)来计算到每个网络的最短路径。
- 它通过链路状态数据库(LSDB)维护整个网络的拓扑视图,每个路由器都有一个完整的网络拓扑图。
2. 区域和层次结构
- OSPF支持多区域配置,可以将一个大的自治系统分成多个区域,以减少路由表的大小和链路状态更新的传播范围。
- 区域0(称为骨干区域)是所有其他区域必须连接的区域。
3. OSPF报文类型
OSPF使用多种报文类型来完成其功能:
- Hello报文:用于发现和维护邻居关系。
- DBD(Database Description)报文:用于描述LSDB的内容,帮助路由器同步数据库。
- LSR(Link State Request)报文:用于请求特定的LSA(Link State Advertisement,链路状态广告)。
- LSU(Link State Update)报文:用于发送LSA,传播链路状态信息。
- LSACK(Link State Acknowledgment)报文:用于确认接收到的LSU报文。
4. 路由计算
- OSPF计算路由时会考虑各个链路的成本(通常基于带宽),并选择具有最低总成本的路径。
- OSPF支持等价多路径(ECMP),可以在多个具有相同成本的路径之间进行负载均衡。
5. 快速收敛
- 由于OSPF基于链路状态,它能够快速响应网络拓扑的变化,提供快速收敛特性。
6. 安全性
- OSPF支持对所有交换的报文进行身份验证,以确保只有授权的路由器才能参与OSPF路由。
OSPF因其灵活性和高效性,广泛应用于各种企业和服务提供商网络中,是一种非常重要的路由协议。
7.OSPF协议在网络层对应的协议号
89
OSPF使用IP协议来封装和传输其路由更新数据包
OSPF(Open Shortest Path First,开放最短路径优先)是一种广泛使用的内部网关协议(IGP),用于在单一自治系统内路由IP数据包。OSPF在IP数据包中的协议号为89,这是用于标识OSPF协议的专用IP协议号。
IPV6 IPV4常见问题
IPv6基本报文头部固定长度为40字节
IPv4的为20字节
类似于IPv4中TTL字段的IPv6字段是Hop Limit
IPv4地址长度为32位(4字节)
IPv6地址长度为128位(16字节)
IPV6比IPV4多引入了:
Flow Label(流标签):这是IPv6报文头中新增的字段,占用20位,用于标识数据流。Flow Label的设计目的是支持流量工程和服务质量(QoS),使得数据包在经过网络时可以被识别为属于同一个流,从而实现更好的流量管理和处理。
IPv6报文头字段概览
IPv6报文头的字段包括:
- Version(版本):4位,标识IP协议的版本号(IPv6的值为6)。
- Traffic Class(流量类别):8位,用于区分不同类型的流量,以支持服务质量(QoS)。
- Flow Label(流标签):20位,用于标识数据流。
- Payload Length(有效载荷长度):16位,表示紧随头部的有效载荷的长度(不包括头部)。
- Next Header(下一个头部):8位,指示在IPv6头部之后的下一个扩展头部或上层协议(类似于IPv4的协议字段)。
- Hop Limit(跳数限制):8位,类似于IPv4的TTL字段,限制数据包在网络中可以经过的最大跳数。
- Source Address(源地址):128位,数据包的发送者地址。
- Destination Address(目的地址):128位,数据包的接收者地址。
IPv4报文头的字段
- Version(版本):4位,指定IP协议的版本号(IPv4的值为4)。
- IHL(Internet Header Length,头部长度):4位,表示IP头部的长度,以32位字为单位。最小值是5,表示20字节,最大值是15,表示60字节。
- Type of Service(服务类型):8位,用于指定数据包的优先级和QoS要求。现已被重定义为“Differentiated Services”。
- Total Length(总长度):16位,表示整个IP数据包(包括数据和头部)的长度,以字节为单位。
- Identification(标识):16位,用于唯一标识主机发送的每一个数据包,通常用于数据包分片。
- Flags(标志):3位,其中包含控制分片的标志位,包括DF(Don’t Fragment,不分片)和MF(More Fragments,还有分片)。
- Fragment Offset(片偏移):13位,表示数据包分片在原始数据包中的位置。
- Time to Live(生存时间,TTL):8位,表示数据包在网络中的最大跳数,防止数据包在网络中无限循环。
- Protocol(协议):8位,指示数据包所承载的上层协议(例如,ICMP、TCP、UDP)。
- Header Checksum(头部校验和):16位,用于校验IP头部的完整性。
- Source Address(源地址):32位,表示数据包发送方的IP地址。
- Destination Address(目的地址):32位,表示数据包接收方的IP地址。
- Options(可选项):可变长度,提供额外的控制信息,具体长度由IHL字段决定。
- Padding(填充):使头部长度达到32位的整数倍。