目录

Linux 网络设备

Linux 网络设备 - TUN/TAP

Linux 网络设备 - Bridge & Veth Pair

Linux 网络设备 - Bridge 详解

网桥实现

VXLAN 原理与实践

  1. 基本原理: OSPF 是一个链路状态路由协议,使用 Dijkstra 算法来计算最短路径。 路由器交换链路状态信息(LSA),每个路由器维护一个链路状态数据库(LSDB),用来构建网络拓扑图。
  2. 工作机制:
  • 邻居发现:路由器通过 Hello 包发现并建立邻居关系。
  • 链路状态广告:路由器将其链路状态信息传播给所有邻居。
  • 拓扑计算:每个路由器基于 LSDB 计算最短路径树,决定到达其他网络的最佳路径。
  1. 环回接口: OSPF 通常使用环回接口的 IP 地址作为 Router ID,因为环回接口在路由器重启或接口故障时不会变化,提供了稳定的标识符。
  1. 基本原理: BGP 是一个路径矢量协议,主要用于自治系统(AS)之间的路由选择。 BGP 维护一个路径向量,包含了到达目的地的所有 AS 路径信息,用来做出路由决策。
  2. 工作机制:
  • 建立会话:通过 TCP 连接建立 BGP 会话,交换路由信息。
  • 交换路由信息:BGP 路由器交换带有路径信息的 UPDATE 消息。
  • 选择最佳路径:根据策略和属性(如 AS 路径长度、优先级等)选择最佳路由,并更新路由表。
  1. 环回接口: 在 BGP 中,环回接口常用于建立与 BGP 邻居的 TCP 连接。由于环回接口不会随物理接口的状态变化而变化,它提供了一个稳定的终结点,确保 BGP 会话的可靠性。

总结 OSPF 使用链路状态广告和 Dijkstra 算法来计算最短路径,环回接口主要用于提供稳定的 Router ID。 BGP 使用路径向量来决定最佳路由,环回接口用于建立可靠的 BGP 会话。

在计算机网络中,lo 是回环接口(Loopback Interface)的名称,通常标识为 lo。这个接口用于在计算机内部进行网络数据的回环测试。回环接口的 IP 地址通常是 127.0.0.1(IPv4)或 ::1(IPv6)。

任何发送到 127.0.0.1 或 ::1 的数据包都会被计算机自身接收,无需经过物理网络接口。这对于测试网络服务或应用非常有用,因为它允许你在本地进行网络通信测试而不需要依赖实际的网络硬件。

  1. 建立路由邻居:
  • 作用:在路由协议中,环回接口常被用作路由邻居的标识。很多路由协议(如 OSPF、BGP)使用环回接口的 IP 地址来建立和维护邻居关系。这是因为环回接口的 IP 地址在主机重启或接口状态改变时保持不变,因此更稳定。
  • 示例:例如,在 OSPF 协议中,使用环回接口作为 Router ID,因为它在路由器重启时保持不变,从而提高了路由协议的稳定性和可靠性。
  1. 作为 Router-ID:
  • 作用:在某些路由协议中(如 OSPF 和 BGP),Router-ID 是用于唯一标识一个路由器的标识符。环回接口的 IP 地址常被用作 Router-ID,因为它在路由器重启后不会改变,因此更具稳定性。
  • 示例:在 OSPF 中,如果配置了环回接口,OSPF 会优先选择环回接口的 IP 地址作为 Router-ID,这确保了即使路由器的物理接口发生变化,Router-ID 依然保持一致。
  1. 虚拟隧道连接:
  • 作用:在虚拟化和隧道技术中,环回接口可以用作虚拟隧道的端点。例如,在配置 GRE 隧道时,环回接口的 IP 地址可以作为隧道的源或目标地址。
  • 示例:在配置 GRE 隧道时,通常会使用环回接口的 IP 地址作为隧道的端点地址,以确保即使实际物理接口发生变化,虚拟隧道的配置仍然保持不变。
  1. 网络连通性测试:
  • 作用:测试本地主机的网络堆栈功能,而不涉及外部网络。检测到系统是否正确处理网络请求和响应,而不需要实际的物理网络连接。
  • 示例:能够测试ICMP请求与响应等

在两个路由器上配置 OSPF:

# Router 1
interface eth0
 ip address 192.168.1.1 255.255.255.0

interface Loopback0
 ip address 10.0.0.1 255.255.255.255

router ospf 1
 router-id 10.0.0.1
 network 192.168.1.0 0.0.0.255 area 0

# Router 2
interface eth0
 ip address 192.168.1.2 255.255.255.0

interface Loopback0
 ip address 10.0.0.2 255.255.255.255

router ospf 1
 router-id 10.0.0.2
 network 192.168.1.0 0.0.0.255 area 0

在这个例子中,两个路由器的环回接口 IP 地址(10.0.0.1 和 10.0.0.2)被用作 Router ID,而它们的物理接口 IP 地址(192.168.1.1 和 192.168.1.2)在同一个网段内,以确保它们能够建立邻居关系。

由于 lo接口是虚拟接口,则其IP 地址(10.0.0.1 和 10.0.0.2)用作 Router ID不会改变,则无论物理接口的物理属性或IP 地址如何改变,使用lo用作 Router ID,都能维持稳定性与一致性。