接口作用域(全局与链接)的作用是什么?


11

路由表条目具有属性scope。我想知道从globallink(或相反)的更改如何影响网络系统。

Answers:


8

让我们看一下中的route scope定义Linux

The scope of a route in Linux is an indicator of the distance to the
destination network.

Host
    A route has host scope when it leads to a destination address on the local host.
Link
    A route has link scope when it leads to a destination address on the local network.
Universe
    A route has universe scope when it leads to addresses more than one hop away.

因此,如果您更改路由的范围,则您的计算机可能无法再以该路由连接到网络。路由器只是不转发发送到目的地属于本地网络的数据包。

请注意,作用域不反映不可路由(私有)地址和可路由(公共)地址之间的区别。

10.0.0.1(专用-不可路由)和8.8.8.8(公用-可路由)都可以指定链接或Universe(全局)范围。它由系统管理员配置。


所以...与BGP范围无关,也就是高级路由协议的路由范围(叹气
Ouki 2014年

3
这里的小问题:在IPv4中,所有地址都是可路由的,包括10.0.0.0/8和192.168.0.0/16-但10.0.0.0/8不在公共网络中路由。但是您仍然可以在例如子网10.0.0.0/8中路由它们。只有使用IPv6时,才存在不可路由的地址,即:: 1和LLA。
TheDiveO '18 -4-26

3

范围会影响源地址的选择。

对于源地址尚未确定的连接/关联(例如,启动TCP连接,但在对传入数据包作出反应时未确定),将根据数据包将要命中的路由范围来选择源地址。

这就是地址也具有作用域属性的原因。

没有源地址选择的示例:传入的TCP连接启动或ping数据包将以IP地址反向(源→目标,目标→源)进行应答,否则另一台主机将不会将该数据包识别为应答。

选择源地址的示例: ping xyztelnet xyz。通用程序不会告诉操作系统要使用哪个源地址(这是一个好习惯)。操作系统需要选择一个并准备这样做:它测试可能到达的路由的潜在传出数据包(正常路由仅使用目标地址,如果您使用高级路由,则该数据包还没有源地址! )。如果有可用范围,则结果范围将选择范围缩小到传出接口上相应范围的地址。


您是否有关于“范围影响地址选择”的陈述的文献参考,该陈述明确将其链接到路线?我对RFC 6724的理解是,只有地址才具有作用域,但是RFC对路由的任何作用域属性均保持沉默。如果实际上为路由定义了作用域,那么如果您可以在答案中引用它,那就太好了。谢谢!
TheDiveO '18 -4-26

@TheDiveO这个事实已经是我在这里回答的问题的一部分。
罗伯·西默
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.