计网期末复习指南(四):网络层(IP协议、IPv4、IPv6、CIDR、ARP、ICMP)

 前言:本系列文章旨在通过TCP/IP协议簇自下而上的梳理大致的知识点,从计算机网络体系结构出发到应用层,每一个协议层通过一篇文章进行总结,本系列正在持续更新中...  

计网期末复习指南(一):计算机网络体系结构计网期末复习指南(二):物理层计网期末复习指南(三):数据链路层
计网期末复习指南(四):网络层计网期末复习指南(三):运输层计网期末复习指南(六):应用层


目录

一.网络层的几个重要概念

▐ 网络层提供的俩种服务

二.IP协议

▐ IP地址

点分十进制记法

IP地址的分类

特殊的IP地址

▐ 无类别域间路由CIDR

▐ IP数据报格式

二.ARP协议

三.ICMP协议

四.IPv6

▐ IPv6的特点

▐ IPv6地址表示法

▐ IPv6地址类型

▐ IPv6头部格式

▐ IPv6地址的示例

五.路由选择协议RIP和OSPF

▐ RIP(Routing Information Protocol)

▐ OSPF(Open Shortest Path First)

▐ 比较和关系

六.虚拟专用网VPN和NAT

▐ 共同作用与差异


一.网络层的几个重要概念

在计算机网络中,网络层是OSI模型中的第三层,负责数据包在网络中的传输和路由。以下是网络层的一些重要概念:

  1. IP地址

    • 用于标识网络中的每个设备。IPv4地址是32位,表示为四个八位的十进制数(例如,192.168.1.1),IPv6地址是128位,用于应对IPv4地址耗尽的问题。
  2. 子网掩码

    • 与IP地址配合使用,用于确定一个IP地址的网络部分和主机部分。例如,子网掩码255.255.255.0表示前24位是网络地址,后8位是主机地址。
  3. 路由

    • 数据包从源设备传输到目标设备的路径选择过程。路由由路由器执行,路由器使用路由表和路由协议来决定数据包的最佳路径。
  4. 路由器

    • 一种网络设备,连接不同的网络并负责转发数据包。路由器根据路由表中的信息决定数据包的转发路径。
  5. 路由协议

    • 动态路由协议:如OSPF(开放最短路径优先)和BGP(边界网关协议),用于在路由器之间交换路由信息,动态更新路由表。
    • 静态路由:手动配置的路由信息,不会自动更新。
  6. 网关

    • 网络的出入口,用于连接不同网络。默认网关是用于数据包没有明确路由路径时的转发路径。
  7. NAT(网络地址转换)

    • 用于在本地网络和公共网络之间转换IP地址,允许多个设备共享一个公共IP地址,提高了地址利用率,增强了网络安全。
  8. TTL(生存时间)

    • IP包头中的一个字段,表示数据包在网络中可以经过的最大路由器数目。每经过一个路由器,TTL值减1,TTL为0时,数据包被丢弃,防止数据包在网络中无限循环。
  9. ICMP(Internet控制消息协议)

    • 用于传输错误消息和其他网络状态信息。例如,ping命令使用ICMP回显请求和回显应答消息来测试网络连接。
  10. ARP(地址解析协议)

  • 用于将IP地址解析为物理MAC地址,在局域网中非常重要。例如,主机A要与同一局域网内的主机B通信,ARP将主机B的IP地址解析为其MAC地址。

这些概念共同构成了网络层的基础。

▐ 网络层提供的俩种服务

在计算机网络中,网络层主要提供两种服务:

  1. 面向连接的服务(Connection-oriented service)

    • 概念:在传输数据之前,建立一个逻辑连接,确保所有数据按照正确的顺序传送,并且接收方能够检测和请求重传丢失或损坏的数据。
    • 特点
      • 建立连接:在传输数据之前,需要建立一个连接。
      • 顺序传送:数据包按发送顺序到达接收方。
      • 确认和重传:接收方确认收到的数据包,丢失的数据包会被重传。
    • 协议示例:X.25、帧中继(Frame Relay)、ATM(异步传输模式)。
  2. 无连接的服务(Connectionless service)

    • 概念:数据包独立传输,每个数据包携带完整的地址信息,可以独立地选择路径传送到目标,接收方不确认数据的接收情况。
    • 特点
      • 无需建立连接:数据包可以直接发送,无需事先建立连接。
      • 独立传输:每个数据包独立传输,路径可能不同。
      • 无确认:不确认数据包的接收情况,不重传丢失的数据包。
    • 协议示例:互联网协议(IP)。

这两种服务方式各有优缺点,适用于不同的应用场景。面向连接的服务适用于需要高可靠性、顺序传输的应用,而无连接的服务则适用于需要快速传输、大量数据包的应用,如实时通信和流媒体传输。


二.IP协议

IP(Internet Protocol,互联网协议)是网络层的核心协议,用于在网络中传输数据包。IP协议定义了数据包的格式和地址结构,并规定了如何在不同的网络设备之间传输数据。同时IP协议夜市TCP/IP体系中俩个最主要的协议之一,也是互联网标准协议之一。IP协议是互联网通信的基石,几乎所有网络通信都依赖于IP协议。它提供了一个通用的、标准化的传输机制,使不同类型的网络设备能够互相通信。

与IP协议配套使用的往往还有以下三个协议:

  • 地址解析协议ARP (Address Resolution Protocol)
  • 网际控制报文协议ICMP(Internet Control Message Protocol)
  • 网际组管理协议IGMP(Internet Group Management Protocol)

▐ IP地址

IP地址(Internet Protocol Address)是用于标识连接到网络上的每个设备的唯一地址。IP地址使得不同设备能够在网络中互相识别和通信。

IP地址主要分为俩个版本:

  • IPv4地址
    • 长度:32位,表示为四个8位的二进制数,每个数之间用点分隔。
    • 表示:通常以十进制形式表示,例如,192.168.1.1。
    • 范围:每个8位数的范围是0到255。
  • IPv6地址
    • 长度:128位,表示为八个16位的十六进制数,每个数之间用冒号分隔。
    • 表示:例如,2001:0db8:85a3:0000:0000:8a2e:0370:7334。
    • 特点:解决了IPv4地址耗尽的问题,支持更大范围的地址空间。

点分十进制记法

IP地址的点分十进制记法(Dotted Decimal Notation)是一种表示IPv4地址的方法,将32位的二进制地址分成四个八位(8-bit)的部分,每个部分用十进制表示,并用点号(.)分隔。每个八位部分称为一个“八位字节”(octet)。

具体表示方法

  • 结构:IPv4地址的32位二进制数被分成四组,每组8位。
  • 范围:每组8位可以表示的十进制数范围是0到255。
  • 格式:十进制数之间用点(.)分隔。

例如:

  • 二进制形式:11000000 10101000 00000001 00000001
  • 点分十进制形式:192.168.1.1

转换示例

假设有一个二进制IP地址:11000000 10101000 00000001 00000001

  1. 第一组8位:11000000

    • 二进制到十进制转换:1*2^7 + 1*2^6 + 0*2^5 + 0*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 0*2^0 = 128 + 64 + 0 + 0 + 0 + 0 + 0 + 0 = 192
  2. 第二组8位:10101000

    • 二进制到十进制转换:1*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 0*2^2 + 0*2^1 + 0*2^0 = 128 + 0 + 32 + 0 + 8 + 0 + 0 + 0 = 168
  3. 第三组8位:00000001

    • 二进制到十进制转换:0*2^7 + 0*2^6 + 0*2^5 + 0*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 1*2^0 = 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 = 1
  4. 第四组8位:00000001

    • 二进制到十进制转换:0*2^7 + 0*2^6 + 0*2^5 + 0*2^4 + 0*2^3 + 0*2^2 + 0*2^1 + 1*2^0 = 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 = 1

将四组十进制数组合起来,用点分隔,即得:192.168.1.1

 

IP地址的分类

在对IP地址分类的时候,我们会根据该IP地址所占的网络号和主机号的位数进行分类

也就是下图这样:

  • A类地址
    • 范围:1.0.0.0 到 126.0.0.0
    • 特点:用于大型网络,支持大量的主机。
  • B类地址
    • 范围:128.0.0.0 到 191.255.0.0
    • 特点:用于中等规模的网络。
  • C类地址
    • 范围:192.0.0.0 到 223.255.255.0
    • 特点:用于小型网络。
  • D类地址
    • 范围:224.0.0.0 到 239.255.255.255
    • 特点:用于多播。
  • E类地址
    • 范围:240.0.0.0 到 255.255.255.255
    • 特点:保留用于实验和未来使用。

特殊的IP地址

特殊的IP地址在网络中有特定的用途,它们不用于常规的设备标识。以下是一些常见的特殊IP地址及其用途:

1. 环回地址(Loopback Address)

  • 地址:127.0.0.1(IPv4)和 ::1(IPv6)
  • 用途:用于设备自我测试和本地通信,数据包发送到该地址会被返回到发送方,不会离开主机。

