2021-03-02 03:41 PM 2021-03-02 03:52 PM 更新
このドキュメントでは、Cisco Nexus VXLAN EVPN での VXLAN OAM の簡単な解説と基本的な使用方法を解説します。
本稿は「Cisco Nexus シリーズ VXLAN EVPN VXLAN OAM Part.1/3」の続きとなっています。
Part.1 をご覧になっていない方は先にそちらをご覧ください。
本稿では上記のような 2 台の Leaf が 2 台の Spine に繋がっている構成を考えます。
Leaf01 から Leaf02 に VXLAN パケットを転送するには 2 台ある Spine のうちのどちらかを通過することになります。
"ping nve" コマンド及び "traceroute nve" コマンドを利用するためにはそれを実行する Leaf で VXLAN OAM を有効化する必要があります。
そのため、これから上記コマンドを実行する Leaf01 で下記のコマンドを実行して、VXLAN OAM を有効化しました。
Leaf01(config)# feature ngoam
VXLAN OAM では Overlay Network 上にあるホストへの到達性を確認するために Leaf から Endpoint へ ping を送信するための "ping nve" コマンドを備えています。
このコマンドでは到達性の確認に通常の ICMP を用いています。
特徴としては通常の "ping" コマンドと大差がありませんが、"verbose" オプションを付けることで VXLAN パケットの送信元ポートなどを知ることが出来ます。
Leaf01# ping nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Sender handle: 14 !!!!! Sent 5, Received 5, Success rate is 100 percent Round-trip min/avg/max = 2/2/5 ms Total time elapsed 98 ms
Leaf01# Leaf01# ping nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Sender handle: 16 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 6 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 4 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 Sent 5, Received 5, Success rate is 100 percent Round-trip min/avg/max = 2/3/6 ms Total time elapsed 100 ms
ICMP を運ぶVXLAN パケットを送出するポート番号を指定して ping を打つことも出来ます。
下記では VXLAN パケットを送出するポートとして、65000 番を指定しました。
Leaf01# ping nve ip 192.168.120.1 vrf vxlan-11000 sport 65000 source 192.168.110.254 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Sender handle: 116 ! size 250,Reply from Unknown (192.168.120.1),time = 3 ms Pkt sent on sport = 65000 ! size 250,Reply from Unknown (192.168.120.1),time = 4 ms Pkt sent on sport = 65000 ! size 250,Reply from Unknown (192.168.120.1),time = 6 ms Pkt sent on sport = 65000 ! size 250,Reply from Unknown (192.168.120.1),time = 4 ms Pkt sent on sport = 65000 ! size 250,Reply from Unknown (192.168.120.1),time = 61 ms Pkt sent on sport = 65000 Sent 5, Received 5, Success rate is 100 percent Round-trip min/avg/max = 3/15/61 ms Total time elapsed 162 ms
更に特定の Uplink Interface から ICMP パケットを運ぶ VXLAN のパケットを送出することも出来ます。
下記では Ethernet 1/55 から VXLAN パケットを送出するよう指定しました。
Leaf01# ping nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 egress eth1/55 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Sender handle: 118 ! size 250,Reply from Unknown (192.168.120.1),time = 3 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 10 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 ! size 250,Reply from Unknown (192.168.120.1),time = 2 ms Pkt sent on sport = 32466 Sent 5, Received 5, Success rate is 100 percent Round-trip min/avg/max = 2/3/10 ms Total time elapsed 103 ms
"traceroute nve" は Underlay と Overlay の Leaf 及び Spine、Endpoint の情報を得ることが出来ます。
このコマンドでは通常の ICMP を用いて、Underlay と Overlay の経路を確認しています。
なお、ここでは "verbose" オプションを付加しても得られる情報に特に差はありません。
下記のように Leaf01 から Leaf02 までに経由した Spine と VTEP のアドレスが表示されています。
Leaf01# traceroute nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Traceroute Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 68 1 !Reply from 192.168.10.1,time = 1 ms 2 !Reply from 22.22.22.22,time = 1 ms 3 !Reply from 192.168.120.1,time = 2 ms
Leaf01# traceroute nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Traceroute Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 70 1 !Reply from 192.168.10.1,time = 1 ms 2 !Reply from 22.22.22.22,time = 1 ms 3 !Reply from 192.168.120.1,time = 3 ms
また、"traceroute nve" コマンドでも ICMP を運ぶ VXLAN パケットを送出するポートを指定できます。
下記では 65001番を指定しました。
Leaf01# traceroute nve ip 192.168.120.1 vrf vxlan-11000 sport 65001 source 192.1 68.110.254 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Traceroute Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 122 1 !Reply from 192.168.10.1,time = 1 ms 2 !Reply from 22.22.22.22,time = 1 ms 3 !Reply from 192.168.120.1,time = 1 ms
ICMP を運ぶ VXLAN パケットを送出する Uplink Interface も指定できます。
下記では Ethernet 1/55 を送出する Uplink Interface として指定しました。
Leaf01# traceroute nve ip 192.168.120.1 vrf vxlan-11000 source 192.168.110.254 egress eth1/56 verbose Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Traceroute Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 2 1 !Reply from 192.168.11.1,time = 1 ms 2 !Reply from 22.22.22.22,time = 1 ms 3 !Reply from 192.168.120.1,time = 5 ms
"pathtrace nve" コマンドを実行するには目的のスイッチまでの途中の全ての機器が VXLAN OAM を有効化している必要があります。
そのため、Spine01、Spine02、Leaf02 でVXLAN OAM を有効化するために下記のコマンドを実行しました。
Spine01(config)# feature ngoam Spine02(config)# feature ngoam Leaf02(config)# feature ngoam
"pathtrace nve" コマンドは NVO3 draft Tissa channels を利用して通過した Interface の情報や VXLAN で送信元 IP アドレスや宛先 IP アドレス、ポート番号などを具体的に指定したパケットがどの経路を流れるかなどを知ることが出来ます。
下記ではまず、最も簡単な Leaf01 から Leaf02 への経路を調べています。
下記の例では "verbose" オプションを付けることで通過したスイッチの Hostname が表示できます。
Leaf01# pathtrace nve ip 22.22.22.22 vni 11000 Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Path trace Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 94 Hop Code ReplyIP IngressI/f EgressI/f State Delay =============================================================== 1 !Reply from 192.168.11.1, Eth1/51 Eth1/52 UP / UP 0 2 !Reply from 22.22.22.22, Eth1/56 Unknown UP / DOWN 0
Leaf01# pathtrace nve ip 22.22.22.22 vni 11000 verbose Path trace Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 96 Hop Code ReplyIP IngressI/f EgressI/f State Delay =============================================================== 1 !Reply from 192.168.11.1, (Spine02) Eth1/51 Eth1/52 UP / UP 0 2 !Reply from 22.22.22.22, (Leaf02) Eth1/56 Unknown UP / DOWN 0
更に具体的な Interface の情報を知りたい場合は "req-stats" オプションを使い、"show ngoam pathtrace database session X detail" コマンド (Xはセッション番号) を使うことでその VXLAN パケットが通過した Interface の詳細な情報を取得できます。
下記では Leaf01 から Leaf02 までの経路での Interface の情報を見ています。
Leaf01# pathtrace nve ip 22.22.22.22 vni 11000 req-stats Codes: '!' - success, 'Q' - request not sent, '.' - timeout, 'D' - Destination Unreachable, 'X' - unknown return code, 'm' - malformed request(parameter problem), 'c' - Corrupted Data/Test, '#' - Duplicate response, 'v' - Other - Use verbose to see the result Path trace Request to peer ip 22.22.22.22 source ip 11.11.11.11 Sender handle: 10 <<< これがセッション番号 Hop Code ReplyIP IngressI/f EgressI/f State Delay =============================================================== 1 !Reply from 192.168.11.1, Eth1/51 Eth1/52 UP / UP 0 2 !Reply from 22.22.22.22, Eth1/56 Unknown UP / DOWN 0 Leaf01# show ngoam pathtrace database session 10 detail Pathtrace entry for session id 10 ================================ Start time: Thu Feb 18 11:08:39.411 UTC End time: Thu Feb 18 11:08:39.422 UTC Last Clear of Summary Statistics: Never Pathtrace Requests: sent (2)/received (0)/timeout (0)/unsent (0)/sw fwd (0)/drop (0) Pathtrace Replies: sent (0)/received (2)/unsent (0)/duplicate (0)/sw fwd (0)/drop (0) 1 ! Reply from 192.168.11.1 on Eth1/51, state UP. Sent on Eth1/52, state UP. Interface stats for interface: Eth1/51 ------------------------------- Rx Len : 84 Rx Bytes : 24166 Rx Pkt rate : 0 Rx Byte rate : 67 Rx Load : 10 Rx Unicast pkts : 75 Rx Mcast pkts : 131 Rx Bcast pkts : 3 Rx Discards : 0 Rx Errors : 0 Rx Unknown : 0 Rx Bandwidth : 40000000 Tx Len : 76 Tx Bytes : 24826 Tx Pkt rate : 0 Tx Byte rate : 52 Tx Load : 10 Tx Unicast pkts : 73 Tx Mcast pkts : 129 Tx Bcast pkts : 2 Tx Discards : 0 Tx Errors : 0 Tx Bandwidth : 40000000 Interface stats for interface: Eth1/52 ------------------------------- Rx Len : 84 Rx Bytes : 22347 Rx Pkt rate : 0 Rx Byte rate : 7 Rx Load : 10 Rx Unicast pkts : 66 Rx Mcast pkts : 125 Rx Bcast pkts : 3 Rx Discards : 0 Rx Errors : 0 Rx Unknown : 0 Rx Bandwidth : 40000000 Tx Len : 76 Tx Bytes : 23208 Tx Pkt rate : 0 Tx Byte rate : 8 Tx Load : 10 Tx Unicast pkts : 68 Tx Mcast pkts : 125 Tx Bcast pkts : 2 Tx Discards : 0 Tx Errors : 0 Tx Bandwidth : 40000000 2 ! Reply from 22.22.22.22 on Eth1/56, state UP. Interface stats for interface: Eth1/56 ------------------------------- Rx Len : 84 Rx Bytes : 23526 Rx Pkt rate : 0 Rx Byte rate : 8 Rx Load : 10 Rx Unicast pkts : 69 Rx Mcast pkts : 125 Rx Bcast pkts : 2 Rx Discards : 0 Rx Errors : 0 Rx Unknown : 0 Rx Bandwidth : 40000000 Tx Len : 76 Tx Bytes : 22347 Tx Pkt rate : 0 Tx Byte rate : 7 Tx Load : 10 Tx Unicast pkts : 66 Tx Mcast pkts : 125 Tx Bcast pkts : 3 Tx Discards : 0 Tx Errors : 0 Tx Bandwidth : 40000000以上が Part.2 になります。
Nexus スイッチ (NX-OS) : 設定例
Cisco Nexus シリーズ : VXLAN EVPN 基本設定
Cisco Nexus シリーズ : VXLAN EVPN L3VNI 基本設定
Cisco Nexus シリーズ VXLAN EVPN VXLAN OAM Part.1/3
Cisco Nexus シリーズ VXLAN EVPN VXLAN OAM Part.3/3
Configuring VXLAN OAM
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます