【ハンズオン】AWSでCisco Catalyst 8000V for SD-WAN & Routingを立ち上げる＋検証してみた

いつも記事を読んでいただきありがとうございます！
モブエンジニア（[@mob-engineer](https://qiita.com/mob_engineer))です！

個人的に**AWSでCisco Catalyst 8000V for SD-WAN & Routing環境を構築できるのか**気になったので調査してみました。

### 前提

Market Placeでいくつか試してみてとりあえず構築できそうなものとして**Cisco Catalyst 8000V for SD-WAN & Routing**が見つかりましたので、そちらで試してみたいと思います。

:::note warn
Cisco Catalyst SD-WAN C8000v（仮想ルータ）のFree Plan用のライセンスもありましたが、日本国内のユーザの場合ライセンス条項で引っかかったので構築できないようです。
:::

### 想定読者

次のような悩みを抱えている方にお役立ていただければ幸いです。

- のっぴきならない事情でCisco Catalyst SD-WANの検証を行いたい方
- AWSでCiscoルータを触ってみたいと思う稀有な方
- ネットワークつよつよになりたいと思っている方

### 今回のゴール

次のことを達成することを目標としています。

- Cisco Catalyst 8000VをAWS環境で構築する
- 基本的なコマンドが実行できることを確認する

以下に関しては今回は対象外としております。

- Cisco Catalyst SD-WANで必要なManager・Controller・Validatorの構築
- cEdgeなどの物理機器へのConfig設定

:::note info
Cisco Catalyst SD-WANに関してよくわからない方向けにQiitaへブログを投稿しております。
https://qiita.com/mob_engineer/items/b59eaf78458825adb567
https://qiita.com/mob_engineer/items/931a93d7a714bc443ced
https://qiita.com/mob_engineer/items/990572e5881e12840a2b

詳細に関しては公式ドキュメントをご参照ください。

https://www.cisco.com/c/ja_jp/td/docs/solutions/CVD/SDWAN/cisco-sdwan-design-guide.html

また、今回構築するCisco Catalyst 8000Vドキュメントも公式からアップされているため、そちらもご確認ください。

https://www.cisco.com/c/ja_jp/td/docs/routers/C8000V/AWS/deploying-c8000v-on-amazon-web-services/overview.html

:::

## 作業手順

- AWSコンソール画面上部の検索ボックスへ**Market Place**と入力

![1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/8711153b-eb61-495b-8bc1-7d459a3db1e4.jpeg)

- 画面が遷移するため左側ペインの**製品を検出**をクリック
- クリック後、中央入力ボックスに**Cisco Catalyst 8000V for SD-WAN & Routing**と入力
- 検索結果が表示されるため検索結果をクリック

![2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/71d2c447-6c7d-4a0f-860c-4a098471786e.jpeg)

- Cisco Catalyst 8000V for SD-WAN & Routingのマーケットプレイス画面が表示されるため、**View purchase options**ボタンをクリック

![3.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/c23f7092-3dd5-4ab3-853c-cc2ef1885245.jpeg)

:::note info
以下URLからマーケットプレイス画面へ遷移することは可能です。

https://aws.amazon.com/marketplace/pp/prodview-rohvq2cjd4ccg
:::

- 画面が遷移するため**Continue to Configuration**ボタンをクリック
    - 一定時間経過後、ボタンがクリックできるようになります

![4.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/c9001338-001e-4ac2-afba-0e08d2413fd7.jpeg)

- クリック後、Config設定画面が表示されます
- Regionが**Asia Pacific（Tokyo）**へ修正し**Continue to Launch**ボタンをクリック

![5.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/573e48f0-e761-4cdb-8081-f2b961f737ea.jpeg)

- 画面が遷移するため、**Choose Action**配下のプルダウンを**Launch through EC2**へ変更する
- 変更後、**Launch**ボタンをクリック

![6.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/9b86cb86-25ed-4b58-9385-feaeb81fa797.jpeg)

- EC2設定画面へ遷移するため適当なインスタンス名を入力する

![7.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/d3d4dcc5-3d76-446c-b121-816156e14bb4.jpeg)

- 任意のキーペアを選択し、**インスタンスの起動**ボタンをクリック

![8.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/6d5b381d-a55d-4810-b1b7-d49033c79aaa.jpeg)

- 一定時間経過後、**インスタンスの起動を正常に開始しました**のメッセージが表示される
- **すべてのインスタンスを表示**ボタンをクリック

![9.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/4994ea3a-5cc4-49a7-83de-90c9054b7824.jpeg)

- 一定時間経過後、インスタンスのステータスが**3/3のチェックに成功しました**となったら構築完了です
- Teratermを利用してインスタンスへ接続してください

![12.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/eeadd128-3e0a-4fde-86d2-0a61297ba3e0.jpeg)

## 各種コマンド実行

とりあえずC8000Vを構築できたので、いくつかコマンド実行してみたいと思います。

:::note info
Cisco Catalyst SD-WANに関しては以下コマンドリファレンスがありますのでそちらをご参照ください。

https://www.cisco.com/c/en/us/td/docs/routers/sd-routing/command/reference/sd-routing-cr-book/dapr-cr-book_chapter_01.html
:::

#### show version
```
ip-172-31-34-128#show version
Cisco IOS XE Software, Version 17.15.02a
Cisco IOS Software [IOSXE], Virtual XE Software (X86_64_LINUX_IOSD-UNIVERSALK9-M), Version 17.15.2a, RELEASE SOFTWARE (fc7)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2025 by Cisco Systems, Inc.
Compiled Thu 06-Mar-25 19:10 by mcpre


Cisco IOS-XE software, Copyright (c) 2005-2025 by cisco Systems, Inc.
All rights reserved.  Certain components of Cisco IOS-XE software are
licensed under the GNU General Public License ("GPL") Version 2.0.  The
software code licensed under GPL Version 2.0 is free software that comes
with ABSOLUTELY NO WARRANTY.  You can redistribute and/or modify such
GPL code under the terms of GPL Version 2.0.  For more details, see the
documentation or "License Notice" file accompanying the IOS-XE software,
or the applicable URL provided on the flyer accompanying the IOS-XE
software.


ROM: IOS-XE ROMMON

ip-172-31-34-128 uptime is 13 minutes
Uptime for this control processor is 15 minutes
System returned to ROM by reload
System image file is "bootflash:packages.conf"
Last reload reason: Unknown reason



This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
export@cisco.com.


Technology Package License Information:
Controller-managed

The current throughput level is 20000 kbps


Smart Licensing Status: Smart Licensing Using Policy

cisco C8000V (VXE) processor (revision VXE) with 1892243K/3075K bytes of memory.
Processor board ID 9NRP91KBRS6
Router operating mode: Autonomous (SD-Routing)
1 Gigabit Ethernet interface
32768K bytes of non-volatile configuration memory.
5000596K bytes of physical memory.
11526144K bytes of virtual hard disk at bootflash:.

Configuration register is 0x2102

ip-172-31-34-128#
```

#### show running-config
```
ip-172-31-34-128#show running-config
Building configuration...

Current configuration : 6572 bytes
!
! Last configuration change at 14:13:07 UTC Mon Mar 31 2025 by ec2-user
!
version 17.15
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
platform qfp utilization monitor load 80
platform sslvpn use-pd
platform console virtual
!
hostname ip-172-31-34-128
!
boot-start-marker
boot-end-marker
!
!
vrf definition GS
 rd 100:100
 !
 address-family ipv4
 exit-address-family
!
logging persistent size 1000000 filesize 8192 immediate
aaa new-model
!
!
aaa authentication login default local
aaa authorization exec default local none
!
!
aaa session-id common
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
login on-success log
!
!
subscriber templating
ipv6 unicast-routing
!
!
!
crypto pki trustpoint TP-self-signed-3782309302
 enrollment selfsigned
 subject-name cn=IOS-Self-Signed-Certificate-3782309302
 revocation-check none
 rsakeypair TP-self-signed-3782309302
 hash sha512
!
crypto pki trustpoint SLA-TrustPoint
 enrollment pkcs12
 revocation-check crl
 hash sha512
!
!
crypto pki certificate chain TP-self-signed-3782309302
 certificate self-signed 01
  30820330 30820218 A0030201 02020101 300D0609 2A864886 F70D0101 0D050030
  31312F30 2D060355 04030C26 494F532D 53656C66 2D536967 6E65642D 43657274
  69666963 6174652D 33373832 33303933 3032301E 170D3235 30333331 31343035
  34375A17 0D333530 33333131 34303534 375A3031 312F302D 06035504 030C2649
  4F532D53 656C662D 5369676E 65642D43 65727469 66696361 74652D33 37383233
  30393330 32308201 22300D06 092A8648 86F70D01 01010500 0382010F 00308201
  0A028201 0100A2BD 2092EB3F 3A9C1C18 F3F04F95 847A5122 82DD97E0 55AC1145
  AC91A238 620E6EF8 7994251E F609513A 83229BD3 205F856F 9A229B82 637893F6
  7AA314BD D3679CA9 9C0769CF 7DB9FA9E C53D1C59 0EB7B6BE 2C392CEB B7742317
  71537E61 75616E30 BC71A24D 67055E3E 69161F5D 285605B6 B21DFB4A 66373B21
  A37F6E7E 8C69F1E0 AADD7E8D E5BEA8D3 E9B35588 463C9E4C 48D3C5A3 686AA4F9
  C9BEF1A0 562C1EBA 8558F171 F951FEC5 44B18757 C97D86C1 244AE841 DADC83C8
  72EA00FA 88B2627D B63D606F 3F11DD47 02F3659C F083873E 7D527288 107C4CD4
  F0882E23 A4BADA2D 9519B11A D959CFC4 3C8678A5 D1F7FD46 AC68C88E 097B57DF
  952D7F78 2B1F0203 010001A3 53305130 1D060355 1D0E0416 041478EA D363CC8B
  89E1CA02 889FD43B EB77A28F 7302301F 0603551D 23041830 16801478 EAD363CC
  8B89E1CA 02889FD4 3BEB77A2 8F730230 0F060355 1D130101 FF040530 030101FF
  300D0609 2A864886 F70D0101 0D050003 82010100 77AB683C BF306342 7404BD3A
  7F54A538 B94BC65C 6491D762 37152441 D4E81FCE 5E25057E E1CDA101 E2C22105
  4EB1B56E 9C7B54DC D35D3F60 0C3EFE05 8493EE48 FD45C1F7 ECBBCC6E 0990BE72
  6377A712 A80CEE5A 2AEC5738 45D37228 D8C63C7C C256B62B E338558D D942B9A2
  15F5DA08 A2FEBEB6 5D097800 AFF524CB 482C4DF9 2CF00BD2 6404A05D E9FCEA15
  04350893 91AF7797 D729D3C5 E217711F DB298708 A39658A0 CE12A603 48C9D292
  58053BAB 4A0EBC58 874793F4 7E202ABD 28096BE6 43956BC5 CA691329 2BDEA9F6
  CD0C2B0A E56BFC15 BEC863EC D7F6D522 F6E5DD03 70BCBB54 AEE7C2F5 1D7A7313
  0DAE6D79 6DC7D626 4B60001B 9273BE1E 3AA1B4E1
        quit
crypto pki certificate chain SLA-TrustPoint
 certificate ca 01
  30820321 30820209 A0030201 02020101 300D0609 2A864886 F70D0101 0B050030
  32310E30 0C060355 040A1305 43697363 6F312030 1E060355 04031317 43697363
  6F204C69 63656E73 696E6720 526F6F74 20434130 1E170D31 33303533 30313934
  3834375A 170D3338 30353330 31393438 34375A30 32310E30 0C060355 040A1305
  43697363 6F312030 1E060355 04031317 43697363 6F204C69 63656E73 696E6720
  526F6F74 20434130 82012230 0D06092A 864886F7 0D010101 05000382 010F0030
  82010A02 82010100 A6BCBD96 131E05F7 145EA72C 2CD686E6 17222EA1 F1EFF64D
  CBB4C798 212AA147 C655D8D7 9471380D 8711441E 1AAF071A 9CAE6388 8A38E520
  1C394D78 462EF239 C659F715 B98C0A59 5BBB5CBD 0CFEBEA3 700A8BF7 D8F256EE
  4AA4E80D DB6FD1C9 60B1FD18 FFC69C96 6FA68957 A2617DE7 104FDC5F EA2956AC
  7390A3EB 2B5436AD C847A2C5 DAB553EB 69A9A535 58E9F3E3 C0BD23CF 58BD7188
  68E69491 20F320E7 948E71D7 AE3BCC84 F10684C7 4BC8E00F 539BA42B 42C68BB7
  C7479096 B4CB2D62 EA2F505D C7B062A4 6811D95B E8250FC4 5D5D5FB8 8F27D191
  C55F0D76 61F9A4CD 3D992327 A8BB03BD 4E6D7069 7CBADF8B DF5F4368 95135E44
  DFC7C6CF 04DD7FD1 02030100 01A34230 40300E06 03551D0F 0101FF04 04030201
  06300F06 03551D13 0101FF04 05300301 01FF301D 0603551D 0E041604 1449DC85
  4B3D31E5 1B3E6A17 606AF333 3D3B4C73 E8300D06 092A8648 86F70D01 010B0500
  03820101 00507F24 D3932A66 86025D9F E838AE5C 6D4DF6B0 49631C78 240DA905
  604EDCDE FF4FED2B 77FC460E CD636FDB DD44681E 3A5673AB 9093D3B1 6C9E3D8B
  D98987BF E40CBD9E 1AECA0C2 2189BB5C 8FA85686 CD98B646 5575B146 8DFC66A8
  467A3DF4 4D565700 6ADF0F0D CF835015 3C04FF7C 21E878AC 11BA9CD2 55A9232C
  7CA7B7E6 C1AF74F6 152E99B7 B1FCF9BB E973DE7F 5BDDEB86 C71E3B49 1765308B
  5FB0DA06 B92AFE7F 494E8A9E 07B85737 F3A58BE1 1A48A229 C37C1E69 39F08678
  80DDCD16 D6BACECA EEBC7CF9 8428787B 35202CDC 60E4616A B623CDBD 230E3AFB
  418616A9 4093E049 4D10AB75 27E86F73 932E35B5 8862FDAE 0275156F 719BB2F0
  D697DF7F 28
        quit
!
!
license udi pid C8000V sn 9NRP91KBRS6
memory free low-watermark processor 189210
diagnostic bootup level minimal
!
!
!
!
username ec2-user privilege 15
!
redundancy
!
!
!
!
!
!
!
!
!
!
interface VirtualPortGroup0
 vrf forwarding GS
 ip address 192.168.35.101 255.255.255.0
 ip nat inside
!
interface GigabitEthernet1
 ip address dhcp
 ip nat outside
 negotiation auto
 ipv6 address dhcp
 ipv6 enable
 ipv6 nd autoconfig default-route
!
iox
ip forward-protocol nd
ip tcp window-size 8192
!
ip http server
ip http secure-server
ip route 0.0.0.0 0.0.0.0 GigabitEthernet1 172.31.32.1
ip route vrf GS 0.0.0.0 0.0.0.0 GigabitEthernet1 172.31.32.1 global
ip nat inside source list GS_NAT_ACL interface GigabitEthernet1 vrf GS overload
ip ssh bulk-mode 131072
ip ssh rsa keypair-name ssh-key
ip ssh pubkey-chain
 username ec2-user
  key-hash ssh-rsa 20F55DF574092980C9981FCF4472EB7C
ip ssh server algorithm publickey ecdsa-sha2-nistp256 ecdsa-sha2-nistp384 ecdsa-sha2-nistp521 ssh-ed25519 ssh-rsa x509v3-ecdsa-sha2-nistp256 x509v3-ecdsa-sha2-nistp384 x509v3-ecdsa-sha2-nistp521
ip scp server enable
!
ip access-list standard GS_NAT_ACL
 10 permit 192.168.35.0 0.0.0.255
!
!
!
!
!
control-plane
!
!
line con 0
 stopbits 1
line aux 0
line vty 0 4
 transport input ssh
line vty 5 20
 transport input ssh
!
!
!
!
!
!
!
!
app-hosting appid guestshell
 app-vnic gateway1 virtualportgroup 0 guest-interface 0
  guest-ipaddress 192.168.35.102 netmask 255.255.255.0
 app-default-gateway 192.168.35.101 guest-interface 0
 name-server0 8.8.8.8
netconf-yang feature candidate-datastore
sd-routing
end
```

#### show vlan brief
```
ip-172-31-34-128#show vlan brief

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active
1002 fddi-default                     act/unsup
1003 token-ring-default               act/unsup
1004 fddinet-default                  act/unsup
1005 trnet-default                    act/unsup
```

show sd-router関連のコマンドに関しては実行できていなかったので、
vManageへの登録が必要なのかなぁと推察しています。

## 本ハンズオンによるメリット

個人的に本ハンズオンを通じて次のメリットがあると考えられます。

- Ciscoからライセンスを調達せずともCisco Catalyst C8000Vを触ることができる
    - 個人環境での検証ハードルを下げることができる
- AWSを用いたネットワーク設計の幅を広げることができる
    - AWS環境下でCiscoルータを構築できるため柔軟な運用ができる

ただし、現在リリースしている17.16.Xではないため実環境との差分は考慮する必要があるかと思います。
（個人的に、Cisco Catalyst SD-WAN関連の検証がいい感じでできるので、CDKテンプレートも作成するとより良いのかなぁと思いました）

最後まで記事を読んでいただきありがとうございました。

#### 参考サイト

https://www.cisco.com/c/en/us/td/docs/routers/C8000V/AWS/deploying-c8000v-on-amazon-web-services/aws-migration-tool.html

https://www.cisco.com/c/en/us/td/docs/routers/C8000V/Release-Notes/c8000v-releasenotes-17-15.html

https://www.cisco.com/c/en/us/products/collateral/routers/catalyst-8000v-edge-software/catalyst-8000v-edge-software-ds.html