使用 IP SLA 跟蹤配置基於策略的路由 (PBR) - 自動重定向流量


 

 

什么是基於策略的路由?

基於策略的路由 (PBR) 是 Cisco 路由器中一項非常流行的功能,它允許創建可以有選擇地更改數據包在網絡中采用的路徑的策略。基於策略的路由可用於標記數據包,以便某些類型的流量優先於其他流量,發送到不同的目的地或通過路由器上的不同物理接口存在。

使用訪問控制列表 (ACL) 對感興趣的流量進行分類。正如我們所知,這些可以是標准的、擴展的或命名的訪問列表。

一旦感興趣的流量與 ACL 的使用“匹配”,路由器將執行由管理員定義的配置的“設置”功能。這個“設置”功能本質上告訴路由器如何處理匹配的流量,可以包括將其發送到另一個網關、丟棄它、將其優先於其他流量等等。

帶有 IP SLA 監控的基於策略的路由以實現自動故障轉移

本文將展示如何使用基於策略的路由來標記特定類型的流量,例如 http,並將其重定向到 Web 代理(通常是 Linux Squid),以便所有網絡 Web 流量都通過代理自動過濾。

在這樣的設置中,網絡用戶不知道代理的存在,因為他們不需要配置他們的網絡瀏覽器來使用代理。所有用戶流量都轉發到單個網關(Cisco ASA 防火牆),然后從那里轉發到路由器 R1。此示例是創建具有自動故障轉移功能的透明代理的好解決方案。

 

路由器 R1 在基於策略的路由的幫助下“標記”所有 http 流量,然后執行相應的“設置”功能,即將選定的流量重定向到 IP 地址為 192.168.150.2 的 Linux 代理。

Linux 代理接受流量,進行管理員定義的必要檢查,並通過 R2 路由器將其轉發到 Internet。

為了補充我們的解決方案,我們添加了 IP SLA 跟蹤,以便 R1 將持續監控 Linux 代理以確保它沒有出現故障或脫機。如果由於任何原因路由器 R1 失去與 Linux 代理的連接,IP SLA 和基於策略的路由機制將停止將 http 流量重定向到它並通過 R2 將其直接轉發到 Internet,從而有效地繞過失敗的代理。

下圖顯示了路由器 R1 如何響應上述 Linux 代理的故障:

 

該解決方案巧妙地將思科的基於策略的路由與 IP SLA 跟蹤相結合,並提供了許多優勢,其中一些優勢是:

  • 將選定的 (http) 流量自動重定向到 Linux 代理。
  • 對所有網絡用戶透明的網絡代理,根據公司政策進行網絡過濾。
  • 代理失敗時的自動故障轉移。停機時間接近於零。
  • 故障后持續監控代理 - 如果代理重新聯機,則自動恢復。

注意:可以在我們的使用 IP SLA(基本)配置靜態路由跟蹤一文中找到更多 IP SLA 跟蹤示例

如何為主機配置 IP SLA 跟蹤

第一步是為所需的主機配置 IP SLA 跟蹤。這將確保 R1 路由器將持續監控 Linux 代理,並在失敗時停止將 http 流量重定向到它:

R1(config)#  ip sla 1
R1(config-ip-sla)#  icmp-echo 192.168.150.2
R1(config-ip-sla)#  frequency 4
R1(config-ip-sla)#  timeout 2000
R1(config-ip) -sla)#  threshold 100
R1(config-ip-sla)#  ip sla schedule 1 life always start-time now

上述配置在路由器 R1 上定義並啟動 IP SLA 探測。

ICMP Echo 探測器4向 IP 192.168.150.2發送一個 ICMP Echo (ping) 數據包,如頻率參數所定義

超時設置 Cisco IOS IP SLA 操作等待來自其請求數據包的響應的時間量(以毫秒為單位)。這已設置為2000毫秒或 2 秒,這使主機有足夠的時間進行響應。

閾值設置生成反應事件並存儲 Cisco IOS IP SLA 操作的歷史信息的上升閾值。

定義 IP SLA 操作后,下一步是定義跟蹤 SLA 探針的對象。這可以通過使用 IOS 跟蹤對象來完成,如下所示:

R1(config)#  track 1 ip sla 1 可達性

上述命令將跟蹤 IP SLA 操作的狀態。如果沒有來自受監控 IP 地址 (192.168.150.2) 的 ping 響應,則跟蹤將關閉並在 IP SLA 操作再次開始接收 ping 響應時恢復。

要驗證軌道狀態,請使用“ show track ”命令,如下所示:

R1# show track 1
Track 1
  IP SLA 1 reachability
  Reachability is Up
    30 changes, last change 1d08h
  Latest operation return code: OK
  Latest RTT (millisecs1
  Tracked by:
    ROUTE-MAP 0

命令輸出驗證被跟蹤的對象是UP並且具有1ms的響應時間再仔細一看顯示的是,在跟蹤期間,國家已經改變了30次和最后一次變化是1天13小時前如果有必要對用戶報告的間歇性問題進行故障排除,則此信息非常重要。

如何配置基於策略的路由以重定向選定的 (HTTP) 流量

一旦我們啟動並運行了 IP SLA,下一步就是配置 PBR,以便我們可以重定向 http 流量。

首先,我們需要使用訪問控制列表來選擇我們要重定向的流量。請記住,PBR 不限制可以使用的 ACL 類型。這意味着您可以使用 IP 命名 ACL、標准 ACL、擴展 ACL、基於時間的 ACL 等。在我們的示例中,我們將使用 IP 命名的 ACL:

R1(config)#  ip access-list extended http-traffic
R1(config)#  permit tcp 192.168.5.0 0.0.0.255 any eq www

我們決定將我們的 IP 命名 ACL 命名為“ http-traffic ”。這個唯一的 ACL 名稱稍后將在我們的路由映射中使用。通過在 ACL 中進行適當的更改,我們可以定義將被重定向的不同類型的流量。在我們的示例中,所有來自192.168.5.0網絡且目的地為 Internet(任何)的http流量被選中。

現在我們必須創建一個路由映射,它將使用上面定義的 ACL 並指示路由器將流量重定向到 Linux 代理:

R1(config)#  route-map linux-proxy permit 1
R1(config-route-map)#   match ip address http-traffic
R1(config-route-map)#   set ip next-hop verify-availability 192.168.150.2 1 track 1

上面的命令創建了一個名為linux-proxy的許可路由映射路由映射中匹配 IP 地址參數通知路由器哪一組 ACL 定義了我們感興趣的流量。由於我們已經使用 IP 命名的 ACL 定義了我們感興趣的流量,因此我們需要做的就是引用我們的 ACL 的名稱之前創建的。

最后一個命令配置路由映射以驗證跟蹤對象 ( 192.168.150.2 )的可達性如果被跟蹤的對象 是可達的(IP SLA 報告它是可達的),那么我們的基於策略的路由會將定義的流量重定向到它。如果跟蹤目標不可達,(IP SLA報告主機不可達, -下),那么我們的基於策略的路由將停止重定向

應用策略路由

我們快完成了。最后一步是啟用和識別要用於策略路由的路由映射。這是通過選擇將啟用策略路由的路由器接口並應用策略路由來執行的:

R1(config)#  interface Vlan1
R1(config-int)#   ip policy route-map linux-proxy

在我們的場景中,R1 的   VLAN1 接口連接到ASA 和 Linux 代理所在 192.168.150.0/24 網絡,因此我們對其應用策略路由。

路由映射和 IP SLA 統計

通過使用幾個簡單的命令,可以密切關注路由器的路由映射和 IP SLA 性能。在前幾天監控路由圖的性能是一個很好的主意,因為這將有助於驗證流量是否仍在重定向到主機。

另一方面,查看 IP SLA 統計數據將有助於識別任何人都沒有注意到的可能的故障或狀態變化。

該 節目路由映射命令是最喜歡的,因為它結合了足夠的信息來幫助驗證一切是否正常,因為它應該:

R1# show route-map
route-map linux-proxy, permit, sequence 1
  Match clauses:
    ip address (access-lists): http-traffic
  Set clauses:
    ip next-hop verify-availability 192.168.150.10 1 track 1  [ up]
  Policy routing matches:  3864291 packets, 511957007 bytes

此處顯示的數字可立即驗證我們的主機是否可訪問(up)並且 R1 已通過 Linux 代理重定向了超過510MB的流量!

節目IP SLA統計命令提供了類似的方式有用的信息,幫助驗證對象跟蹤正常工作,並跟蹤主機已啟動:

R1# show ip sla statistics
IPSLAs Latest Operation Statistics

IPSLA operation id: 1
Latest RTT: 1 milliseconds
Latest operation start time: *21:36:47.855 UTC Tue Apr 3 2012
Latest operation return code: OK
Number of successes: 16
Number of failures: 0
Operation time to live: Forever


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM