本文檔介紹如何在基於Cisco Nexus NX-OS的交換機上配置路由洩漏。
思科建議您瞭解以下主題:
本檔案中的資訊是根據搭載NXOS版本7.3(0)D1(1)的Cisco Nexus 7000。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
您必須將路由直接從源VRF洩漏到目標VRF中。不能洩漏當前從其他VRF洩露的路由。
考慮通過Nexus上的其他VRF路由時,無法建立從Nexus到對等IP的BGP會話。
附註:在使用BGP的VRF之間洩漏路由時,您可能會遇到直到幾分鐘後路由更改才會反映在目標VRF中。發生這種情況的原因是BGP抑制機制忽略基於度量更改的路由更改,以避免IGP抖動(例如鏈路問題)並且您不希望這些抖動傳播到更遠的地方。如果您遇到這種情況,並且需要在目標VRF上立即更新路由,請檢視相關資訊部分中的指南「在Cisco Nexus交換機上的BGP中配置dampen-igp-metric」。
VRF之間的洩漏在BGP進程級別執行。因此,有必要先將路由新增到BGP進程,特別是在BGP表中。
在這種情況下,Nexus在其預設VRF中通過EIGRP收到兩條路由。該配置會洩漏VRF BLUE中的路由。
在本範例中,只有路由192.168.2.0/24會洩漏。
| 全域性路由表輸出 |
|---|
Nexus# show ip route eigrp
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
172.16.2.2/32, ubest/mbest: 1/0
*via 10.1.2.2, Eth2/1, [90/130816], 00:00:21, eigrp-1, internal
192.168.2.0/24, ubest/mbest: 1/0
*via 10.1.2.2, Eth2/1, [90/130816], 00:00:21, eigrp-1, internal
Nexus# |

重新分發BGP中預設VRF路由表中存在的路由。由於路由在預設VRF中,因此BGP中的redistribute命令位於全域性address-family ipv4 unicast部分下。請對redistribute命令使用正確的引數。這取決於路由在預設VRF中的狀態(直連、eigrp、ospf等)。
| 重新分發到BGP |
|---|
route-map ALL permit 10 |

在目標VRF中配置import vrf default命令。命令列需要將路由對映作為引數來明確定義要在目標VRF中匯入的路由,在本例中是名為BLUE的VRF。
| 配置目標VRF中的匯入VRF預設值 |
|---|
ip prefix-list NETWORK seq 5 permit 192.168.2.0/24
!
route-map GLOBAL-TO-VRF permit 10
match ip address prefix-list NETWORK
!
vrf context BLUE
address-family ipv4 unicast
import vrf default map GLOBAL-TO-VRF |

可以在目標VRF中確認現在通過BGP看到路由。現在,VRF中的這些BGP路由可以在運行在同一VRF的任何其他路由協定中重分發。
| 檢查目標VRF路由表 |
|---|
Nexus# show ip route vrf BLUE
IP Route Table for VRF "BLUE"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.2.0/24, ubest/mbest: 1/0
*via 10.1.2.2%default, Eth2/1, [20/130816], 00:15:00, bgp-65535, external, tag 65535,
Nexus# |

在這種情況下,Nexus通過EIGRP在其VRF中收到兩條名為RED的路由。該配置會洩漏VRF BLUE中的路由。
| VRF RED路由表輸出 |
|---|
Nexus# show ip route eigrp vrf RED
IP Route Table for VRF "RED"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
172.16.2.2/32, ubest/mbest: 1/0
*via 10.1.2.2, Eth2/1, [90/130816], 00:00:08, eigrp-1, internal
192.168.2.0/24, ubest/mbest: 1/0
*via 10.1.2.2, Eth2/1, [90/130816], 00:00:08, eigrp-1, internal
Nexus# |

重新分配BGP中VRF RED路由表中的路由。由於這些路由在VRF RED中,因此BGP中的redistribute命令位於vrf RED地址系列ipv4單播部分下。
| 重新分發到BGP |
|---|
route-map ALL permit 10 |

為了在VRF之間洩漏,需要使用路由目標。原始VRF匯出路由目標值。目標VRF匯入相同的路由目標值。
| 建立匯出和匯入路由目標 |
|---|
vrf context RED |

可以在目標VRF中確認現在通過BGP看到路由。現在,VRF中的這些BGP路由可以在運行在同一VRF的任何其他路由協定中重分發。
| 檢查目標VRF路由表 |
|---|
Nexus# show ip route vrf BLUE
IP Route Table for VRF "BLUE"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
172.16.2.2/32, ubest/mbest: 1/0
*via 10.1.2.2%RED, Eth2/1, [20/130816], 00:01:58, bgp-65535, external, tag 65535,
192.168.2.0/24, ubest/mbest: 1/0
*via 10.1.2.2%RED, Eth2/1, [20/130816], 00:01:58, bgp-65535, external, tag 65535,
Nexus# |

可以選擇使用原始VRF下的export map命令,以將路由目標分配給要匯出的特定路由。使用路由對映中的set extcommunity rt引數以分配路由目標。
在本示例中,僅將網路192.168.2.0/24與Route-Target 1:1一起匯出,該路由隨後會以VRF BLUE匯入。
結果是只有指定的網路被洩漏。
| 將Route-Target分配給特定路由 |
|---|
ip prefix-list NETWORK seq 5 permit 192.168.2.0/24
!
route-map ADD-RT permit 10
match ip address prefix-list NETWORK
set extcommunity rt 1:1
!
vrf context RED
address-family ipv4 unicast
export map ADD-RT
!
vrf context BLUE
address-family ipv4 unicast
route-target import 1:1 |
Nexus通過EIGRP在其VRF中收到兩條稱為RED的路由。配置會洩漏預設VRF中的路由。
在本範例中,只有路由192.168.2.0/24會洩漏。

重新分配BGP中VRF RED路由表中的路由。由於這些路由在VRF RED中,因此BGP中的redistribute命令位於vrf RED地址系列ipv4單播部分下。
| 重新分發到BGP |
|---|
route-map ALL permit 10 |

export vrf default命令在原始VRF中配置。命令列需要將路由對映作為引數來明確定義要在預設VRF中匯出的路由。
| 配置源VRF中的匯出VRF預設值 |
|---|
ip prefix-list NETWORK seq 5 permit 192.168.2.0/24
!
route-map GLOBAL-TO-VRF permit 10
match ip address prefix-list NETWORK
!
vrf context RED
address-family ipv4 unicast
export vrf default map GLOBAL-TO-VRF |

可以在預設VRF中確認現在通過BGP看到路由。現在,可以在也運行在預設VRF中的任何其他路由協定中重新分發預設VRF中的這些BGP路由。
| 檢查預設VRF路由表 |
|---|
Nexus# show ip route |

VRF路由洩漏過程有4個階段。驗證可以按以下順序進行:

為了檢查路由表中路由是否正確,命令如下:
show ip route [vrf]
為了檢查BGP表中的路由是否正確,命令如下:
請注意,第二個命令可互換使用,以便在BGP表中顯示IPv4單播地址。
show bgp ipv4 unicast [vrf] show ip bgp [vrf ]
最後,show forwarding route A.B.C.D/LEN [VRF <vrf name>]可用於確認線路卡級別上已程式設計的第3層 — 路由(硬體程式設計)。
Nexus# show forwarding route 10.1.2.2 slot 1 ======= IPv4 routes for table default/base '*' denotes recursive route ----------------+----------------------------------------+----------------------+----------------- Prefix | Next-hop | Interface | Labels ----------------+----------------------------------------+----------------------+----------------- 10.1.2.0/24 Attached Ethernet2/1 Nexus#
在Cisco Nexus交換機上的BGP中配置dampen-igp-metric
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
6.0 |
28-Jul-2026
|
重新認證 |
5.0 |
08-Jan-2026
|
為限制新增了註釋,並在相關資訊部分新增了文章。 |
4.0 |
15-Nov-2024
|
放大影象以更加清晰。更新的Alt文本和格式。 |
1.0 |
20-Nov-2018
|
初始版本 |