1. 概述
Scope分为两种:路由的Scope 和 IP地址的Scope
路由的Scope:表示到目的网络的距离。
IP地址的Scope: 表示该IP地址到达本地主机有多远。
2. 常用的Scope
2.1 IP地址常用的Scope
主机:表示该地址只用于主机的内部通信。例如:127.0.0.1
链路:表示地址尽在局域网内部有意义(链路层互联),如子网广播地址
全域:表示地址可以在任何地方使用。(这是大多数地址的默认Scope)
注意点: Scope并不能反映可路由(公开)地址和不可路由(私有)地址之间的区别。10.0.0.1和165.2.2.2的Scope都可能是链路或全域。广播地址和会换地址由内核来制定合适的Scope。
2.2 路由常用的Scope
主机: 路由表示的目的地址为本地主机。
链路:路由表示的目的地址为本地网络。
全域:路由表示的目的地址超过一个下一跳
3. Scope的应用
路由Scope和IP地址Scope在路由代码和内核其他部分都有广泛的应用。
3.1 关于IP地址的Scope
首先,我们要知道,对于Linux而言,IP地址属于主机而不是接口。这样当主机有两个接口,如eth0,eth1(例如我们路由期Wan口为eth0:202.202.202.202,lan口为eth1:192.168.1.1),两个IP地址(202.202.202.202和192.168.1.1)都是属于主机的,尽管他们配置在不同的接口上。这样,如果没有进行进一步的配置,我们来考虑下ARP应答:假设路由器从eth0(即wan口)接收到ip地址为192.168.1.1的地址请求(即wan端有主机ping 192.168.1.1)路由器是会给予应答的。(当然我们可以通过ARP_IGNORE特性进行配置)。
IP地址属于主机,那么,往我们的主机有多个IP地址时,当主机需要往外传送数据是,选择哪一个IP地址作为源IP,就需要进行判断了。对IP地址配置不同的Scope在这里就会得到一定的应用了。
3.2 关于路由的Scope
我们来看下图有关于路由的Scope的应用: