【Linux】网络层——IP协议

在这里插入图片描述

欢迎来到Cefler的博客😁
🕌博客主页:折纸花满衣
🏠个人专栏:Linux

在这里插入图片描述


目录

  • 👉🏻IP协议基本概念
  • 👉🏻IP的协议头格式
  • 👉🏻IP协议的网段划分
    • 五类IP地址
    • 子网掩码
      • 子网掩码分类
  • 👉🏻IP地址的数量限制
  • 👉🏻私有IP地址和公网IP地址
    • WAN口IP和LAN口IP
    • 家庭路由器连接到广域网
  • 👉🏻路由
    • 路由表
    • 网络接口

👉🏻IP协议基本概念

🍅基本概念
IP(Internet Protocol)协议是互联网上最基本的网络层协议之一,用于在网络上进行数据包的传输。下面是IP协议的基本概念:

  1. 地址唯一性: IP协议用于给互联网上的每个设备分配一个唯一的标识,即IP地址。这个地址由32位(IPv4)或128位(IPv6)的二进制数字组成,用于标识网络上的主机或路由器。

  2. 数据包路由: IP协议负责将数据分割成小的数据包并在网络上进行路由,使其从源主机传输到目标主机。这个过程中,数据包可能经过多个路由器,并且可能经过不同的网络。

  3. 无连接性: IP协议是一种无连接的协议,即它不维护关于通信的状态信息。每个数据包都是独立的,它们可以按照任意顺序到达目标主机,因此IP协议也被称为“不可靠”协议。

  4. 最佳路径选择: IP协议通过路由表选择传输数据包的最佳路径。路由表中包含了目的地网络的信息,以及到达目的地网络的下一跳路由器的信息。通过这些信息,IP协议能够选择最优的路径来传输数据包。

  5. 分组和重组: IP协议负责将数据分割成称为IP数据包或IP分组的较小单位进行传输,这样可以更有效地利用网络资源。在接收端,这些分组被重新组装成完整的数据。

  6. 跨网络通信: IP协议使得不同网络之间的设备可以相互通信,实现了全球范围内的互联网连接。它通过定义统一的数据格式和传输规则,使得各种不同类型的网络可以互相通信。

总的来说,IP协议是互联网上最基础的协议之一,它负责数据包的路由和传输,实现了全球范围内的设备互联。

主机: 配有IP地址, 但是不进行路由控制的设备; 路由器: 即配有IP地址, 又能进行路由控制; 节点: 主机和路由器的统称;

👉🏻IP的协议头格式

IP协议头部包含了在数据包传输过程中必要的信息,使得网络设备能够正确地路由和传输数据。以下是IPv4协议头部的基本格式:

在这里插入图片描述

下面是各字段的解释:

  • 版本(Version): 4位,指定IP协议的版本号,IPv4的版本号为4。

  • 头部长度(Header Length): 4位,指示IP头部的长度,以32位字为单位。由于IP头部长度最长为60字节,因此该字段的取值范围为0-15,对应的实际头部长度为0-60字节。

  • 服务类型(Type of Service): 8位,用于指定数据包的服务质量要求,如优先级延迟吞吐量等。

  • 总长度(Total Length): 16位,指示整个IP数据包的长度,包括IP头部和数据部分。最大值为65535字节。

  • 标识(Identification): 16位,用于唯一标识一个数据包。在分片传输时,它用于标识属于同一数据包的各个分片

  • 标志位(Flags): 3位,包括:

    • 第1位:Reserved,保留位,必须设置为0
    • 第2位:Don’t Fragment(DF),禁止分片标志。如果设置为1,表示不允许对数据包进行分片。
    • 第3位:More Fragments(MF),更多分片标志。如果设置为1,表示后续还有分片。
  • 片偏移(Fragment Offset): 13位,指示当前分片在原始数据包中的偏移量,以8字节为单位。

除了最后一个报文之外, 其他报文的长度必须是8的整数倍(否则报文就不连续了)

  • 生存时间(Time to Live,TTL): 8位,表示数据包在网络上能够存活的最长时间(跳数)每经过一个路由器,该字段值减1,直到减为0时被丢弃。

  • 协议(Protocol): 8位,指示数据包中携带的上层协议类型,如TCP、UDP、ICMP等。

  • 首部校验和(Header Checksum): 16位,用于检验IP头部的完整性,保证数据包在传输过程中没有被篡改。

  • 源 IP 地址(Source IP Address): 32位,指示数据包的源主机的IP地址。

  • 目标 IP 地址(Destination IP Address): 32位,指示数据包的目标主机的IP地址。

