【问题标题】:understanding windows routing tables了解windows路由表
【发布时间】:2018-06-08 22:11:30
【问题描述】:

这是我当前的路由表(我重新排列并按接口分组):

     Destination    Network mask          Gateway    Interface        Metric
          0.0.0.0          0.0.0.0    192.168.178.1    192.168.178.28     50

    192.168.178.0    255.255.255.0       On-link    192.168.178.28    306
   192.168.178.28  255.255.255.255       On-link    192.168.178.28    306
  192.168.178.255  255.255.255.255       On-link    192.168.178.28    306
        224.0.0.0        240.0.0.0       On-link    192.168.178.28    306
  255.255.255.255  255.255.255.255       On-link    192.168.178.28    306

        127.0.0.0        255.0.0.0       On-link         127.0.0.1    331 
        127.0.0.1  255.255.255.255       On-link         127.0.0.1    331 
  127.255.255.255  255.255.255.255       On-link         127.0.0.1    331 
        224.0.0.0        240.0.0.0       On-link         127.0.0.1    331 
  255.255.255.255  255.255.255.255       On-link         127.0.0.1    331 

     192.168.56.0    255.255.255.0      On-link      192.168.56.1    281 
     192.168.56.1  255.255.255.255      On-link      192.168.56.1    281 
   192.168.56.255  255.255.255.255      On-link      192.168.56.1    281 
  255.255.255.255  255.255.255.255      On-link      192.168.56.1    281 
        224.0.0.0        240.0.0.0      On-link      192.168.56.1    281 

    192.168.137.0    255.255.255.0      On-link     192.168.137.1    271 
    192.168.137.1  255.255.255.255      On-link     192.168.137.1    271 
  192.168.137.255  255.255.255.255      On-link     192.168.137.1    271 
        224.0.0.0        240.0.0.0      On-link     192.168.137.1    271 
  255.255.255.255  255.255.255.255      On-link     192.168.137.1    271 

a) 第一行是在没有其他路由匹配时应该采用的默认路由,对吗?在这种情况下,数据包应该通过接口192.168.178.28 发送到我的默认网关。

从路由表中我可以看出只有192.168.178.28 的网卡可以访问互联网,这是否正确?如果其他网卡有,那么这些网卡的默认网关也必须有一个条目,对吧?

b) 行

192.168.178.0    255.255.255.0       On-link    192.168.178.28    306

意味着任何发往192.168.178 网络中主机的数据包都应该通过192.168.178.28 接口(我的无线网卡)离开,对吗?

c) 但是这个条目是什么意思?

   192.168.178.28  255.255.255.255       On-link    192.168.178.28    306

发往我电脑的数据包应该通过我的无线网卡发送吗?我真的不明白这个条目。数据包从哪里来?

d) 还有这个条目

  192.168.178.255  255.255.255.255       On-link    192.168.178.28    306

是广播,不是吗?那么当我电脑上的应用程序向这个地址发送一个数据包时,它是对192.168.178 网络内的任何主机的广播?

e) 然后是接下来的两个条目:

 224.0.0.0        240.0.0.0      On-link    192.168.178.28    306
 255.255.255.255  255.255.255.255    On-link    192.168.178.28    306
  • 224.0.0.0 是多播,对吧?
  • 而且255.255.255.255 也是对我局域网内任何主机的广播? 与192.168.178.255 有什么区别?
  • 为什么我的所有 NIC 都存在这两个条目?

f) 还有一个普遍的问题:我一直认为只有路由器才有路由表,但任何没有实现 IP 协议的系统都必须有路由表,所以每一台平板电脑、智能手机和 PC,对吧?

g) 最后一个:

192.168.178.28192.168.56.1 位于不同的子网上(根据子网掩码)。因此,当我想将数据包从一个发送到另一个时,数据包必须通过路由器,即使两个 NIC 都在我的机器上,对吗?

感谢您的帮助和解释!

【问题讨论】:

  • 能否请反对者详细说明?

标签: networking routing ip


【解决方案1】:

一般来说,路由表是按优先级组织的(所以你显示的顺序没有太大意义)。 Windows 将表格颠倒显示:第一个条目是最后一个规则(即,如果所有其他规则都失败,则使用此规则)。

对于每个 IP 目标,按顺序处理整个表并寻找匹配项。如果多个规则匹配,则使用最小的指标。

a) 是的,第一行是默认路由,如果没有其他规则匹配,则使用该路由。

严格来说,此接口可以访问 Internet 并不是真的:它是(希望)知道如何处理其他规则中未提及的其他网络的数据的唯一接口。例如,如果它指向路由器,则可以访问 Internet...

b) 是的,这是一个网络条目

c) 它是一个 host 条目:如果应用程序绑定到 192.168.178.28 并将数据发送到该地址。它将使用相同的接口(通常,路由表允许主机条目允许特定主机的特殊规则)

d) 是的,这是特定网络的本地网络广播

e) 224.... 是多播,是的。 255.255.255.255(理论上)是向全世界广播。幸运的是,它只被传输到本地接口 :-) 如果您执行 ping 255.255.255.255,此规则将“捕获”。对 192.168.178.255 的 ping 将使用其他规则。

所有接口都必须有完整的路由信息​​,因此默认情况下会为每个 nw 接口创建所有规则。

f) 每个带有 IP 接口的设备都有一个路由表。路由器中的表可能要复杂得多,主机通常具有由操作系统自动创建的表。

g) 不,路由表告诉 IP 堆栈使用正确的接口作为传出接口,无需发送到路由器。因此,如果您 PC 中的应用程序想要将数据发送到 192.168.56.x,它将通过 192.168.56.1 接口(在您的情况下似乎是虚拟 NW 卡)发送数据 p>

【讨论】:

  • 非常感谢您的回答!对我有很大帮助!
猜你喜欢
  • 2012-01-25
  • 1970-01-01
  • 2013-05-06
  • 2018-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多