AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 772556
Accepted
Nicolas Guérinet
Nicolas Guérinet
Asked: 2016-04-25 02:56:17 +0800 CST2016-04-25 02:56:17 +0800 CST 2016-04-25 02:56:17 +0800 CST

网络路由的顺序在 Linux 中很重要吗?

  • 772

在我的一个网络服务器上,环回路由位于第二位,通常在显示路由时它在其他服务器上位于第三位:

>ip route show

一台 centos 7 服务器上显示的结果:

default via 85.x.x.254 dev enp32s0 
85.x.x.192/26 dev enp32s0  proto kernel  scope link  src 85.x.x.201 
169.254.0.0/16 dev enp32s0  scope link  metric 1002 

另一个 centos 7 服务器的结果:

default via 217.x.x.1 dev em1 
169.254.0.0/16 dev em1  scope link  metric 1002 
217.x.x.0/24 dev em1  proto kernel  scope link  src 217.x.x.216 

它有什么不同吗?它有什么后果吗?谁能解释它为什么会发生?

linux centos networking
  • 2 2 个回答
  • 4810 Views

2 个回答

  • Voted
  1. Best Answer
    shodanshok
    2016-04-25T08:01:56+08:002016-04-25T08:01:56+08:00

    根据定义,输入路线的顺序并不重要。这是由于应该如何应用路由:更具体的路由优先于更通用的路由。

    假设您有两条路线:

    • 第一个用于 172.16.0.0/16 网络,通过网关 192.168.1.1
    • 第二个用于 172.16.32.0/24 网络,通过网关 192.168.1.2

    当使用 172.16.32.1 IP 地址向机器发送数据包时,选择的网关将始终为192.168.1.2,这与在系统中输入路由的顺序无关。

    然而,有一个问题:对于同一个网络,但使用不同网关的两条路由呢?例如,考虑以下设置:

    • 172.16.32.0/24 网络的第一条路由,通过网关 192.168.1.1
    • 172.16.32.0/24 网络的第二条路由,通过网关 192.168.1.2

    该系统将如何工作?如果您希望一条路线优先于另一条相同的路线,则必须为它们分配一个度量值。该指标被视为“成本”值,首选较低的指标。因此,如果您的系统有两条在其他方面相同但具有不同 metric的路由,它会选择具有较低 metric 值的路由。

    但是,如果这两条路由即使在度量值上也相同,会发生什么?在这种(角落)情况下,默认行为是未定义的,并且因系统而异。例如,一个系统可以优先选择第一个输入的路线,而另一个系统可以优先选择最后输入的路线。其他系统可以同时使用这两条路由,以一种称为ECMP(等价多路径路由)的近似循环方式分发数据包。最后,其他系统可以禁止出现两条真正相同的路线,甚至拒绝进入这样的路线。

    • 12
  2. tacos_tacos_tacos
    2016-04-25T03:16:34+08:002016-04-25T03:16:34+08:00

    是的,网络路由的顺序通常独立于操作系统很重要。

    路线是程序。他们说,当您收到一个发往网络 A 的数据包时,请使用路由器 A 来完成。当您为 B 获得一个时,请使用路由器 B。

    假设 A 在 B 内部,例如 A = 192.168.1.0/24 和 B = 192.168.0.0/22。然后,如果我们颠倒正在应用的路由的顺序,A 将不起作用,因为所有 A 都在 B 内部。在另一个 ahdn 中,int 这个顺序,即使 B 是第二个,路由仍然影响 B,因为它的 75%主机不在 A 中。

    在此上下文中路由应用程序的排序(静态路由)是通过静态度量完成的。最小的指标(最便宜的路线)先行。

    • -3

相关问题

  • 更改 PHP 的默认配置设置?

  • 有什么软件可以模拟局域网?

  • 保护新的 Ubuntu 服务器 [关闭]

  • 带宽利用工具?[关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve