在 Oracle® Solaris 11.2 中配置和管理网络组件

退出打印视图

更新时间: 2014 年 7 月
 
 

创建持久性(静态)路由

您可以使用 route 命令手动处理网络路由表。要使更改在重新引导之后仍然保留,请使用 –p 选项。由于 /etc/defaultrouter 文件在 Oracle Solaris 11 中已过时,因此您不能再使用此文件管理路由(缺省值或其他)。使用 route 命令是唯一一种手动使路由在系统重新引导之后仍然保留的方法。


注 -  route 命令处理活动配置文件的路由。如果活动配置文件发生更改,则缺省路由以及所有其他路由可能会被替换。但是,如果始终在系统上使用相同的配置文件,则不需要考虑这个问题。

添加持久性路由时,请务必确保持久性配置中尚不存在所添加的路由。如果持久性配置中已存在这些路由,则网络路由表会更改,但不更新该持久性路由。这种情况的一个例子是系统的缺省路由映射到了系统的主接口(在安装 Oracle Solaris 之后经常会出现这种情况)。如果接下来将系统的主接口更改为其他接口,则系统的缺省路由也应执行持久性更新。最佳做法是在添加新路由之前删除持久性路由配置。有关更多信息,请参见在 Oracle Solaris 11.2 中排除网络管理问题 中的 排除添加持久路由时的问题

    请注意有关创建和显示持久性路由的以下附加信息:

  • 结合使用 route 命令与 –p 选项添加持久性路由:

    # route -p add default ip-address

    对于使用此方法创建的路由,可使用 route –p show 命令来显示所有持久性静态路由:

    # route -p show
  • 结合使用 netstat 命令与以下选项,可以显示系统上当前处于活动状态的路由:

    # netstat -rn

    请参见 netstat(1M)route(1M) 手册页。

有关更多信息,请参见 netstat(1M)route(1M) 手册页。

有关在使用反应性模式时创建和显示缺省路由的信息,请参见关于在 Oracle Solaris 中管理基于配置文件的网络配置

如何将静态路由添加到路由表

  1. 使用常规用户帐户查看路由表的当前状态。
    % netstat -rn

    输出将类似于以下内容:

    Routing Table: IPv4
      Destination          Gateway            Flags  Ref     Use     Interface 
    -------------------- -------------------- ----- ----- ---------- ---------
    192.168.5.125        192.168.5.10         U     1     5879       net0
    224.0.0.0            198.168.5.10         U     1     0          net0
    default              192.168.5.10         UG    1     91908
    127.0.0.1            127.0.0.1            UH    1     811302     lo0
    
    Routing Table: IPv6
      Destination/Mask            Gateway                   Flags Ref   Use    If
    --------------------------- --------------------------- ----- --- ------- -----
    ::1                         ::1                         UH      2       0 lo0
    
  2. 成为管理员。
  3. (u53ef选) 刷新路由表中的现有条目。
    # route flush
  4. 添加持久性路由。
    # route -p add -net network-address -gateway gateway-address
    –p

    创建一个在系统重新引导后仍然保留的路由。如果希望路由仅在当前会话中保留,则不要使用 –p 选项。

    –net network-address

    指定路由将转到具有 network-address 中指定的地址的网络。

    –gateway gateway-address

    指示指定路由的网关系统具有 IP 地址 gateway-address

示例 9  将静态路由添加到路由表

以下示例说明了如何将静态路由添加到路由器(路由器 2)。AS 的边界路由器 10.0.5.150 需要静态路由。有关此特定设置的说明,请参见图 2

如下所示查看路由器 2 上的路由表:

# netstat -rn
Routing Table: IPv4
Destination           Gateway           Flags  Ref   Use   Interface
-------------------- -------------------- ----- ----- ------ ---------
default              172.20.1.10          UG        1    249 ce0
224.0.0.0            172.20.1.10          U         1      0 ce0
10.0.5.0             10.0.5.20            U         1     78 bge0
127.0.0.1            127.0.0.1            UH        1     57 lo0

Routing Table: IPv6
  Destination/Mask            Gateway                   Flags Ref   Use    If
--------------------------- --------------------------- ----- --- ------- -----
::1                         ::1                         UH      2       0 lo0

路由表指示路由器 2 知晓两个路由。缺省路由将路由器 2 的 172.20.1.10 接口用作其网关。第二个路由 10.0.5.0 是由在路由器 2 上运行的 in.routed 守护进程搜索到的。此路由的网关是路由器 1,它的 IP 地址是 10.0.5.20

如下所示将第二个路由添加到网络 10.0.5.0,该网络使用其网关作为边界路由器:

# route -p add -net 10.0.5.0/24 -gateway 10.0.5.150
add net 10.0.5.0: gateway 10.0.5.150

现在,路由表中具有边界路由器(其 IP 地址为 10.0.5.150)的一个路由。

# netstat -rn
Routing Table: IPv4
Destination           Gateway           Flags  Ref   Use   Interface
-------------------- -------------------- ----- ----- ------ ---------
default              172.20.1.10          UG        1    249 ce0
224.0.0.0            172.20.1.10          U         1      0 ce0
10.0.5.0             10.0.5.20            U         1     78 bge0
10.0.5.0             10.0.5.150           U         1    375 bge0
127.0.0.1            127.0.0.1            UH        1     57 lo0

Routing Table: IPv6
  Destination/Mask            Gateway                   Flags Ref   Use    If
--------------------------- --------------------------- ----- --- ------- -----
::1                         ::1                         UH      2       0 lo0