IPv4的协议头部包含了这些字段,它们共同描述了数据包的基本信息,使得网络设备能够正确地路由和传输数据。

👉🏻IP协议的网段划分

🌈概念

IP协议的网段划分是网络管理中的一个重要概念,主要目的是将大的IP地址空间划分为较小的子网,以实现更有效的IP地址管理和资源分配。这不仅可以提高网络性能,还能实现网络隔离和提高网络安全性。

首先,我们需要理解IP地址的组成。IP地址由网络标识和主机标识两部分组成。网络标识用于标识所属网络,而主机标识则用于标识具体设备。在计算机中,IP地址以二进制形式表示。

接下来,让我们探讨网段划分的方法。

  1. 固定子网划分
    • 均等划分:将IP地址空间均等地划分为多个子网,每个子网具有相同数量的主机地址。
    • 不均等划分:根据网络的实际需求,将IP地址空间不均等地划分为多个子网,每个子网具有不同数量的主机地址。
    • CIDR(无类别域间路由):通过改变网络地址前缀的长度来实现更精细的地址划分和路由控制。
  2. 动态划分方法
    • 这种方法采用动态网络划分技术,如VLAN(虚拟局域网)技术。VLAN技术可以将单一的物理局域网划分为多个逻辑上独立的虚拟局域网,每个VLAN可以有不同的业务和安全策略。这种方法灵活性高,可以根据实际需求动态调整子网划分,但可能增加网络管理的复杂性。

在网段划分过程中,子网掩码是一个重要的工具。子网掩码和IP地址的32位对应,如果某些位数是网络地址,子网掩码就是1,否则就是0。通过子网掩码和IP地址的逻辑“与”运算,可以得到IP的网络地址剩下的部分就是主机的地址。这样,路由器就可以判断任意的IP地址是否在同一个网段内,从而进行正确的路由转发。


IP地址分为两个部分, 网络号和主机号

  • 网络号: 保证相互连接的两个网段具有不同的标识;
  • 主机号: 同一网段内, 主机之间具有相同的网络号, 但是必须有不同的主机号;

在这里插入图片描述
不同的子网其实就是把网络号相同的主机放到一起.
如果在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复。

在网段划分中,网络号用于标识不同的子网,而主机号则用于标识子网内的不同设备,这种划分方式可以帮助我们更有效地管理和分配IP地址资源,提高网络性能和安全性。

子网是局域网吗? 🤨

子网并不等同于局域网(LAN)。子网和局域网是两个不同的概念,但它们之间有一定的关联。
子网(Subnet)是指一个IP地址空间中连续的一部分地址的集合,通常用于将一个大的IP网络划分为若干个小网络,以便于网络管理和提高网络性能。子网通过子网掩码来定义,子网掩码是一个32位的地址掩码,用于将IP地址划分为网络地址和主机地址两部分(即网络号和主机号)。子网内的设备可以相互通信,但需要通过路由器或网关才能与其他子网或互联网进行通信。
局域网(Local Area Network,LAN)是指在一个局部地理范围内(如一个办公室、一栋楼或一个校园),将各种计算机、外部设备和数据库等互相联接起来组成的计算机通信网。局域网可以实现文件管理、应用软件共享、打印机共享、电子邮件和传真通信服务等功能。局域网的范围通常较小,可以通过交换机、集线器等网络设备将设备连接在一起,形成一个独立的网络区域。
虽然子网和局域网都是网络技术的概念,但它们的关注点和应用场景不同。子网更关注于IP地址的划分和管理,而局域网更关注于网络设备之间的连接和通信。在实际应用中,一个局域网内可能包含多个子网,而一个子网也可能跨越多个局域网。因此,子网和局域网是两个不同的概念,但它们在网络中都有重要的作用。

五类IP地址

在这里插入图片描述
IP地址的划分是根据其网络号和主机号的长度来决定的,通常将所有IP地址分为五类:A类、B类、C类、D类和E类。以下是这五类IP地址的详细划分:

  1. A类IP地址

    • 网络号占用第1个字节,即前8位。
    • 第一个字节的第一位固定为0(二进制表示:0xxxxxxx)。
    • 地址范围:从1.0.0.1到126.255.255.254。
    • 127.0.0.1是一个特殊的IP地址,代表本机地址,用于本地机器的测试。
    • A类地址主要为大型网络而设计,每个A类网络可以支持最多16,777,214个主机。
  2. B类IP地址

    • 网络号占用第1个和第2个字节,即前16位。
    • 第一个字节的前两位固定为10(二进制表示:10xxxxxx)。
    • 地址范围:从128.0.0.1到191.255.255.254。
    • B类地址适合中等规模的网络,每个B类网络可以支持最多65,534个主机。
  3. C类IP地址

    • 网络号占用第1个、第2个和第3个字节,即前24位。
    • 第一个字节的前三位固定为110(二进制表示:110xxxxx)。
    • 地址范围:从192.0.0.1到223.255.255.254。
    • C类地址适用于小型网络,每个C类网络可以支持最多254个主机(减去两个保留地址:网络地址和广播地址)。
  4. D类IP地址

    • 不分网络号和主机号,用于多播(Multicast)地址。
    • 第一个字节的前四位固定为1110(二进制表示:1110xxxx)。
    • 地址范围:从224.0.0.0到239.255.255.255。
    • 多播地址允许一台或多台主机发送数据包到一组目的主机,而不是一个单独的目的地。
  5. E类IP地址

    • 不分网络号和主机号,目前留作将来使用。
    • 第一个字节的前五位固定为11110(二进制表示:11110xxx)。
    • 地址范围:从240.0.0.0到255.255.255.255。
    • E类地址在IPv4中未使用,并且通常被视为保留地址。

☂️IP地址浪费
五类IP地址可能被浪费的情况主要有以下几种:

  1. 地址分配不当:在分配IP地址时,如果没有合理规划,可能会导致某些地址块被分配给一个较小的网络,而实际上这个网络并不需要这么多地址,从而造成地址的浪费。
  2. 逻辑地址分配过多:在某些情况下,由于主机数量过多或者网络规划不当,可能会分配过多的逻辑地址(即IP地址),而实际上并没有足够的物理设备来使用这些地址,导致地址的浪费。
  3. 缺乏有效的网络规划政策:如果缺乏有效的网络规划政策,可能会导致IP地址的分配混乱,无法充分利用已分配的地址,从而造成浪费。
  4. 非法浪费:在某些网络环境中,可能存在非法使用和浪费IP地址的行为,例如私自设置静态IP地址、不按照网络规划使用IP地址等,这些行为也会导致IP地址的浪费。

为了解决这些问题,子网掩码的概念被引入(这个我们后续讲)。

子网掩码

子网掩码(Subnet Mask)又被称为网络掩码、地址掩码或子网络遮罩,它是一个32位地址,用于与IP地址结合使用,以屏蔽IP地址的一部分,从而区分网络标识和主机标识。

子网掩码只有一个作用,就是将某个IP地址划分成网络地址主机地址两部分

🍑 子网掩码获取网络地址和主机地址

  1. 获取网络地址
    将IP地址和子网掩码都转换成二进制形式,然后使用逻辑“与”(AND)运算。AND运算的规则是两个位都为1时结果才为1,否则为0。这样,IP地址中网络地址的部分就会保留下来,而主机地址的部分会变为0。这个结果就是网络地址。

  2. 获取主机地址
    为了获取主机地址,我们不需要再次与子网掩码进行AND运算。相反,我们可以使用以下方法:

    a. 将子网掩码取反(即0变为1,1变为0),得到一个新的二进制数,我们称之为“主机部分掩码”或“反子网掩码”。

    b. 将这个“主机部分掩码”与原始的IP地址进行逻辑“与”(AND)运算。这次,网络地址的部分会变为0,而主机地址的部分会保留下来。然后,我们可以将这个结果转换回十进制,得到的就是主机地址。

    但需要注意的是,在实际操作中,我们通常不会显式地去计算主机地址,因为主机地址就是IP地址中除了网络地址之外的部分。当我们知道网络地址和子网掩码后,就可以通过简单的减法或位操作来推断出主机地址的范围。


在子网掩码中,连续的1代表网络位,连续的0代表主机位,通过0的个数可以计算出子网的容量(子网中主机的IP地址范围)。
例如:

255.255.255.0
11111111 11111111 11111111 00000000 //转化为二进制

这里子网掩码的二进制由24个1和8个0组成,8个0表示该子网掩码划分出的子网容量为256(2的8次方)
也就是说192.168.1.0-255都在同一个子网中,这256个地址中可用地址只有254个,因为规定每个子网的第一个IP地址为网段地址最后一个IP地址为广播地址,都不可用。
举例说明:对于网段192.168.1.0,如果子网掩码设置255.255.255.0,192.168.1.1-192.168.1.254为可用IP地址,设置这个范围内的IP地址,计算机之间能正常联网。

🥕 划分子网举例:
假设一个C类IP地址范围为192.168.1.0到192.168.1.255,子网掩码为255.255.255.0。在这个情况下,整个网络只能有一个子网,包含254个主机地址(减去网络地址和广播地址)。但是,如果我们需要将这个网络划分为两个更小的子网,我们可以使用一个更长的子网掩码,如255.255.255.128。这样,前25位是网络号,后7位是主机号,第一个子网的范围将是192.168.1.0到192.168.1.127,第二个子网的范围将是192.168.1.128到192.168.1.255。


☂️总结子网的出现对于解决IP地址浪费问题
将IP地址划分为子网,确实类似于区域自治的概念,在这个比喻中,我们可以将IP地址空间看作是一个国家,而子网则相当于这个国家内的各个自治区或行政区。

每个子网都有其独特的网络规划政策,类似于自治区或行政区的自治政策。这些政策决定了子网内的IP地址如何分配、管理和使用,以及如何与其他子网或外部网络通信。

通过划分子网,我们可以更加精细地控制和管理IP地址资源,实现更加灵活和高效的网络规划。同时,子网划分也有助于提高网络的安全性和可管理性,因为不同的子网可以采用不同的安全策略和访问控制规则。

📢注意

子网掩码允许管理员将一个IP地址范围划分为多个子网,每个子网可以有不同数量的主机。这种划分方式并不直接改变IP地址的类别(A、B、C),而是基于原始的IP地址类别和子网掩码来确定每个子网的网络地址和主机地址范围

子网掩码分类

我们上面已经知道,要判断两个主机是否在同一个子网内,可以通过讲IP地址和子网掩码按位与运算得到网络地址,进行对比,即可判断。
但是,每次这样运算未免太麻烦,所以,我们对子网掩码进行了分类,可以方便我们快速判断两个主机是否在同一个子网内。

子网掩码主要分为两类:缺省(自动生成)子网掩码和自定义子网掩码。

  1. 缺省子网掩码

    • 也称为默认子网掩码,是根据IP地址的类别自动生成的。对于A类、B类和C类IP地址,它们的缺省子网掩码分别是255.0.0.0255.255.0.0255.255.255.0
    • 在使用缺省子网掩码的情况下,要判断两个主机是否在同一子网内,可以通过比较它们的网络地址是否相同来实现。由于缺省子网掩码已经固定了网络部分和主机部分的位数,因此可以直接通过比较IP地址中网络部分的位数来判断。
    • 例如,对于IP地址192.168.1.1和192.168.2.2,它们都属于C类IP地址,使用缺省子网掩码255.255.255.0。由于这两个IP地址的网络部分(前三个字节)不同,因此它们不在同一子网内。
  2. 自定义子网掩码(选学了解)

    • 当需要将一个网络划分为多个子网时,就需要使用自定义子网掩码。自定义子网掩码允许管理员根据实际需求调整网络部分和主机部分的位数。
    • 在使用自定义子网掩码的情况下,判断两个主机是否在同一子网内的方法稍微复杂一些。由于子网掩码已经改变了网络部分和主机部分的位数,因此不能简单地通过比较IP地址中网络部分的位数来判断。但是,仍然可以通过观察子网掩码和IP地址的特定部分来判断。
    • 例如,假设一个网络的IP地址范围为192.168.1.0/26,其中“/26”表示子网掩码的前26位为1,后6位为0,即子网掩码为255.255.255.192。在这个网络中,每个子网可以容纳2^6-2=62个主机(减去网络地址和广播地址)。因此,IP地址192.168.1.1和192.168.1.63都属于同一个子网(即第一个子网),因为它们的子网部分(前26位)相同。而IP地址192.168.1.64和192.168.1.127则属于下一个子网(即第二个子网)。

请注意,虽然可以通过观察子网掩码和IP地址的特定部分来判断两个主机是否在同一子网内,但这种方法可能不如直接进行按位与运算来得准确和可靠。在实际应用中,建议还是使用按位与运算来计算网络地址,并据此判断两个主机是否在同一子网内。

👉🏻IP地址的数量限制

IP地址的数量限制主要涉及到IPv4和IPv6两种不同的IP地址版本。

  1. IPv4地址数量限制

IPv4使用32位(4字节)地址,其地址空间总共有4,294,967,296(2^32)个地址。然而,由于一些地址被保留用于特定用途,如专用网络(约1800万个地址)和多播地址(约2.7亿个地址),实际可供互联网路由的地址数量要少于这个总数。在2019年11月26日,全球近43亿个IPv4地址已分配完毕,这导致了IPv4地址枯竭的问题。

不过,IPv4地址的分配并非完全基于单个设备,而是基于网络。例如,一个C类IPv4地址块(如192.168.1.0/24)可以容纳254个主机地址(除去网络地址和广播地址),但整个地址块通常会被分配给一个组织或网络,而不是单独的设备。

  1. IPv6地址数量限制

IPv6是为了解决IPv4地址枯竭问题而设计的,它使用128位地址空间,地址数量是2的128次方,这是一个极其庞大的数字,远远超过了IPv4地址的数量。理论上,IPv6地址的数量足够为地球上的每一粒沙子分配一个地址,因此IPv6地址枯竭的问题在可预见的未来是不太可能出现的。

IPv6的广泛部署需要时间和努力,但它已经成为解决IPv4地址短缺问题的主要途径。随着IPv6技术的不断发展和完善,越来越多的组织和个人开始采用IPv6地址。

总的来说,IPv4地址数量有限且已经接近枯竭,而IPv6则提供了几乎无限的地址空间,可以满足未来互联网的发展需求。

👉🏻私有IP地址和公网IP地址

私有IP地址(也称为私网地址)和公网IP地址(也称为公共地址)是IPv4地址分类中的两种主要类型,它们在互联网中扮演着不同的角色。

  1. 私有IP地址

    • 私有IP地址是专门为组织机构内部使用而设计的,主要用于在局域网(LAN)中进行分配。
    • 私有IP地址在Internet上是无效的,即全球不可达。这意味着私有IP地址不会在互联网上进行路由。
    • 私有IP地址范围包括:
      • 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
    • 组织机构内部可以使用私有IP地址来构建网络,并通过网络地址转换(NAT)等技术将内部私有IP地址转换为公网IP地址,以实现与Internet的通信。
  2. 公网IP地址

    • 公网IP地址是全球唯一的,可以在整个互联网上进行路由和访问。
    • 公网IP地址由InterNIC(Internet Network Information Center,因特网信息中心)负责分配。
    • 这些地址被分配给那些需要在互联网上进行直接访问的组织机构,如企业、学校、政府机构等。
    • 拥有公网IP地址的设备可以直接访问Internet,而无需通过NAT等技术进行地址转换。
    • 公网IP地址在全球范围内是唯一的,因此只要知道一个设备的公网IP地址,就可以通过网络直接访问该设备(除非有防火墙等安全措施阻止访问)。

总的来说,私有IP地址和公网IP地址在IPv4地址体系中各自扮演着重要的角色。私有IP地址用于组织机构内部网络的构建和通信,而公网IP地址则用于设备在互联网上的直接访问和路由。

WAN口IP和LAN口IP

WAN口IP和LAN口IP(子网IP)在功能、用途和网络级别上存在显著的差异。

  1. 功能与用途:
  • WAN口IP是外网的IP,属于公网的IP,主要用于外网的识别。WAN口主要用于连接外部网络,如ADSL、DDN、以太网等各种接入线路。其主要作用是实现家庭或企业局域网与互联网的连接,可以将多台设备连接到互联网,实现共享上网、远程访问等功能。
  • LAN口IP是局域网IP,用于连接家庭内部网络,主要与家庭网络中的交换机、集线器或PC相连。其主要作用是实现家庭或企业局域网内设备的互联,可以将多台设备连接到同一个局域网中,实现设备之间的通信和资源共享。

一个路由器可以配置两个IP地址, 一个是WAN口IP, 一个是LAN口IP(子网IP)

  1. 网络级别:
  • 如果将用户宽带所在城市使用的公网网络比作一级网络,那么WAN接口就相当于是连接公网网络的接口,可以理解为一级网络接口。
  • 而LAN是通过路由器架设的家庭小型局域网,相较于一级公网网络,它可以算作二级网络,LAN接口也就属于二级网络接口。

总的来说,WAN口IP和LAN口IP在路由器中扮演着不同的角色,WAN口IP负责外部网络的连接和识别,而LAN口IP则负责内部网络的连接和通信。在配置路由器时,需要正确设置WAN口和LAN口的IP地址,以确保网络的正常运行。

家庭路由器连接到广域网

家庭路由器连接到运营商路由器,再到连接到广域网的过程,可以大致分为以下几个步骤:

  1. 连接运营商路由器

    • 首先,你需要将运营商提供的入户网线接入到家庭路由器的WAN口上。这个WAN口通常是用来连接外部网络(如运营商提供的宽带)的。
  2. 路由器设置

    • 接着,你需要设置家庭路由器以连接到运营商的网络。这通常涉及到在路由器上配置WAN口的连接方式,如PPPoE拨号、动态IP、静态IP等,具体取决于运营商提供的接入方式。
    • 打开浏览器,输入路由器的管理地址(通常是192.168.1.1或路由器背面标签上的地址),然后输入用户名和密码登录路由器管理界面。
    • 在管理界面中,找到“WAN口设置”或类似的选项,根据运营商提供的接入方式进行相应的配置。如果是PPPoE拨号方式,需要输入运营商提供的用户名和密码;如果是动态IP方式,则通常不需要额外配置;如果是静态IP方式,需要输入运营商提供的IP地址、子网掩码、网关和DNS服务器等信息。
  3. DHCP服务配置

    • 大多数家庭路由器都默认开启了DHCP服务,用于自动分配局域网内的IP地址。你可以检查并确认DHCP服务已经开启,并设置合适的IP地址范围、子网掩码、网关和DNS服务器等信息。
  4. 连接到局域网设备

    • 一旦路由器配置完成并成功连接到运营商网络,你就可以将家庭内的其他设备(如电脑、手机、平板等)连接到路由器的LAN口或使用无线方式连接到路由器的Wi-Fi网络。
  5. 连接到广域网

    • 家庭路由器通过WAN口连接到运营商路由器后,就可以通过运营商的网络访问广域网(即互联网)了。当家庭内的设备通过路由器连接到互联网时,路由器会将设备的请求转发到运营商网络,并接收来自运营商网络的响应,从而实现设备与互联网的通信。

👉🏻路由

路由器路由的过程可以简要描述为:

  1. 接收数据包:路由器接收到来自源设备的数据包。
  2. 解析目标地址:路由器解析数据包中的目标IP地址,并与子网掩码一起计算目标网络地址。
  3. 查找路由表:路由器根据其路由表查找与目标网络地址匹配的最佳路径。
  4. 转发数据包:如果找到匹配项,路由器将数据包转发到下一个路由器或目标设备。如果找不到匹配项,但存在默认路由,则按照默认路由进行转发;否则,会发送一个错误消息给源设备。
  5. 重复过程:数据包在到达目标设备之前,可能会经过多个路由器的路由过程。

这个过程中,路由器会根据网络拓扑、路由算法和策略来选择最佳路径,确保数据包能够高效、准确地到达目标设备。

路由表

路由表的形成和存在位置可以概述如下:
🥚路由表的内容:

  1. 目标网络:这是数据包的目标IP地址所属的网络。路由表通过目标IP地址与子网掩码进行逻辑与运算,确定目标网络。
  2. 下一跳地址:这是数据包应该转发到的下一个路由器的IP地址。当路由器确定目标网络后,它会查看路由表以找到相应的下一跳地址。
  3. 出口接口:在某些情况下,路由表可能还包含数据包应该通过哪个物理接口(如以太网端口或Wi-Fi接口)发送出去的信息。
  4. 路由度量值:这是一个可选的字段,用于表示到达目标网络的路径的“成本”或“距离”。路由算法使用这些度量值来选择最佳路径。常见的路由度量值包括跳数、带宽、延迟、负载等。

🥚 路由表的形成

  1. 静态路由表:这是由系统管理员手动配置并设置的路由表。在系统安装或配置时,根据网络的实际情况,预先设定好固定的路由信息。静态路由表不会随未来网络结构的改变而自动调整。
  2. 动态路由表:这是由路由器根据网络系统的运行情况自动学习和生成的路由表。路由器会根据路由选择协议(如RIP、OSPF等)提供的功能,自动学习和记忆网络运行情况,并在需要时自动计算数据传输的最佳路径。动态路由表会随网络结构的变化而自动调整。

路由表的形成过程通常包括以下几个步骤:

  • 初始化:路由器启动时,可以从外部存储设备读入一个完整的路由表,或者只提供一个空表并通过执行指令来填充。
  • 学习:路由器会与网络中的其他路由器交换路由信息,学习网络的拓扑结构和可达性。
  • 计算:根据学到的路由信息和路由算法,路由器会计算出到达各个目的地的最佳路径,并更新路由表。

🥚 路由表的存在位置

路由表通常存储在路由器或其他网络设备上,如主机、三层交换机、防火墙等可路由网络设备上。在路由器中,路由表是核心组成部分,用于决策数据包的转发路径

总结来说,路由表的形成是路由器根据网络结构和路由协议自动学习和计算的结果,而路由表则存储在路由器等网络设备上,用于指导数据包的转发。


路由表可以使用route命令查看
在这里插入图片描述

网络接口

接口在计算机和网络通信中扮演着重要的角色。简单来说,接口定义了不同系统或组件之间如何相互通信的规则和标准。