2. 广播地址(Broadcast Address)

  • IPv4地址:255.255.255.255
  • 子网广播地址:特定子网的最后一个地址,例如192.168.1.255(假设子网掩码为255.255.255.0)。
  • 用途:用于向网络中所有设备发送数据包,常用于发现服务或设备。

3. 多播地址(Multicast Address)

  • 范围:224.0.0.0 到 239.255.255.255(IPv4)
  • 用途:用于向一组订阅了多播的设备发送数据包,常用于视频会议和在线流媒体。

4. 私有IP地址(Private IP Addresses)

  • 范围
    • 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
  • 用途:用于局域网(LAN),不可在互联网上路由,需通过NAT转换为公有IP地址。

5. 自动私有IP地址(APIPA)

  • 范围:169.254.0.0 到 169.254.255.255
  • 用途:当设备无法从DHCP服务器获取IP地址时自动分配,用于局域网内的自动配置和通信。

▐ 无类别域间路由CIDR

CIDR(Classless Inter-Domain Routing,无类别域间路由)是一种用于IP地址分配和路由的方式,它消除了传统IP地址分类(A类、B类、C类)的限制,提高了地址分配的灵活性和路由的效率。CIDR引入了“前缀长度”的概念,用来表示网络部分和主机部分。

表示方法

CIDR表示法包括一个IP地址和一个斜杠(/),后面跟一个数字,这个数字表示网络前缀的长度,即网络部分的位数。例如:

  • 192.168.1.0/24 表示一个IP地址范围,其中前24位是网络前缀,其余8位是主机位。

优点

  1. 地址利用率提高:CIDR允许网络前缀长度灵活定义,而不局限于A类、B类、C类,能够更精确地匹配实际需要的地址数量,减少IP地址浪费。
  2. 路由表简化:通过聚合路由前缀(Route Aggregation),CIDR可以显著减少路由表中的条目数,提高路由器的性能和效率。
  3. 灵活的子网划分:CIDR支持任意长度的子网掩码,使得网络管理员可以更灵活地划分和管理子网。

示例

  • 192.168.1.0/24

    • 网络前缀:24位
    • 子网掩码:255.255.255.0
    • IP地址范围:192.168.1.0 到 192.168.1.255
    • 可用主机数:254个(192.168.1.1 到 192.168.1.254)
  • 10.0.0.0/8

    • 网络前缀:8位
    • 子网掩码:255.0.0.0
    • IP地址范围:10.0.0.0 到 10.255.255.255
    • 可用主机数:16,777,214个(10.0.0.1 到 10.255.255.254)
  • 172.16.0.0/16

    • 网络前缀:16位
    • 子网掩码:255.255.0.0
    • IP地址范围:172.16.0.0 到 172.16.255.255
    • 可用主机数:65,534个(172.16.0.1 到 172.16.255.254)

路由聚合示例

CIDR允许多个连续的IP地址块通过一个更短的前缀来表示,例如:

  • 原始路由条目

    • 192.168.0.0/24
    • 192.168.1.0/24
    • 192.168.2.0/24
    • 192.168.3.0/24
  • 聚合后的路由条目

    • 192.168.0.0/22

通过这种方式,四个连续的24位前缀可以被一个22位前缀所替代,从而简化路由表。


▐ IP数据报格式

