系统管理指南:IP 服务

为单接口系统配置路由

单接口主机需要实现某种形式的路由。如果主机要从一个或多个本地缺省路由器获取其路由,则必须将该主机配置为使用静态路由。否则,建议对该主机使用动态路由。以下过程包含启用这两种路由类型的说明。

Procedure如何在单接口主机上启用静态路由

以下过程可在单接口主机上启用静态路由。使用静态路由的主机不运行动态路由协议(如 RIP)。相反,主机必须依赖于缺省路由器的服务来获取路由信息。IPv4 自治系统拓扑图显示了几个缺省路由器及其客户机主机。如果在安装特定主机时提供了缺省路由器的名称,则该主机已经配置为使用静态路由。


注 –

也可以使用以下过程在多宿主主机上配置静态路由。


有关 /etc/defaultrouter 文件的信息,请参见/etc/defaultrouter 文件。有关静态路由和路由表的信息,请参阅路由表和路由类型

  1. 在单接口主机上,承担主管理员角色或成为超级用户。

    主管理员角色拥有主管理员配置文件。有关如何创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 “使用 Solaris Management Console(任务)”

  2. 验证主机上是否存在 /etc/defaultrouter 文件。


    # cd /etc
    # ls | grep defaultrouter
    
  3. 打开文本编辑器以创建或修改 /etc/defaultrouter 文件。

  4. 添加缺省路由器的项。


    # vi  /etc/defaultrouter
    router-IP
           
    

    其中 router-IP 指示供主机使用的缺省路由器的 IP 地址。

  5. 验证路由和包转发没有在主机上运行。


    # routeadm
       Configuration   Current              Current
                         Option   Configuration        System State
    ---------------------------------------------------------------
                   IPv4 routing   disabled             disabled
                   IPv6 routing   disabled             disabled
                IPv4 forwarding   disabled            disabled
                IPv6 forwarding   disabled             disabled
    
               Routing services   "route:default ripng:default"
  6. 在本地 /etc/inet/hosts 文件中添加缺省路由器的项。

    有关配置 /etc/inet/hosts 的信息,请参阅如何更改 IPv4 地址和其他网络配置参数


示例 5–7 为单接口主机配置缺省路由器和静态路由

以下示例说明如何为Figure&;5–3 所示的网络 172.20.1.0 中的单接口主机 图 5–3 配置静态路由。hostb 需要将路由器 2 用作其缺省路由器。

首先,请以超级用户身份登录到 hostb 或承担等效角色。然后,确定主机上是否存在 /etc/defaultrouter 文件:


# cd /etc
# ls | grep defaultrouter

如果没有来自 grep 的响应,则表示您需要创建 /etc/defaultrouter 文件。


# vi /etc/defaultrouter
172.20.1.10

/etc/defaultrouter 文件中的项是连接到 172.20.1.0 网络的路由器 2 上接口的 IP 地址。接下来,验证主机当前启用包转发还是启用路由。


# routeadm
   Configuration   Current              Current
                     Option   Configuration        System State
---------------------------------------------------------------
               IPv4 routing   disabled             disabled
               IPv6 routing   disabled             disabled
            IPv4 forwarding   enabled              enabled
            IPv6 forwarding   disabled             disabled

           Routing services   "route:default ripng:default"

已对此特定主机启用包转发。可按如下所示将其禁用:


# svcadm disable ipv4-forwarding

最后,确保主机的 /etc/inet/hosts 文件包含新缺省路由器的项。


# vi /etc/inet/hosts
127.0.0.1           localhost
172.20.1.18         host2    #primary network interface for host2
172.20.1.10         router2  #default router for host2

Procedure如何在单接口主机上启用动态路由

动态路由是管理主机上路由的最简单的方法。使用动态路由的主机运行由 IPv4 的 in.routed 守护进程或 IPv6 的 in.ripngd 守护进程提供的路由协议。使用接下来的过程在单接口主机上启用 IPv4 动态路由。有关动态路由的更多信息,请参阅IPv4 网络上的包转发和路由

  1. 在主机上,承担主管理员角色或成为超级用户。

    主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 “使用 Solaris Management Console(任务)”

  2. 验证是否存在 /etc/defaultrouter 文件。


    # cd /etc
    # ls | grep defaultrouter
    
  3. 如果存在 /etc/defaultrouter,则删除在该文件中找到的所有项。

    /etc/defaultrouter 文件为空会强制主机使用动态路由。

  4. 验证是否在主机上启用了包转发和路由。


    # routeadm
       Configuration   Current              Current
                         Option   Configuration        System State
    ---------------------------------------------------------------
                   IPv4 routing   disabled             disabled
                   IPv6 routing   disabled             disabled
                IPv4 forwarding   enabled              enabled
                IPv6 forwarding   disabled             disabled
    
               Routing services   "route:default ripng:default"
  5. 如果启用了包转发,请将其关闭

    使用以下命令之一:

    • 对于 routeadm 命令,请键入以下内容:


      # routeadm -d ipv4-forwarding -u
      
    • 要使用 SMF,请键入以下内容:


      # svcadm disable ipv4-forwarding
      
  6. 在主机上启用路由协议。

    使用以下命令之一:

    • 对于 routeadm 命令,请键入以下内容:


      # routeadm -e ipv4-routing -u
      
    • 要使用 SMF,请键入以下内容:


      # svcadm enable route:default
      

    现在已启用 IPv4 动态路由。主机的路由表是由 in.routed 守护进程动态维护的。


示例 5–8 在单接口主机上运行动态路由

以下示例说明如何为图 5–3 所示的网络 192.168.5.0 中的单接口主机 hosta 配置动态路由。hosta 当前将路由器 1 用作其缺省路由器。但是,hosta 现在需要运行动态路由。

首先,请以超级用户身份登录到 hosta 或承担等效角色。然后,确定主机上是否存在 /etc/defaultrouter 文件:


# cd /etc
# ls | grep defaultrouter
defaultrouter

grep 的响应指示 hosta 存在相应的 /etc/defaultrouter 文件。


# vi /etc/defaultrouter
192.168.5.10

该文件具有项 192.168.5.10(这是路由器 1 的 IP 地址)。请删除此项以启用静态路由。接下来,需要验证是否已对该主机启用了包转发和路由。


# routeadm   Configuration   Current              Current
                     Option   Configuration        System State
---------------------------------------------------------------
               IPv4 routing   disabled             disabled
               IPv6 routing   disabled             disabled
            IPv4 forwarding   disabled             disabled
            IPv6 forwarding   disabled             disabled

           Routing services   "route:default ripng:default"

对于 hosta,路由和包转发均处于关闭状态。启用路由以完成 hosta 的动态路由配置,如下所示:


# svcadm enable route:default