在计算机网络中,接口通常指的是网络设备(如路由器、交换机、计算机等)上的物理或逻辑连接点,通过这些连接点,数据包可以从一个系统或组件传输到另一个系统或组件。

不同的接口在发送数据包时可能会有以下不同:

  1. 传输速度:不同的接口可能具有不同的传输速度。例如,以太网接口可以有10 Mbps、100 Mbps、1 Gbps甚至更高的速度。较快的接口可以更快地发送和接收数据包。
  2. 传输介质:不同的接口可能使用不同的传输介质,如电缆、光纤、无线信号等。这些介质在传输距离、带宽、抗干扰性等方面可能存在差异,从而影响数据包的传输。
  3. 协议支持:不同的接口可能支持不同的网络协议。例如,以太网接口支持以太网协议,而Wi-Fi接口支持802.11协议。协议决定了数据包的格式和传输方式,因此不同的接口在发送数据包时可能会使用不同的协议。
  4. 安全性:某些接口可能具有更高的安全性特性,如加密、认证等。这些特性可以保护数据包在传输过程中不被窃取或篡改。

在路由器中,不同的接口(如WAN口和LAN口)通常具有不同的功能和用途。WAN口用于连接外部网络(如运营商网络),而LAN口则用于连接内部网络(如家庭或企业局域网)。当数据包从一个网络传输到另一个网络时,路由器会根据路由表中的信息选择合适的接口进行转发。

总之,接口是计算机和网络通信中的关键组成部分,不同的接口在发送数据包时可能会存在传输速度传输介质协议支持安全性等方面的差异。

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

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

相关文章

大数据技术原理(一):还记得你大数据入门的第一份测试题吗

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊! 喜欢我的博客的话,记得…

真实案例分享,终端pc直接telnet不到出口路由器。

1、背景信息 我终端pc的网卡地址获取的网关是在核心交换机上,在核心交换机上telnet出口路由器可以实现。 所有终端网段都不能telnet出口路由器,客户希望能用最小的影响方式进行解决。 2、现有配置信息 终端的无线和有线分别在两个网段中,…

c++设计模式-->访问者模式

#include <iostream> #include <string> #include <memory> using namespace std;class AbstractMember; // 前向声明// 行为基类 class AbstractAction { public:virtual void maleDoing(AbstractMember* member) 0;virtual void femaleDoing(AbstractMemb…

【Linux】套接字的理解 基于TCP协议的套接字编程(单/多进程 / 线程池|英汉互译 / C++)

文章目录 1. 前言1.1 网络方面的预备知识&#x1f447;1.2 了解TCP协议 2. 关于套接字编程2.1 什么是套接字 Socket2.2 socket 的接口函数2.3 Udp套接字编程的步骤2.4 sockaddr 结构 3. 代码实现3.1 makefile3.2 log.hpp3.3 tcp_server.hpp① 框架② service() 通信服务③ init…

Linux安装刻录软件

在工作场景经常使用光盘和刻录机&#xff0c;在windows系统下有nero软件&#xff0c;在linux下有k3b,但是原始的k3b只能一次刻录&#xff0c;十分浪费光盘&#xff0c;这里我们使用经优麒麟优化过的刻录软件&#xff0c;实现多次追加刻录。 进入优麒麟软件仓库&#xff0c;需要…

CentOS7.9安装mysql-8.0.36踩坑小记

前言&#xff1a; 最近想在一台测试服务器上&#xff0c;安装下最新的MySQL 8.0 版本数据库&#xff0c;想着挺简单的一件事&#xff0c;之前也手搓过 8.0 安装&#xff0c;这不手到擒来&#xff0c;没想到马失前蹄&#xff0c;遇到了一个小坑&#xff0c;耗费了不少时间&…

docker 安装RabbitMQ-web版本

直接拉去web版本 docker pull rabbitmq:management启动命令 设置用户名 admin 密码123456 docker run -dit --name rabbitmq -p 5672:5672 -p 15672:15672 -e RABBITMQ_DEFAULT_USERadmin -e RABBITMQ_DEFAULT_PASS123456 rabbitmq:management访问地址 http://127.0.0.1:…

AIGC实践|探索用AI实现小游戏开发全流程

前言&#xff1a; 在上一篇中&#xff0c;我们已经深入探讨了AI工具在动态绘本创作中的应用&#xff0c;体验了AI在创意内容生成上的魅力。本篇文章将带领大家进入一个全新的探索领域——游戏开发。 本文将详细介绍如何利用AI工具探索实现游戏开发的全过程&#xff0c;从概念…

