配置静态路由
了解基本静态路由
当动态路由协议不再复杂时,通常使用静态路由。不频繁更改且目标只有一个(或很少)路径的路由是静态路由的候选路线。静态路由的典型用例是连接到上游提供商的单宿主客户。这种类型的附件会创建剩余网络。
静态路由是手动定义的。路由由目标前缀和下一跃点转发地址组成。静态路由在路由表中被激活,并在可访问下一跃点地址时插入转发表。与静态路由匹配的流量将被转发到指定的下一跃点地址。
您可以指定用于定义有关静态路由的附加信息的选项。当路由安装在路由表中时,路由会附带这些属性,例如社区标记或路由指标。基本静态路由不需要这些附加路由属性。
示例:为剩余网络配置 IPv4 静态路由
我们的内容测试团队已经验证并更新了此示例。
此示例说明如何为 IPv4 配置基本静态路由。
要求
两个通过共享网络链路运行 Junos OS 的设备。配置此示例之前,不需要除基本设备初始化(管理接口、远程访问、用户登录帐户等)之外的特殊配置。
IPv4 静态路由概述
静态路由有许多实际应用。网络边缘通常使用静态路由来支持对剩余网络的附件。剩余网络具有单一入口点和出口,因此非常适合静态路由的简单性。在 Junos OS 中,静态路由的全局优先级(管理距离)为 5。此值使其优先于从 OSPF 或 BGP 等动态协议中学习的路由。
IPv4 静态路由拓扑
图 1 显示了示例拓扑。
在此示例中,您在提供商设备 (R1) 上使用 172.16.16.1.2 的下一跃点地址配置静态路由 192.168.47.0/24。此路由允许提供商设备访问客户站点的远程网络。您还使用 172.16.1.1 的下一跃点地址在客户设备 (R2) 上配置 0.0.0.0/0 的静态默认路由。默认路由会将这些流量转发到提供商网络,从而确保客户能够访问所有非本地网络。
两个设备上都配置了多个环路地址。这些环路地址提供远程目标 ping,因此您可以验证 IPv4 静态路由是否工作正常。
IPv4 静态路由配置
CLI 快速配置
要快速在 R1 和 R2 设备上配置基本 IPv4 静态路由,请根据需要编辑以下命令,并将其粘贴到层级的 [edit]
CLI 中。请务必从配置模式发出以 commit
激活更改。
R1 设备(提供商)
set system host-name R1 set interfaces ge-0/0/0 unit 0 description “Link from R1 to R2” set interfaces ge-0/0/0 unit 0 family inet address 172.16.1.1/24 set interfaces lo0 unit 0 family inet address 10.0.0.1/32 set interfaces lo0 unit 0 family inet address 10.0.0.2/32 set routing-options static route 192.168.47.0/24 next-hop 172.16.1.2
R2 设备(客户)
set system host-name R2 set interfaces ge-0/0/0 unit 0 description “Link from R2 to R1” set interfaces ge-0/0/0 unit 0 family inet address 172.16.1.2/24 set interfaces lo0 unit 0 family inet address 192.168.47.5/32 set interfaces lo0 unit 0 family inet address 192.168.47.6/32 set routing-options static route 0.0.0.0/0 next-hop 172.16.1.1
配置 R1 和 R2 设备
逐步过程
此示例要求您在配置层次结构的各个级别上导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。
要配置基本静态路由:
配置 R1(提供商)设备上的主机名。
[edit ] user@R1# set system host-name R1
配置 R1(提供商)设备上的接口。
[edit interfaces] user@R1# set ge-0/0/0 unit 0 description "Link from R1 to R2" user@R1# set ge-0/0/0 unit 0 family inet address 172.16.1.1/24 user@R1# set lo0 unit 0 family inet address 10.0.0.1/32 user@R1# set lo0 unit 0 family inet address 10.0.0.2/32
在 R1 设备上定义到客户前缀的静态路由。请务必将点对点链路的 R2 端指定为静态路由的下一跃点。
静态路由通过 R2 设备转发流量,确保提供商网络能够路由到客户网络中的所有远程目标。
[edit routing-options] user@R1# set static route 192.168.47.0/24 next-hop 172.16.1.2
在 R1 设备上提交更改。
[edit ] user@R1# commit
配置 R2(客户)设备上的主机名。
[edit ] user@R2# set system host-name R2
配置 R2(客户)设备上的接口。
[edit interfaces] user@R2# set ge-0/0/0 unit 0 description "Link from R2 to R1" user@R2# set ge-0/0/0 unit 0 family inet address 172.16.1.2/24 user@R2# set lo0 unit 0 family inet address 192.168.47.5/32 user@R2# set lo0 unit 0 family inet address 192.168.47.6/32
在 R2 设备上定义 IPv4 静态默认路由。请务必将点对点链路的 R1 端指定为静态路由的下一跃点。
IPv4 默认路由通过将流量转发到提供商网络中的 R1 设备,确保客户能够路由到所有非本地目标。
[edit routing-options] user@R2# set static route 0.0.0.0/0 next-hop 172.16.1.1
在 R2 设备上提交更改。
[edit] user@R2# commit
结果
通过发出 show interfaces
和 show routing-options
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。
R1 设备
user@R1# show interfaces ge-0/0/0 { unit 0 { description "Link from R1 to R2"; family inet { address 172.16.1.1/24; } } } lo0 { unit 0 { family inet { address 10.0.0.1/32; address 10.0.0.2/32; } } }
user@R1# show routing-options static { route 192.168.47.0/24 next-hop 172.16.1.2; }
R2 设备
user@R2# show interfaces ge-0/0/0 { unit 0 { description "Link from R2 to R1"; family inet { address 172.16.1.2/24; } } } lo0 { unit 0 { family inet { address 192.168.47.5/32; address 192.168.47.6/32; } } }
user@R2# show routing-options static { route 0.0.0.0/0 next-hop 172.16.1.1; }
验证
确认 IPv4 静态路由工作正常。
检查路由表
目的
确认两台设备的路由表中将 IPv4 静态路由列为活动。
行动
user@R1> show route inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.1/32 *[Direct/0] 00:29:43 > via lo0.0 10.0.0.2/32 *[Direct/0] 00:29:43 > via lo0.0 172.16.1.0/24 *[Direct/0] 00:34:40 > via ge-0/0/0.0 172.16.1.1/32 *[Local/0] 00:34:40 Local via ge-0/0/0.0 192.168.47.0/24 *[Static/5] 00:31:23 > to 172.16.1.2 via ge-0/0/0.0
user@R2> show route inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 0.0.0.0/0 *[Static/5] 00:31:24 > to 172.16.1.1 via ge-1/2/0.1 172.16.1.0/24 *[Direct/0] 00:35:21 > via ge-0/0/0.0 172.16.1.2/32 *[Local/0] 00:35:21 Local via ge-0/0/0.0 192.168.47.5/32 *[Direct/0] 00:35:22 > via lo0.0 192.168.47.6/32 *[Direct/0] 00:35:21 > via lo0.0
意义
输出将确认两个设备的路由表中都存在静态路由。该 *
符号表示路由处于活动状态。静态路由的下一跃点正确指向分配给链路远程端的 IP 地址。
对远程环路地址执行 Ping 操作
目的
验证 IPv4 静态路由是否在两台设备的环路地址之间提供连接。最好使用 source
选项从本地设备上的环路地址获取测试流量。此方法可在单个命令中验证两台设备的环路地址之间的转发。
从 R1 设备,对 R2 设备上的环路接口地址执行 ping 操作。
从 R2 设备,对 R1 设备上的环路接口地址执行 ping 操作。
行动
user@R1> ping 192.168.47.5 count 2 source 10.0.0.1 PING 192.168.47.5 (192.168.47.5): 56 data bytes 64 bytes from 192.168.47.5: icmp_seq=0 ttl=64 time=1.344 ms 64 bytes from 192.168.47.5: icmp_seq=1 ttl=64 time=1.279 ms --- 192.168.47.5 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/stddev = 1.279/1.312/1.344/0.032 ms
user@R2> ping 10.0.0.1 count 2 source 192.168.47.5 PING 10.0.0.1 (10.0.0.1): 56 data bytes 64 bytes from 10.0.0.1: icmp_seq=0 ttl=64 time=1.939 ms 64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=2.139 ms --- 10.0.0.1 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/stddev = 1.939/2.039/2.139/0.100 ms
意义
输出将确认静态路由允许在提供商和客户网络之间转发流量。
示例:为剩余网络配置 IPv6 静态路由
我们的内容测试团队已经验证并更新了此示例。
此示例说明如何为 IPv6 配置基本静态路由。
要求
两个通过共享网络链路运行 Junos OS 的设备。配置此示例之前,不需要除基本设备初始化(管理接口、远程访问、用户登录帐户等)之外的特殊配置。
IPv6 静态路由概述
静态路由有许多实际应用。静态路由通常在网络边缘使用,以支持对剩余网络的附件,鉴于其单一入口点和出口,非常适合静态路由的简单性。在 Junos OS 中,静态路由的全局优先级为 5。当可访问指定的下一跃点时,静态路由将被激活。
您可以指定用于定义有关静态 IPv6 路由的更多信息的选项。当路由安装在路由表中时,路由会附带这些属性,例如社区标记或路由指标。基本 IPv6 静态路由不需要这些附加路由属性。
IPv6 静态路由拓扑
图 2 提供了 IPv6 静态路由拓扑。
在此示例中,已为提供商和客户网络分配了 IPv6 前缀 2001:db8:1:/48 和 2001:db8:2:/48。两个网络均可从所分配的前缀块中自由分配更长的前缀(子网)。点对点链路使用 /126 前缀长度从提供商的地址空间中编号。每个设备都有两个环路地址,这些地址使用 /128 前缀长度从其分配的前缀中分配。
您可以在提供商 (R1) 网络设备上配置到客户前缀 (2001:db8:2:/48) 的静态路由,并使用 2001:db8:1:1:2 的下一跃点。此路由提供从提供商设备到客户站点远程网络的可达性。在客户设备 (R2) 上,使用下一跃点地址 2001:db8:1:1::1::1.1 配置静态默认路由。默认路由让客户能够通过提供商的网络访问所有非本地前缀。
两个设备上都配置了多个环路地址。这些环路地址提供远程目的地 ping,允许您验证 IPv6 静态路由是否工作正常。
IPv6 静态路由配置
CLI 快速配置
要快速在 R1 和 R2 设备上配置基本 IPv6 静态路由,请根据需要编辑以下命令,并将其粘贴到层级的 [edit]
CLI 中。请务必从配置模式发出以 commit
激活更改。
R1 设备(提供商)
set system host-name R1 set interfaces ge-0/0/0 description "Link from R1 to R2" set interfaces ge-0/0/0 unit 0 family inet6 address 2001:db8:1:1::1/126 set interfaces lo0 unit 0 family inet6 address 2001:db8:1:10::1/128 set interfaces lo0 unit 0 family inet6 address 2001:db8:1:11::1/128 set routing-options rib inet6.0 static route 2001:db8:2::/48 next-hop 2001:db8:1:1::2
R2 设备(客户)
set system host-name R2 set interfaces ge-0/0/0 description "Link from R2 to R1" set interfaces ge-0/0/0 unit 0 family inet6 address 2001:db8:1:1::2/126 set interfaces lo0 unit 0 family inet6 address 2001:db8:2:10::1/128 set interfaces lo0 unit 0 family inet6 address 2001:db8:2:11::1/128 set routing-options rib inet6.0 static route ::/0 next-hop 2001:db8:1:1::1
配置 R1 和 R2 设备
逐步过程
此示例说明,您可以在配置层次结构中导航各个级别。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。
按照以下步骤配置基本 IPv6 静态路由:
配置 R1(提供商)设备上的主机名。
[edit ] user@R1# set system host-name R1
配置 R1(提供商)设备上的接口。
[edit interfaces] user@R1# set ge-0/0/0 description "Link from R1 to R2" user@R1# set ge-0/0/0 unit 0 family inet6 address 2001:db8:1:1::1/126 user@R1# set lo0 unit 0 family inet6 address 2001:db8:1:10::1/128 user@R1# set lo0 unit 0 family inet6 address 2001:db8:1:11::1/128
定义到 R1 设备上的客户 IPv6 前缀的静态路由。请务必为点对点链路的客户端设置下一跃点地址。
使用 /48 位前缀长度可确保 R1 设备可以通过 R2 设备转发到达客户网络中的所有可能远程目标。
[edit routing-options] user@R1# set rib inet6.0 static route 2001:db8:2::/48 next-hop 2001:db8:1:1::2
在 R1 设备上提交更改。
[edit ] user@R1# commit
配置 R2(客户)设备上的主机名。
[edit ] user@R2# set system host-name R2
配置 R2(客户)设备上的接口。
[edit interfaces] user@R2# set ge-0/0/0 description "Link from R2 to R1" user@R2# set ge-0/0/0 unit 0 family inet6 address 2001:db8:1:1::2/126 user@R2# set lo0 unit 0 family inet6 address 2001:db8:2:10::1/128 user@R2# set lo0 unit 0 family inet6 address 2001:db8:2:10::2/128
在 R2 设备上定义 IPv6 静态默认路由。请务必将下一跳地址设置为点对点链路的提供商端。
IPv6 默认路由通过提供商网络中的 R1 设备转发流量,确保 R2 设备可以到达所有非本地目标。
[edit routing-options] user@R2# set rib inet6.0 static route ::/0 next-hop 2001:db8:1:1::1
在 R2 设备上提交更改。
[edit] user@R2# commit
结果
通过发出 show interfaces
和 show routing-options
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。
R1 设备
user@R1# show interfaces ge-0/0/0 { description "Link from R1 to R2"; unit 0 { family inet6 { address 2001:db8:1:1::1/126; } } } lo0 { unit 0 { family inet6 { address 2001:db8:1:10::1/128; address 2001:db8:1:11::1/128; } } }
user@R1# show routing-options rib inet6.0 { static { route 2001:db8:2::/48 next-hop 2001:db8:1:1::2; } }
R2 设备
user@R2# show interfaces ge-0/0/0 { description "Link from R2 to R1"; unit 0 { family inet6 { address 2001:db8:1:1::2/126; } } } lo0 { unit 0 { family inet6 { address 2001:db8:2:10::1/128; address 2001:db8:2:11::1/128; } } }
user@R2# show routing-options rib inet6.0 { static { route ::/0 next-hop 2001:db8:1:1::1; } }
验证
确认 IPv6 静态路由工作正常。
检查路由表
目的
验证两台设备的路由表中的 IPv6 静态路由是否处于活动状态。
行动
user@R1> show route protocol static inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 2001:db8:2::/48 *[Static/5] 02:07:11 > to 2001:db8:1:1::2 via ge-0/0/0.0
user@R2> show route protocol static inet6.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both ::/0 *[Static/5] 02:13:56 > to 2001:db8:1:1::1 via ge-0/0/0.0
意义
输出将确认两个设备的路由表中都存在 IPv6 静态路由。该 *
符号表示路由处于活动状态。两个静态路由均正确指向点对点链路的远程端,作为匹配流量的下一跃点。
对远程环路地址执行 Ping 操作
目的
验证 IPv6 静态路由是否在两台设备的环路地址之间提供连接。最好使用 source
选项从本地设备上的环路地址获取测试流量。此方法可在单个命令中验证两台设备的环路地址之间的转发。
从 R1 设备,对 R2 设备上的环路地址执行 ping 操作。
从 R2 设备,ping R1 设备上的 q 环路地址。
行动
user@R1> ping 2001:db8:2:10::1 source 2001:db8:1:10::1 count 2 PING6(56=40+8+8 bytes) 2001:db8:1:10::1 --> 2001:db8:2:10::1 16 bytes from 2001:db8:2:10::1, icmp_seq=0 hlim=64 time=2.770 ms 16 bytes from 2001:db8:2:10::1, icmp_seq=1 hlim=64 time=2.373 ms --- 2001:db8:2:10::1 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/std-dev = 2.373/2.572/2.770/0.198 ms
user@R2> ping 2001:db8:1:10::1 source 2001:db8:2:10::1 count 2 PING6(56=40+8+8 bytes) 2001:db8:2:10::1 --> 2001:db8:1:10::1 16 bytes from 2001:db8:1:10::1, icmp_seq=0 hlim=64 time=1.985 ms 16 bytes from 2001:db8:1:10::1, icmp_seq=1 hlim=64 time=1.704 ms --- 2001:db8:1:10::1 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/std-dev = 1.704/1.845/1.985/0.140 ms
意义
输出确认 IPv6 静态路由允许在提供商和客户网络之间转发流量。