Cisco IOS IPサービス – Object Trackingの設定

スポンサーリンク

Object Trackingはルーティングテーブルの状態やIP SLAの結果を追跡する機能です。Object Trackingとは、IP SLAやルーティングテーブルの状態を追跡する仕組みです。このようなTrackをもとに、HSRPやルーティングテーブルを定義する事ができます。

コマンド一覧

このシナリオで重要なコマンド一覧は以下の通りです。

Router(config)# track <num> interface <interface> [ line-protocol | ip routing ]
Router(config-track)# delay { down | up } <sec>

Router(config)# track <num> ip route <route> [ reachability | metric threshold ]
Router(config-track)# threshold metric up <met> down <met>
Router(config-track)# 

Router(config)# track <num> rtr <rtr_num> [ reachability | state ]

Router(config)# track <num> list boolean [ and | or ]
Router(config-track)# object <num>

構成図

以下の環境で動作確認を行います。

                   e0/0      e0/1
                   .2+--------+.2
               ┌----+   R2   +--┐
         e0/0  │    +--------+  │
 +--------+.1  │                │
 |   R1   +----┤                │
 +--------+    │                │
               │    +--------+  │
               └----+   R3   +--┘
                   .3+--------+.3
                   e0/0      e0/1
       192.168.123.0/24      192.168.23.0/24

 R1 Loopback0     R2 Loopback0     R2 Loopback0
 10.1.1.1/32      10.2.2.2/32      10.3.3.3/32
 [R1]
router ospf 1
 network 0.0.0.0 255.255.255.255 area 0

 [R2]
router ospf 1
 network 0.0.0.0 255.255.255.255 area 0

 [R3]
router ospf 1
 network 0.0.0.0 255.255.255.255 area 0

設定全文は下記ファイルです。ルーティングなどの詳細設定は下記を参照ください。

R1
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R1
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.1.1.1 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.123.1 255.255.255.0
 half-duplex
!
interface Ethernet0/1
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/2
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
!
router ospf 1
 log-adjacency-changes
 network 0.0.0.0 255.255.255.255 area 0
!
ip http server
ip forward-protocol nd
!
!
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end
R2
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R2
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.2.2.2 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.123.2 255.255.255.0
 half-duplex
!
interface Ethernet0/1
 ip address 192.168.23.2 255.255.255.0
 half-duplex
!
interface Ethernet0/2
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
!
router ospf 1
 log-adjacency-changes
 network 0.0.0.0 255.255.255.255 area 0
!
ip http server
ip forward-protocol nd
!
!
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end
R3
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R3
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
memory-size iomem 5
!
!
ip cef
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface Loopback0
 ip address 10.3.3.3 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.123.3 255.255.255.0
 half-duplex
!
interface Ethernet0/1
 ip address 192.168.23.3 255.255.255.0
 half-duplex
!
interface Ethernet0/2
 no ip address
 shutdown
 half-duplex
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
!
router ospf 1
 log-adjacency-changes
 network 0.0.0.0 255.255.255.255 area 0
!
ip http server
ip forward-protocol nd
!
!
!
!
!
!
control-plane
!
!
!
!
mgcp behavior g729-variants static-pt
!
!
!
!
!
line con 0
line aux 0
line vty 0 4
 login
!
!
end

interface tracking

仕様説明

interfaceの状態を追跡したい場合は、以下のような設定を投入します。”line-protocol”を指定すると、Layer 2の状態を追跡できます。ip routingを指定したすると、Layer 2の状態に加えIPアドレスが割り当てられているかどうかも含め追跡できます。DHCPやPPP IPCPによるアドレス割り当てができているかどうかを追跡したい場合はこのオプションを指定すると良いでしょう。

また、追跡した結果がすぐに反映しないようdelayの指定も可能です。フラッピングによる影響を軽減したい場合は、この設定を使用すると効果的です。

Router(config)# track <num> interface <interface> [ line-protocol | ip routing ]
Router(config-track)# delay { down | up } <sec>

動作確認

以下Object Trackingを定義します。

 [R1]
track 1 interface Loopback 0 line-protocol

interfaceの状態に応じて、trackの状態も変わった事を確認します。

 [R1]
R1(config)#int lo0
R1(config-if)#shut
R1(config-if)#
*Mar  1 00:21:14.011: %TRACKING-5-STATE: 1 interface Lo0 line-protocol Up->Down
*Mar  1 00:21:16.011: %LINK-5-CHANGED: Interface Loopback0, changed state to administratively down
*Mar  1 00:21:17.011: %LINEPROTO-5-UPDOWN: Line protocol on Interface Loopback0, changed state to down
R1(config-if)#^Z
R1#
*Mar  1 00:21:21.199: %SYS-5-CONFIG_I: Configured from console by console
R1#
R1#
R1#show track
Track 1
  Interface Loopback0 line-protocol
  Line protocol is Down (hw admin-down)
    2 changes, last change 00:00:13
R1#

routing tracking

仕様説明

ルーティングテーブルを追跡する場合は以下のような設定になります。”reachability”を指定した場合はルーティングテーブルに存在するかどうかのみを追跡し、”metric threshold”を指定した場合はmetricに応じてup/downが変わります。

 [R1]
Router(config)# track <num> ip route <route> [ reachability | metric threshold ]
Router(config-track)# threshold metric up <met> down <met>
Router(config-track)# 

動作確認

以下Object Trackingを定義します。R3 lo0(10.3.3.3/32)へのmetricが20以下かどうかを追跡します。

 [R1]
track 2 ip route 10.3.3.3/32 metric threshold
 threshold metric up 20 down 21

R3 e0/0をshutさせます。

 [R3]
R3(config)#int e0/0
R3(config-if)#shut
R3(config-if)#
*Mar  1 00:06:42.907: %OSPF-5-ADJCHG: Process 1, Nbr 10.2.2.2 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached
*Mar  1 00:06:42.911: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.123.1 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Interface down or detached
*Mar  1 00:06:44.895: %LINK-5-CHANGED: Interface Ethernet0/0, changed state to administratively down
*Mar  1 00:06:45.895: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to down
R3(config-if)#

R3 lo0(10.3.3.3/32)へのmeticが11から21に増え、trackの状態が変わった事を確認します。

 [R1]
R1#
*Mar  1 00:07:45.655: %TRACKING-5-STATE: 2 ip route 10.3.3.3/32 metric threshold Up->Down
*Mar  1 00:08:03.703: %OSPF-5-ADJCHG: Process 1, Nbr 10.3.3.3 on Ethernet0/0 from FULL to DOWN, Neighbor Down: Dead timer expired
R1#
R1#show ip route | i 10\\.3
O       10.3.3.3 [110/21] via 192.168.123.2, 00:00:27, Ethernet0/0
R1#
R1#
R1#show track 2
Track 2
  IP route 10.3.3.3 255.255.255.255 metric threshold
  Metric threshold is Down (OSPF/21/21)
    2 changes, last change 00:00:32
  Metric threshold down 21 up 20
  First-hop interface is Ethernet0/0
R1#

ip sla tracking

仕様説明

以下のコマンドでIP SLAの状態を追跡できます。”reachability”, “state”の違いは、”Over threshold”の取り扱い方です。

reachability state
OK Up Up
Over threshold Up Down
NG Down Down
 [R1]
Router(config)# track <num> rtr <rtr_num> [ reachability | state ]

動作確認

以下のIP SLAとObject Trackingを定義します。R2 lo0(10.2,2,2/32)へping応答がthreshold(10msec)以内に返ってくるかを追跡します。

 [R1]
ip sla monitor 3
 type echo protocol ipIcmpEcho 10.2.2.2
 timeout 500
 threshold 10
 frequency 10
ip sla monitor schedule 3 life forever start-time now
!
track 3 rtr 3 state

10msec以内かどうかに応じて、trackの状態が変わる事を確認します。

 [R1]
R1#show ip sla monitor statistics 3
Round trip time (RTT)   Index 3
        Latest RTT: 20 ms
Latest operation start time: *00:03:06.711 UTC Fri Mar 1 2002
Latest operation return code: Over threshold
Number of successes: 6
Number of failures: 0
Operation time to live: Forever


R1#
R1#show track 3
Track 3
  Response Time Reporter 3 state
  State is Down
    1 change, last change 00:00:28
  Latest operation return code: Over threshold
  Latest RTT (millisecs) 20
R1#

tracking list

仕様説明

以下のコマンドで、複数のtrackを追跡できます。

 [R1]
Router(config)# track <num> list boolean [ and | or ]
Router(config-track)# object <num>

動作確認

以下Object Trackingを定義します。
track 2, track 3のいずれかがupであるかどうかを追跡します。

 [R1]
track 4 list boolean or
 object 2
 object 3

複数のtrackの状態を追跡している事を確認します。

R1#show track 4
Track 4
  List boolean or
  Boolean OR is Up
    2 changes, last change 00:00:08
    object 2 Up
    object 3 Down
R1#
タイトルとURLをコピーしました