第三期【数据库主题文档上传激励活动】已开启!快来上传文档赢奖励

2023年9月、11月&#xff0c;墨天轮社区相继举办了第一期与第二期【数据库主题文档上传激励活动】&#xff0c;众多用户积极参与、上传了大量优质的数据库主题干货文档&#xff0c;在记录经验的同时也为其他从业者带来了参考帮助&#xff0c;这正实现了“乐知乐享、共同成长”的…

存储+调优:存储-Cloud

存储调优&#xff1a;存储-Cloud Master Server 配置&#xff1a; IP192.168.1.254 useradd mfs tar zxf mfs-1.6.11.tar.gz.gz cd mfs-1.6.11 ./configure --prefix/usr --sysconfdir/etc --localstatedir/var/lib --with-default-usermfs --with-default-groupmfs --disabl…

CDN管理平台安装说明

CDN管理平台安装说明 系统需求 操作系统&#xff1a;Linux CPU不少于1核心 可用内存不少于1G 可用硬盘空间不小于10G 对于每日千万访问以上的CDN系统推荐配置如下&#xff1a; CPU不少于8核心 可用内存不少于8G 可用硬盘空间不小于200G 准备工作 在安装GoEdge之前&#xff0…

ClickHouse 几年内数据查询及细节

在 ClickHouse 中&#xff0c;查询三年内的时间数据可以使用以下方法&#xff1a; 1. 使用日期函数 可以使用 ClickHouse 支持的日期函数来筛选出三年内的数据。例如&#xff0c;使用 today() 函数获取当天日期&#xff0c;使用 toDate() 函数将日期转换为指定格式&#xff0…

前端更改线上请求地址

由于后台接口更改 , 线上请求地址需从 /api/api/ 改成 /api/ , 需实现的效果如下图 1 在原本的vite.config.js中将前端做的端口转发内容更改 , 更改一行即可 import { defineConfig } from vite import react from vitejs/plugin-react import path from path import * as fs …

520主题趣味小游戏玩法线上互动的作用是什么

行业商家借势520气氛&#xff0c;往往能低成本达到预期效果&#xff0c;包括但不限于品牌传播、渠道引流涨粉、用户促活引导等&#xff0c;除了前面推荐的互动玩法外&#xff0c;在【雨科】平台的这几款520趣味小游戏同样值得关注。 1、爱你不止520 这是一款九宫格抽奖活动&am…

浅谈后端整合Springboot框架后操作基础配置

boot基础配置 现在不访问端口8080 可以吗 我们在默认启动的时候访问的是端口号8080 基于属性配置的 现在boot整合导致Tomcat服务器的配置文件没了 我们怎么去修改Tomcat服务器的配置信息呢 配置文件中的配置信息是很多很多的... 复制工程 保留工程的基础结构 抹掉原始…

文件预览的实现

1.pdf预览 使用iframe 如果是预览本地文件&#xff0c;且是vue项目&#xff0c;pdf文件需要放在public文件夹下。 调试环境&#xff1a;vue、vant、js <template><div style"height: 100%;width: 100%"><iframe :src"pageUrl" style&quo…

vue3 路由跳转 携带参数

实现功能&#xff1a;页面A 跳转到 页面B&#xff0c;携带参数 路由router.ts import { createRouter, createWebHistory } from "vue-router";const routes: RouteRecordRaw[] [{path: "/demo/a",name: "aa",component: () > import(&quo…

CTF网络安全大赛简单web题目:eval

题目来源于&#xff1a;bugku 题目难度&#xff1a;简单 一道简单web的题目 题目源代码&#xff1a; <?phpinclude "flag.php";$a $_REQUEST[hello];eval( "var_dump($a);");show_source(__FILE__); ?> 这个PHP脚本有几个关键部分&#xff0c;但…

rust的版本问题,安装问题,下载问题

rust的版本、安装、下载问题 rust版本问题&#xff0c; 在使用rust的时候&#xff0c;应用rust的包&#xff0c;有时候包的使用和rust版本有关系。 error: failed to run custom build command for pear_codegen v0.1.2 Caused by: process didnt exit successfully: D:\rus…

Spring RequestMappingHandlerMapping详解

文章目录 前言一、AbstractHandlerMethodMapping1.1 mappingRegistry1.2 MappingRegistry 注册表1.3 getHandlerInternal1.4 lookupHandlerMethod 二、RequestMappingInfoHandlerMapping三、RequestMappingHandlerMapping总结 前言 RequestMappingHandlerMapping是Spring MVC中…