计网期末复习指南(四):网络层(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地址资源和保护内部网络安全。



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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学生在课堂上可以用小风扇吗?五款学生可用迷你手持小风扇分享!

随着夏季的来临,高温酷暑成为了学生日常学习生活中的一大挑战。在闷热的教室里,人多风扇少,闷热的环境很容易就会让人学不下去。因此学生在课堂上最好是使用手持小风扇,但选择的手持小风扇噪音一定要小,不然很容易就会…

HarmonyOS(29)onMeasureSize和PlaceChildren (View的测量和布局)

onMeasureSize和PlaceChildren onMeasureSize和PlaceChildren 说明官方使用示例参考资料 onMeasureSize和PlaceChildren 说明 在Android开发中View的测量onMeasure和布局onLayout是自定义组件必备的两个方法,HarmonyOS对自定义布局也提供了两个方法: on…

【VSCode实战】转换大小写快捷键

今天在VSCode Insiders上编码,突然想将某常量转换为大写。按照virtual studio的习惯,我Ctrl Shift U没有效果,Ctrl U也没效果。网上搜了搜,原来VSCode Insiders没有这个默认功能。 而VSCode Insiders这么强大怎么可能没有大小…

ELK 使用 metricbeat监控数据

IP功能版本192.168.140.153elk-18.13.4192.168.140.153metricbeat8.13.4192.168.140.156elk-28.13.4192.168.140.156metricbeat8.13.4192.168.140.159logstash8.13.4192.168.140.159kibana8.13.4 一、安装ELK 参考文档: https://download.csdn.net/download/weix…

TG-5510CA温补晶振用于GPS应用

随着现代社会对精准定位和导航需求的不断增加,GPS(全球定位系统)已成为我们日常生活和各行各业中不可或缺的一部分。无论是在智能手机、汽车导航、无人机飞行控制,还是在精密的科学研究和军事应用中,GPS系统都扮演着至…

Android电量优化,让你的手机续航更持久

节能减排,从我做起。一款Android应用如果非常耗电,是一定会被主人嫌弃的。自从Android手机的主人用了你开发的app,一天下来,也没干啥事,电就没了。那么他就会想尽办法找出耗电量杀手,当他找出后&#xff0c…

PPT设置为本框的默认格式以及固定文本框

调整文本框固定位置 双击文本框之后勾选如下三个位置 设置文本框为默认 在调整好文本框的基本性质后,设置为默认即可

python-验证子串

题目描述 输入两个字符串,验证其中一个串是否为另一个串的子串。 输入两个字符串, 每个字符串占一行,长度不超过200且不含空格。 输出 若第一个串s1是第二个串s2的子串,则输出(s1) is substring of(s2)否则,若第二个串…

pgvector v0.7.0 的新增功能

现实世界的嵌入数据集通常包含隐藏在向量空间中的冗余。例如,当向量聚集在多维空间中的某些中心点周围时,它会揭示一个可利用的结构。通过减少这种冗余,我们可以在对精度影响最小的情况下节省内存和性能。自 0.7.0 版以来,pgvecto…

Linux环境下安装MySQL详细教程(手把手附图安装!!!)

目录 一、前言 二、安装前的环境检查 三、下载官方的 MySQL 安装包 四、开始安装 MySQL 五、尝试初次启动 MySQL 六、给MySQL 做一些简单的小配置 七、共勉 一、前言 本次专题将带大家进入一个新的专题 ---- MySQL。作为本次专题的第一篇博客,肯定是带大家一起…

Jetson Orin Nano v6.0 + tensorflow2.15.0+nv24.05 GPU版本安装

Jetson Orin Nano v6.0 tensorflow2.15.0nv24.05 GPU版本安装 1. 源由2. 步骤2.1 Step1:系统安装2.2 Step2: nvidia-jetpack安装2.3 Step3:jtop安装2.4 Step4:h5py安装2.5 Step5:tensorflow安装2.6 Step6:jupyterlab安…

Golang——RPC

一. RPC简介 远程过程调用(Remote Procedure Call,RPC)是一个计算机通信协议。该协议运行运行于一台计算机的程序调用另外一台计算机的子程序,而程序员无需额外的为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称…

Thesios: Synthesizing Accurate Counterfactual I/O Traces from I/O Samples——论文泛读

ASPLOS 2024 Paper 论文阅读笔记整理 问题 在设计大规模分布式存储系统时,I/O活动的建模至关重要。具有代表性的/O跟踪,可以对现有硬件、配置和策略进行详细的性能评估。假设跟踪进一步支持分析假设情况,例如部署新的存储硬件、更改配置和修…

2.4 OpenCV随手简记(五)

一、图像翻转 第一个图像翻转,这个可是制作表情包的利器。 图像翻转在 OpenCV 中调用函数 flip() 实现,原函数如下: flip(src, flipCode, dstNone) src:原始图像。 flipCode:翻转方向, 如果 flipCode 为…

[Redis]List类型

列表类型来存储多个有序的字符串,a、b、c、d、e 五个元素从左到右组成了一个有序的列表,列表中的每个字符串称为元素,一个列表最多可以存储个元素。在 Redis 中,可以对列表两端插入(push)和弹出&#xff08…

【动手学深度学习】多层感知机之权重衰减研究详情

目录 🌊1. 研究目的 🌊2. 研究准备 🌊3. 研究内容 🌍3.1 多层感知机权重衰减 🌍3.2 基础练习 🌊4. 研究体会 🌊1. 研究目的 防止过拟合:权重衰减和暂退法都是用来控制模型的复…

北大、腾讯强推!DynamiCrafter WebUI 在线教程,无需逐帧记录即可图片变视频

从史前时期开始,人类的祖先就曾以石为笔,在洞穴的石壁描绘出一系列野牛奔跑的分析图,壁画上的动物被叠加了多条腿,用来表现连贯的动作,这或许便是动态视频的最早雏形。 被焚之城的山羊陶碗 时光流转,最初&…

sqli-labs 靶场闯关基础准备、学习步骤、SQL注入类型,常用基本函数、获取数据库元数据

Sqli-labs的主要作用是帮助用户学习如何识别和利用不同类型的SQL注入漏洞,并了解如何修复和防范这些漏洞。 它提供了多个不同的漏洞场景,每个场景都代表了一个特定类型的SQL注入漏洞。 用户可以通过攻击这些场景来学习和实践漏洞利用技术,以及…

【数据结构】二叉树-堆

目录 一.树概念及性质 二.二叉树的概念与实现 三.堆的概念和结构 四.堆的实现 1.向下调整算法 2. 堆的创建 3.向上调整算法 4.堆的删除 五.堆排序 六.堆-源码 一.树概念及性质 树是一种非线性的数据结构,它是由数个节点组成的具有层次关系的集合。之所以叫…

干货 | SDR RFSoC技术框图大放送(附资源)

软件无线电(SDR) 本文参考《Software Defined Radio with Zynq UltraScale RFSoc》,全文共744页。需要的可以给公众号 迪普微科技 发送“SDR”。