IP数据包(IP Packet)是网络层的核心数据传输单元,其头部包含多个字段,每个字段都有特定的功能。这些字段的定义和作用如下:

  1. 版本 (Version)

    • 长度:4位
    • 作用:指示IP协议的版本号。IPv4的版本号为4,IPv6的版本号为6。
  2. 头部长度 (IHL - Internet Header Length)

    • 长度:4位
    • 作用:指示IP头部的长度,以32位字(4字节)为单位。最小值为5(表示20字节),最大值为15(表示60字节)。
  3. 区分服务 (DSCP - Differentiated Services Code Point)

    • 长度:6位
    • 作用:用于指示数据包的优先级和服务质量(QoS)。它替代了原来的服务类型 (Type of Service, TOS) 字段。
  4. 显式拥塞通知 (ECN - Explicit Congestion Notification)

    • 长度:2位
    • 作用:用于拥塞控制,通知网络中的设备当前的拥塞状态。
  5. 总长度 (Total Length)

    • 长度:16位
    • 作用:指示整个IP数据包(包括头部和数据)的长度,单位为字节。最小值为20(只有头部),最大值为65535。
  6. 标识 (Identification)

    • 长度:16位
    • 作用:用于唯一标识一个IP数据包的片段。对数据包进行分片时,所有片段都具有相同的标识值。
  7. 标志 (Flags)

    • 长度:3位
    • 作用:用于控制分片。主要包含两个标志位:DF(Don't Fragment,不分片)和MF(More Fragments,有更多分片)。
  8. 片偏移 (Fragment Offset)

    • 长度:13位
    • 作用:指示当前分片相对于原始数据包的起始位置,单位为8字节。用于数据包重组。
  9. 生存时间 (TTL - Time to Live)

    • 长度:8位
    • 作用:限制数据包在网络中的生存时间,每经过一个路由器,该值减1,减到0时数据包被丢弃,防止数据包在网络中无限循环。
  10. 协议 (Protocol)

    • 长度:8位
    • 作用:指示上层协议类型,例如TCP (6) 或 UDP (17),告知目标设备应该将数据包交给哪个上层协议处理。
  11. 头部校验和 (Header Checksum)

    • 长度:16位
    • 作用:用于校验IP头部的完整性。发送方计算校验和,接收方验证。如果校验和不匹配,数据包被丢弃。
  12. 源IP地址 (Source Address)

    • 长度:32位
    • 作用:指示发送数据包的设备的IP地址。
  13. 目标IP地址 (Destination Address)

    • 长度:32位
    • 作用:指示接收数据包的设备的IP地址。
  14. 选项 (Options)

    • 长度:可变,取决于IHL字段
    • 作用:提供额外的控制信息,例如安全性、时间戳、记录路由等。选项字段不是必须的,仅在需要时使用。
  15. 填充 (Padding)

    • 长度:可变,取决于选项字段
    • 作用:确保IP头部长度是32位的整数倍,以便对齐。

图示: 

总结如下: 

  • 版本和头部长度:标识IP协议版本和头部长度。
  • 服务质量:控制数据包的优先级和服务质量。
  • 总长度和标识:指示数据包的总长度和唯一标识。
  • 分片控制:用于数据包分片和重组。
  • 生存时间和协议:限制数据包生存时间,指示上层协议。
  • 校验和:确保头部完整性。
  • 源地址和目标地址:标识发送方和接收方IP地址。
  • 选项和填充:提供额外信息和对齐头部。

这些字段共同工作,确保IP数据包在网络中的有效传输和管理。


二.ARP协议

地址解析协议(ARP,Address Resolution Protocol)是用于将IP地址解析为MAC地址的协议。ARP工作在数据链路层(第2层)和网络层(第3层)之间,确保在局域网(LAN)中,设备能够根据IP地址找到对应的MAC地址,以便正确传输数据帧。

IP到MAC地址解析:ARP的主要功能是将一个设备的IP地址解析为对应的MAC地址,确保数据帧能够在局域网内正确传输。

工作原理

  • ARP请求:当一个设备需要知道另一个设备的MAC地址时,它会广播一个ARP请求帧。ARP请求包含发送设备的IP地址和MAC地址,以及目标设备的IP地址。
  • ARP响应:目标设备接收到ARP请求后,会回复一个ARP响应帧,其中包含目标设备的MAC地址。这个响应帧只发送给请求设备,而不是广播。
  • 缓存结果:发送设备接收到ARP响应后,会将目标设备的IP地址和MAC地址映射关系缓存起来,以便下次直接使用,而无需再次发送ARP请求。

ARP请求

  • 发送方的MAC地址
  • 发送方的IP地址
  • 目标方的IP地址
  • 目标方的MAC地址(未知,用0填充)

ARP响应

  • 发送方的MAC地址(目标设备的MAC地址)
  • 发送方的IP地址(目标设备的IP地址)
  • 目标方的IP地址(请求设备的IP地址)
  • 目标方的MAC地址(请求设备的MAC地址)

三.ICMP协议

ICMP(Internet Control Message Protocol)是一个网络层协议,用于在IP网络中进行错误报告、查询和诊断功能。它通常在网络设备之间传递控制消息,以提供网络的可靠性和可管理性。

ICMP报文有俩种:ICMP差错报文和ICMP询问报文

ICMP消息通常由网络设备(如路由器和防火墙)生成并发送给源IP地址,以通知发送者有关网络问题或错误的信息,或者请求其他网络设备提供特定信息。常见的ICMP消息包括“目标不可达”(Destination Unreachable)、“超时”(Time Exceeded)和“回显请求”(Echo Request)。

ICMP的功能

  1. 错误报告:当网络设备在处理IP数据包时发生错误,ICMP可以发送错误消息给数据包的发送者。例如,数据包无法到达目的地时,ICMP可以发送目标不可达(Destination Unreachable)消息。

  2. 网络诊断:ICMP协议提供了诊断网络连接状态的工具,例如Ping和Traceroute。Ping命令通过发送ICMP Echo请求消息,接收ICMP Echo响应消息来检测目标主机的可达性和响应时间。

  3. 网络控制:ICMP协议可以控制网络流量。例如,源抑制(Source Quench)消息用于告诉发送方减少发送数据的速率,因为当前的网络拥塞。

ICMP消息的格式如下:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     类型 (Type)     |   代码 (Code)   |        校验和 (Checksum)       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             数据 (Data)                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  • 类型 (Type):指示消息类型(例如,Echo Request、Destination Unreachable)。
  • 代码 (Code):提供进一步的消息类型信息(例如,Destination Unreachable消息中的网络不可达、主机不可达等)。
  • 校验和 (Checksum):用于检验ICMP消息的完整性。
  • 数据 (Data):包含与具体ICMP消息相关的附加信息(例如,Echo Request消息中的标识符和序列号)。

ICMP协议还用于支持Ping工具,Ping是一种常用的网络工具,用于测试目标主机的连接性和延迟。Ping工具发送ICMP回显请求消息到目标主机,并等待目标主机返回ICMP回显回应消息,以测试网络的可达性和延迟。

  1. Ping命令

    • 作用:检测目标主机的可达性和响应时间。
    • 过程:发送方向目标主机发送ICMP Echo请求,目标主机接收到请求后发送ICMP Echo响应。发送方计算往返时间。
  2. Traceroute命令

    • 作用:追踪数据包从发送方到目标主机经过的路由路径。
    • 过程:发送方发送TTL递增的ICMP Echo请求,每经过一个路由器,TTL减1并最终导致ICMP Time Exceeded消息返回给发送方,从而确定每个路由器的IP地址。

四.IPv6

IPv6(Internet Protocol version 6)是下一代互联网协议,旨在取代IPv4以应对地址枯竭和改进互联网的性能和安全性。IPv6引入了128位地址空间,比IPv4的32位地址空间大大扩展,能够提供大量的IP地址。

▐ IPv6的特点

  1. 更大的地址空间:IPv6地址长度为128位,可以提供2^128个独立的地址,解决了IPv4地址耗尽的问题。

  2. 简化的头部格式:IPv6头部相较于IPv4更简单,去除了不常用的字段,提升了路由器的处理效率。

  3. 内置的安全性:IPv6支持IPSec作为标准功能,提供了端到端的数据加密和认证。

  4. 自动配置:支持无状态地址自动配置(SLAAC),使设备可以自动生成IP地址并连接到网络。

  5. 改进的多播和任播支持:增强了多播功能,减少广播,提高了网络效率,并引入了任播地址。

▐ IPv6地址表示法

IPv6地址由8组16位(四个十六进制数字)组成,每组之间用冒号(:)分隔。例如:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

为了简化表示,IPv6地址可以使用以下两种方法缩写:

  1. 零压缩(Zero Compression)

    将连续的零组用双冒号(::)表示。每个地址中只能出现一次双冒号。例如:
    2001:0db8:0000:0000:0000:0000:1428:57ab
    可以缩写为
    2001:0db8::1428:57ab
    

▐ IPv6地址类型

IPv6地址有多种类型,每种类型用于不同的网络功能:

  1. 单播地址(Unicast Address):标识单个接口,数据包发送到该地址时只传送给一个接口。

  2. 任播地址(Anycast Address):分配给多个接口,数据包发送到该地址时传送给距离最近的一个接口。

  3. 多播地址(Multicast Address):分配给一组接口,数据包发送到该地址时传送给所有接口。IPv6中没有广播地址,使用多播地址代替。

▐ IPv6头部格式

IPv6头部的主要字段如下:

  1. 版本(Version):4位字段,表示IP协议的版本(IPv6为6)。

  2. 流量类(Traffic Class):8位字段,用于区分数据流的优先级。

  3. 流标签(Flow Label):20位字段,用于标识数据流,便于路由器对数据流进行处理。

  4. 有效载荷长度(Payload Length):16位字段,表示IPv6头部之后的有效载荷长度(以字节为单位)。

  5. 下一个头(Next Header):8位字段,指示下一个头部的类型(例如TCP、UDP)。

  6. 跳限(Hop Limit):8位字段,类似于IPv4的TTL,限制数据包在网络中的最大跳数。

  7. 源地址(Source Address):128位字段,表示数据包发送方的IPv6地址。

  8. 目标地址(Destination Address):128位字段,表示数据包接收方的IPv6地址。

▐ IPv6地址的示例

完整地址:

2001:0db8:85a3:0000:0000:8a2e:0370:7334

缩写为:

2001:db8:85a3::8a2e:370:7334

 IPv6通过更大的地址空间和简化的头部格式,解决了IPv4地址耗尽的问题并提高了网络效率和安全性。使用零压缩和前导零压缩可以简化IPv6地址的表示,使其更加便于使用和阅读。IPv6还支持多种地址类型,增强了网络通信的灵活性和功能。


五.路由选择协议RIP和OSPF

RIP(Routing Information Protocol)和OSPF(Open Shortest Path First)都是网络中使用的路由协议,用于在路由器之间交换路由信息,从而确定数据包的最佳路径。它们都是内部网关协议(IGP),用于在自治系统(AS)内部进行路由选择。

▐ RIP(Routing Information Protocol)

特点:

  1. 基于距离矢量

    • RIP是基于距离矢量(Distance Vector)算法的路由协议。
    • 每个路由器通过周期性地向邻居路由器发送包含所有已知路由的路由更新包,使用跳数(Hop Count)作为度量标准。
  2. 跳数限制

    • RIP的最大跳数限制为15,跳数为16表示不可达。
    • 这种限制适用于小型网络,不适合大型或复杂的网络。
  3. 更新频率

    • RIP定期(默认每30秒)发送路由更新。
    • 由于定期更新,可能导致网络带宽的浪费。
  4. 简单易用

    • RIP配置和实现相对简单,适用于小规模网络。

版本:

  • RIPv1:不支持子网掩码信息,所有网络假定为相同的子网。
  • RIPv2:支持子网掩码信息(CIDR),增强了安全性和效率。

▐ OSPF(Open Shortest Path First)

特点:

  1. 基于链路状态

    • OSPF是基于链路状态(Link State)算法的路由协议。
    • 每个路由器通过链路状态广告(LSA)向所有其他路由器通告其直接相连的链路状态信息。
    • 使用Dijkstra算法计算最短路径树,以确定最佳路径。
  2. 区域和层次结构

    • OSPF支持多区域设计,通过将网络划分为多个区域来简化路由表和减少路由更新的开销。
    • 核心区域为Area 0,其他区域通过Area 0互联。
  3. 快速收敛

    • 由于采用链路状态协议,OSPF能够快速收敛,即在网络拓扑变化时迅速更新路由表。
    • OSPF对链路状态变化响应更快,适用于大型和复杂网络。
  4. 支持多种度量标准

    • OSPF使用开销(Cost)作为度量标准,开销可以基于带宽、延迟等因素进行配置。
  5. 安全性

    • 支持认证机制,确保路由更新的安全性。

▐ 比较和关系

  1. 协议类型

    • RIP:基于距离矢量算法,简单易用,但不适合大型网络。
    • OSPF:基于链路状态算法,复杂但强大,适用于大型和复杂网络。
  2. 度量标准

    • RIP:使用跳数(Hop Count)作为度量标准,最大跳数为15。
    • OSPF:使用开销(Cost)作为度量标准,可以灵活配置。
  3. 更新机制

    • RIP:定期广播路由更新,可能浪费带宽。
    • OSPF:基于链路状态变化触发更新,更加高效。
  4. 收敛速度

    • RIP:收敛速度较慢,适用于小型网络。
    • OSPF:收敛速度快,适用于大型网络。
  5. 网络规模

    • RIP:由于跳数限制和简单性,适合小型网络。
    • OSPF:支持多区域和层次结构,适合大型和复杂网络。

总结

  • RIP:适用于简单、小规模网络,配置和维护简单,但由于跳数限制和慢速收敛,不适合大型网络。
  • OSPF:适用于大型和复杂网络,支持多区域设计和快速收敛,但配置和维护相对复杂。

两者都是内部网关协议,主要用于自治系统内的路由选择。OSPF提供了更高级的功能和更好的性能,适合现代大型网络,而RIP则适用于对复杂性要求较低的小型网络。


六.虚拟专用网VPN和NAT

虚拟专用网 (VPN)

定义: VPN(Virtual Private Network,虚拟专用网)是一种通过公用网络(如互联网)建立专用网络连接的方法。它通过加密技术保证数据的安全传输,使用户能够在不安全的公共网络上建立安全的通信隧道。

作用

  1. 安全性:VPN通过加密数据传输,防止数据在公共网络上传输时被截获或篡改。
  2. 隐私保护:VPN可以隐藏用户的真实IP地址,防止第三方跟踪用户的在线活动。
  3. 远程访问:VPN允许远程用户安全地连接到公司内网,访问内部资源和服务。
  4. 地理位置伪装:用户可以通过VPN连接到其他国家的服务器,绕过地域限制访问特定网站和服务。

应用场景包括:公司员工在外出差时,通过VPN访问公司内部网络资源。用户使用VPN隐藏真实IP地址,保护上网隐私。还有就是科学上网,这块就不方便在继续说了。

网络地址转换 (NAT)

定义: NAT(Network Address Translation,网络地址转换)是一种将内部私有网络地址转换为公共网络地址的技术。它通常在路由器或防火墙上实现,用于在局域网(LAN)和广域网(WAN)之间传输数据。

作用

  1. IP地址节省:NAT允许多个设备共享一个公共IP地址,从而节省了IP地址资源。
  2. 网络安全:NAT隐藏了内部网络结构,使外部无法直接访问内部设备,增加了网络安全性。
  3. 方便网络管理:通过NAT,可以更灵活地管理内部网络的IP地址分配和变更,而无需影响外部网

应用场景包括:家庭或公司网络中,路由器使用NAT将内部设备(如电脑、手机)通过一个公共IP地址连接到互联网。企业网络通过NAT隐藏内部服务器和设备的真实IP地址,保护网络安全。

▐ 共同作用与差异

  • 共同作用

    • 都涉及IP地址的转换或隐藏,增强网络的安全性和隐私性。
    • 都在网络通信过程中起到中介作用,确保内部网络设备能够与外部网络进行通信。
  • 主要差异

    • VPN主要用于在公用网络上创建安全的通信通道,保护数据传输安全和隐私。
    • NAT主要用于IP地址转换和管理,节省IP地址资源和保护内部网络安全。



 本次的分享就到此为止了,希望我的分享能给您带来帮助,创作不易也欢迎大家三连支持,你们的点赞就是博主更新最大的动力!如有不同意见,欢迎评论区积极讨论交流,让我们一起学习进步!有相关问题也可以私信博主,评论区和私信都会认真查看的,我们下次再见

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/678387.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用新的 NVIDIA Isaac Foundation 模型和工作流程创建、设计和部署机器人应用程序

使用新的 NVIDIA Isaac Foundation 模型和工作流程创建、设计和部署机器人应用程序 机器人技术的应用正在智能制造设施、商业厨房、医院、仓库物流和农业领域等各种环境中迅速扩展。该行业正在转向智能自动化,这需要增强机器人功能,以执行感知、绘图、导…

【人工智能】第四部分:ChatGPT的技术实现

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第35课-3D互动教材

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第35课-3D互动教材 使用dtns.network德塔世界(开源的智体世界引擎),策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎&am…

关于科技的总结与思考

文章目录 互联网时代有趣的数字数据驱动大数据的两个特性数据保护互联网免费模式的再探讨平台互联网的意义人工智能伦理的思考语言理性人梅特卡夫定律冲浪的神奇之处AR的恐怖之处叙词表、受控词表和大众分类法六度/十九度的解读知识图谱是真正的仿生智能幂次法则和优先连接现代…

怎么把图片压缩小一点?让你的图片秒变小清新!

怎么把图片压缩小一点?在数字化时代,图片已经成为我们生活中不可或缺的一部分。无论是社交媒体的分享,还是工作文档的编辑,图片都扮演着重要的角色。然而,随着图片数量的增加,存储空间的问题也日益凸显。幸…

AI烟火识别算法在消防安全与火灾预警系统中的应用与价值

在信息化和智能化的今天,烟火识别算法作为一种重要的技术工具,在火灾预防和处理中发挥着关键作用。其工作原理主要基于深度学习和图像处理技术,能够实时分析监控画面,准确检测出图像中的烟火,并发出预警。 一、烟火识…

优思学院|为什么精益生产总是搞不成功?CLMP

先说一个故事 有一位老板希望模仿乔布斯,怎么模仿呢? 他穿起黑色高领毛衣,李维斯蓝色牛仔裤和New Balance运动鞋。 不过,企业之后也没有和苹果一样好,老板们觉得很奇怪啊,是不是哪里有问题,乔…

vscode专区

1.展示多行的文件导航标签,而非只有1行 1.1打开设置 1.2搜索该设置"workbench.editor.wrap.tabs",并勾选 1.3效果对比

MySQL(四) - SQL优化

一、SQL执行流程 MySQL是客户端-服务器的模式。一条SQL的执行流程如下: 在执行过程中,主要有三类角色:客户端、服务器、存储引擎。 大致可以分为三层: 第一层:客户端连接到服务器,构造SQL并发送给服务器…

vue3 实现自定义指令封装 --- 通俗易懂

1、局部自定义指令 1.1 在<script setup>定义组件内的指令&#xff0c;任何以v开头的驼峰式命名的变量都可以被用作一个自定义指令 <template><div><h3>使用自定义指令</h3><div>########################## start 局部自定义指令</d…

MFC实现子控件focus焦点上下移动父控件ListView和Gridview也跟着向上下移动

项目中要实现mfc功能&#xff0c;然后子控件焦点下移&#xff0c;LIstView和Gridview父控件不会下移&#xff0c;所以就有这个文章。废话不多说直接上代码。 MFCGridView.java import android.content.Context; import android.util.AttributeSet; import android.view.View;…

TiKV学习5:TiDB SQL执行流程

目录 1. DML语句读流程概要 2. DML语句写流程概要 3. DDL 流程概要 4. SQL的Parse和Compile 5. 读取的执行 6. 写入的执行 7. DDL的执行 8. 小结 1. DML语句读流程概要 TiDB Server接收sql并处理&#xff0c;TiKV负责持久化数据&#xff0c;PD提供TSO和Region的数据字典…

error /var/lib/jenkins/workspace/*/node_modules/node-sass: Command failed.

原因&#xff1a;node-sass版本不一致 版本图&#xff1a; 解决方案&#xff1a; 进入到jenkins项目目录下&#xff0c;修改package.json文件 将7.0.1改成6.0.1版本

《对马岛之魂:导演剪辑版》新鲜出炉,AOC电竞显示器与你并肩作战!

超越PS版本的画面表现&#xff0c;AOC U27G3XM助你轻松拉满游戏体验&#xff01; 近日&#xff0c;《对马岛之魂&#xff1a;导演剪辑版》正式登陆PC平台。这款备受期待的作品不仅在战斗机制和故事内容上进行了创新&#xff0c;还引入了更高级的图形选项和更丰富的自定义设置。…

性能测试(二)—— linux服务器监控性能测试

测试目的&#xff1a;发现服务器的性能瓶颈。配置的不同能够承载的最大任务数不同&#xff0c;能够承载的压力也不同 服务器性能测试范围 1.1 测试范围 CPU 内存 硬盘 网络 版本&#xff08;软件、应用版本&#xff09; 1.2 测试与生产配置不相同 多次性能压测预估 …

力扣----轮转数组

题目链接&#xff1a;189. 轮转数组 - 力扣&#xff08;LeetCode&#xff09; 思路一 我们可以在进行每次轮转的时候&#xff0c;先将数组的最后一个数据的值存储起来&#xff0c;接着将数组中前n-1个数据依次向后移&#xff0c;最后将存储起来的值赋给数组中的第一个数据。 …

运动模糊技术在AI绘画中的创新应用

引言&#xff1a; 随着人工智能技术的飞速发展&#xff0c;AI绘画已经成为艺术创作领域的一颗新星。它不仅改变了艺术家的创作方式&#xff0c;还为普通用户提供了前所未有的艺术体验。在众多AI绘画技术中&#xff0c;运动模糊技术以其独特的视觉效果和广泛的应用前景受到了广泛…

【排序】插入排序,希尔排序

前面我们讲述了冒泡排序和选择排序&#xff0c;我们本章讲的排序方法是插入排序&#xff0c;插入排序是希尔排序实现的基础函数&#xff0c;大家一定要好好理解插入排序的逻辑&#xff0c;这样才能在后面学习希尔排序的时候&#xff0c;更容易的去理解&#xff0c;我们直接开始…

3D分割新范式!浙大开源Reasoning3D:通过大视觉语言模型搞定3D部件分割

文章链接&#xff1a;https://arxiv.org/pdf/2405.19326 项目链接&#xff1a;http://tianrun-chen.github.io/Reason3D/ 今天和大家分享的是一项新任务&#xff1a;Zero-Shot 3D 推理分割&#xff0c;用于对象的部件搜索和定位。这是一种超越了以往类别特定的3D语义分割、3D…

韩语“对不起”怎么说?柯桥留学韩语培训

一、引言 在学习韩语的过程中&#xff0c;掌握如何表达歉意是非常重要的一部分。无论是日常交流还是正式场合&#xff0c;礼貌地说“对不起”能展现出你的修养和对他人的尊重。本文将详细介绍韩语中表示“对不起”的几种常用表达方式及其使用情境。 二、主体内容 1、详细解释 标…