[Oracle Cloud] VPN対応ソフトウェアルータ NEC UNIVERGE IX-V100 をデプロイしてみてみた


NECの[UNIVERGE IX-Vシリーズ](https://www.necplatforms.co.jp/product/ix-v/)は、100万台以上の出荷実績を誇るVPN対応高速アクセスルータ「UNIVERGE IXシリーズ」のソフトウェアベースの仮想ルータがリリースされました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/3936b3e9-9417-e589-9b1d-c2b7117c3fa7.png)
コストパフォーマンスの高いクラウドサービス Oracle Cloud Infrastructure(OCI)に対応しており、OCI は特に通信量に対する単価設定がリーズナブルなため、高性能なソフトウェアルータ「UNIVERGE IX-V100」とは最適な組み合わせとなります。
主な機能は次のようなものがあります。
・IPv4基本性能 10Gbps、IPsec性能 4Gbps、IPsec最大1,000対地
・クラウド型統合管理サービス「NetMeister」対応
・UNIVERGE IXシリーズの操作感を継承
ということで、OCIへデプロイしてみてみます。

# ■ UNIVERGE IX-V100 ダウンロード
次のURLからダウンロードします。
・[UNIVERGE IX-Vシリーズ　ダウンロード](https://jpn.nec.com/univerge/ix-nrv/download.html?)
![00_ダウンロード画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/17b2cdc1-0665-43cf-ccf1-5c4b1d0edab1.png)

# ■ IX-Vシリーズ　利用規約関連 
UNIVERGE IX-Vシリーズを利用する際の利用規約になります。製品を利用する前に必ずご確認ください。
・[IX-Vシリーズ　利用規約](https://jpn.nec.com/univerge/ix-nrv/Manual/eula/IX-V_EULA.pdf)

# ■ OCI カスタムイメージ作成
## ● Object Storaege Backetへ ダウンロードしたイメージをアップロード

**1) OCI コンソール画面**
[ストレージ] > [オブジェクトストレージとアーカイブ・ストレージ] > [バケット] をクリック
![01_BacketへImageアップロード00.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/912c3e30-f948-8290-cf21-af86f07cfd81.jpeg)




**2) バケット 画面**
作成したバケットを選択し、[アップロード]をクリックしてダウンロードした UNIVERGE IX-V100 をアップロードします。
![01_BacketへImageアップロード01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/36b9500c-726d-4468-fdbb-ce56f301e826.jpeg)



**3) アップロード確認**
アップロードされたことを確認
![01_BacketへImageアップロード02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/244c8aea-526d-9f93-99ed-3755069a9a46.jpeg)


## ● カスタムイメージへ変換

**1) OCIコンソール画面**
[コンピュート] > [カスタム・イメージ] をクリック
![02_カスタムイメージ作成01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/a627f68e-5387-cce7-711e-8024ea59f00a.jpeg)


**2) コンピュート画面**
[イメージのインポート]をクリックし次を入力し、[イメージのインポート]をクリック
```
  ・名前: 任意の名前を入力
  ・オペレーティング・システム: なんでもOk
  ・バケット: アップロードしたバケットを選択
  ・オブジェクト名: アップロードしたファイル名を選択
  ・イメージ・タイプ: [QCOW2]を選択
  ・起動モード: [準仮想化モード]を選択
```
![02_カスタムイメージ作成02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0f8b3f87-5d02-931a-504d-e710725cb5d9.jpeg)



**3) カスタム・イメージ画面**
カスタム・イメージが作成されたことを確認
![02_カスタムイメージ作成04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/ed6ebb34-b8dc-0870-19af-7e294c38442f.jpeg)



# ■ UNIVERGE IX-V100インスタンス作成
**1) OCIコンソール画面**
[コンピュート] > [インスタンス] をクリック
![03_インスタンス作成00.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/5c977034-e881-3f06-22d2-22440f79c565.jpeg)

**2) インスタンス画面**
[インスタンスの作成]をクリック
![03_インスタンス作成01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/53cbca3b-84e5-681a-1af3-f254532c2ef3.jpeg)



**3) コンピュート・インスタンスの作成画面**
以下項目を入力し、[作成]をクリック
```
  ・名前: 任意の名前を選択
  ・イメージとシェイプ: 以下「イメージの選択画面」と全ての「シェイプの参照画面」を参照
  ・プライマリ・ネットワーク: 配置するVCNを選択
  ・サブネット: 配置するサブネットを選択
  ・起動オプション: '準仮想化ネットワーク'を選択
```
![03_インスタンス作成04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/bbfcf20b-2405-9906-5b85-4145fdd9ef24.jpeg)


**・イメージの選択画面**
[マイ・イメージ] をクリックし、作成したカスタム・イメージをクリックし、[イメージの選択]をクリック
![03_インスタンス作成02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/be577ad4-272e-4ea0-0269-e0f6a97367b0.jpeg)


**・全てのシェイプの参照画面**
以下項目を入力し、[シェイプの選択]をクリック
```
  ・インスタンス・タイプ: '仮想マシン'を選択
  ・シェイプ・シリーズ: 'Intel'を選択
  ・Shape Name: ’VM.Standard3.Flex’ を選択
  ・OCPU数: 3以上を選択
  ・メモリー量: '10'を入力
```
![03_インスタンス作成03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0124dfa0-8905-518d-84dd-078cac471d28.jpeg)


**4) 作成完了**
![03_インスタンス作成06.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/2638152d-0b72-81f9-23d7-5710e47017eb.jpeg)





# ■ コンソール接続
**1) UNIVERGE IX-V100インスタンス画面**
リソース欄にある[コンソール接続]をクリックし、[Cloud SHell接続の起動]をクリック
![05_コンソール接続01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/bf1810a7-7789-82d1-0607-a8bb5d97fba8.jpeg)


**2) Cloud SHell画面**
![05_コンソール接続03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/9eed8a49-657f-7239-5eac-23bbe1cfdb33.jpeg)


```
Oracle Cloud Shellへようこそ。

テナンシorasejapanのCloud ShellをOCIのフェデレーテッド・ユーザーoracleidentitycloudservice/shirokとして使用しています

Running instance console connection version 1
Instance type is x86_64
Running from 1 folder
2023/05/29 04:12:28 Fetching instance info.
2023/05/29 04:12:29 Looking for existing console connections.
2023/05/29 04:12:36 Waiting for Instance Console Connection to complete transition. Current state: CREATING
2023/05/29 04:12:39 Instance Console Connection reached state: ACTIVE
2023/05/29 04:12:40 
=================================================
IMPORTANT: Use a console connection to troubleshoot a malfunctioning instance. For normal operations, you should connect to the instance using a Secure Shell (SSH) or Remote Desktop connection. For steps, see https://docs.cloud.oracle.com/iaas/Content/Compute/Tasks/accessinginstance.htm

For more information about troubleshooting your instance using a console connection, see the documentation: https://docs.cloud.oracle.com/en-us/iaas/Content/Compute/References/serialconsole.htm#four
=================================================

Router login:
```

**3) ログイン**
初期状態では、ユーザ名 admin 、パスワード admin でログインします。

```
Router login: admin
Password: admin

NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
Compiled Tue 28 Mar 2023 11:15:17 AM JST
Copyright (c) NEC Corporation 2023. All rights reserved.

Router(init)# 
```


**4) 初期コンフィグ確認**
```
Router(init)# terminal length 0
Router(init)# show running-config 
! NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
! Compiled Tue 28 Mar 2023 11:15:17 AM JST
! Current time May 29-Mon-2023 13:16:51 JST
!
timezone jst
!
!
!
!
!
!
!
!
!
!
!
device GigaEthernet0
!
interface GigaEthernet0.0
  no ip address
  shutdown
!
interface Loopback0.0
  no ip address
!       
interface Null0.0
  no ip address
!       
Router(init)# 
```

# ■ VNIC追加
VNICを追加することによって、UNIVERGE IX-Vシリーズのインタフェースを追加できます。

**1)VNICの作成画面**
リソース項目にある[アタッチされたVNIC]をクリックし、[VNIC]をクリックし、以下入力して[変更の保存]をクリック

![11_VNIC追加01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e449bdc7-201e-5813-d850-fd7ab65bbd3e.jpeg)


**2) アタッチされたVNIC**
![11_VNIC追加02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4cf25deb-a655-1e56-e020-243123ff7e73.jpeg)

    ・仮想クラウド・ネットワーク：配置するVCNを選択
    ・サブネット：配置するサブネットを選択


**3) 再起動**
再起動して追加したVNICを認識させます。
インスタンス起動後にVNICを追加した場合は、UNIVERGE IX-Vシリーズの再起動が必要です。
![11_VNIC追加03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/eb687119-6505-a431-7f58-117e0b677524.jpeg)


**4) interface GigaEthernet1.0 設定
追加したインタフェースのIPアドレスは固定設定にする必要があります。

```
IX-V100(config)# show running-config 
 ・・・
	!
	interface GigaEthernet1.0
	no ip address
	shutdown
	!
　 ・・・　　
IX-V100(config)# interface GigaEthernet1.0
IX-V100(config-GigaEthernet1.0)# description LAN1
IX-V100(config-GigaEthernet1.0)# ip address 10.0.254.254/24
```

**5) interface GigaEthernet1.0 設定確認**
```
IX-V100(config)# terminal length 0
IX-V100(config)# show running-config 
 ・・・
	!
	interface GigaEthernet1.0
	description LAN1
	ip address 10.0.254.254/24
	no shutdown
	!
　 ・・・　
```

**5) ping確認**
```
IX-V100(config)# ping 10.0.254.254
	PING 10.0.254.254 > 10.0.254.254 56 data bytes
	64 bytes from 10.0.254.254: icmp_seq=0 ttl=64 time=0.006 ms
	64 bytes from 10.0.254.254: icmp_seq=1 ttl=64 time=0.004 ms
	64 bytes from 10.0.254.254: icmp_seq=2 ttl=64 time=0.003 ms
	64 bytes from 10.0.254.254: icmp_seq=3 ttl=64 time=0.003 ms
	64 bytes from 10.0.254.254: icmp_seq=4 ttl=64 time=0.002 ms

	--- 10.0.254.254 ping statistics ---
	5 packets transmitted, 5 packets received, 0% packet loss
	round-trip (ms)  min/avg/max = 0.002/0.003/0.006
```

# ■ 管理ユーザの作成
## ● 管理ユーザ作成
```
Router(init)# username oracle password plain <パスワード> administrator 
% Password strength estimation: score 4(very strong).
% User 'oracle' has been added.
```
## ● 管理ユーザーログイン
**1) adminユーザー・ログアウト**
```
Router(init)# exit


  Wind River Linux LTS 19.45 Update 20 Router ttyS0
```

**2) 管理ユーザーログイン**
```
Router login: oracle <--管理ユーザー　入力
Password: <--パスワード入力して Enter
Last login: Mon Jul  3 14:43:43 JST 2023 on ttyS0

NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
Compiled Tue 28 Mar 2023 11:15:17 AM JST
Copyright (c) NEC Corporation 2023. All rights reserved.
```

# ■ コンフィグモード遷移
コンフィグモードは管理ユーザで実行できます。


**1) 通常接続**
通常は次のように configureコマンドでコンフィグモードへ遷移できます。

```
Router# configure
Router(config)#
```

**2) 割り込み接続**
他のセッションで利用されている場合、次のように割り込み接続できます。

```
IX-V100# configure
% CONFIG process is occupied.
% You may use `svintr-config' command with administrator privilege.
```

**2) 割り込まれた接続**
割り込まれた接続は次のようにコンフィグモードが強制終了されます。

```
IX-V100(config)# 
    % Configuration privilege has been intercepted.
IX-V100#
```

# ■ ホスト名の設定
```
Router(config)# hostname IX-V100
IX-V100(config)# 
```

# ■ インターネット接続の設定
WAN用 interface GigaEthernet0.0 へ DHCPを設定して IPアドレスとデフォルトルートを自動取得し、NAPTを有効にします。

**1) interface GigaEthernet0.0 設定**
・設定内容
```
interface GigaEthernet0.0
  ip address dhcp receive-default
  ip napt enable
  no shutdown
exit
```

・実行
```
Router(config)#  interface GigaEthernet0.0
Router(config-GigaEthernet0.0)# ip address dhcp receive-default
Router(config-GigaEthernet0.0)# ip napt enable
Router(config-GigaEthernet0.0)# no shutdown
Router(config-GigaEthernet0.0)# exit
```

**2) IPアドレス付与確認**
```
IX-V100(config)# show ip address 
Interface GigaEthernet0.0 is up, line protocol is up, 0:06:15
  Internet address is 10.0.251.251/24
  Address determined by DHCP
  Primary DNS server is 169.254.169.254
Interface Null0.0 is up, line protocol is up, 8:07:46
  Interface is unnumbered.
```

**3) Internet接続確認**
**・ping確認**
```
IX-V100(config)# ping 8.8.8.8
PING 10.0.251.251 > 8.8.8.8 56 data bytes
64 bytes from 8.8.8.8: icmp_seq=0 ttl=122 time=2.394 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=122 time=1.825 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=122 time=1.808 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=122 time=1.802 ms


--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip (ms)  min/avg/max = 1.802/1.957/2.394
```

**・FQDN接続確認**
```
IX-V100(config)# ping google.com
	Looking up ipv4 address for "google.com" ...Success
	PING 10.0.251.251 > 142.250.196.142 56 data bytes
	64 bytes from 142.250.196.142: icmp_seq=0 ttl=122 time=2.146 ms
	64 bytes from 142.250.196.142: icmp_seq=1 ttl=122 time=1.412 ms
	64 bytes from 142.250.196.142: icmp_seq=2 ttl=122 time=1.428 ms
	64 bytes from 142.250.196.142: icmp_seq=3 ttl=122 time=1.441 ms
	64 bytes from 142.250.196.142: icmp_seq=4 ttl=122 time=1.440 ms


	--- 142.250.196.142 ping statistics ---
	5 packets transmitted, 5 packets received, 0% packet loss
	round-trip (ms)  min/avg/max = 1.412/1.573/2.146
```

# ■ 時刻同期設定
時刻同期の設定をします。
OCI内のNTPサーバと同期します。

**1) 設定**
```
IX-V100(config)# ntp server 169.254.169.254
```

**2) 確認**
```
IX-V100(config)# show ntp
NTP status:
  Clock is not synchronized, reference is nothing
    Rcvd: 0 requests, 0 responses
    Sent: 0 requests, 0 responses
  NTP server      VRF name                            St  Ver   Timeout   Last Receive
  169.254.169.254   
```

# ■ syslog設定
syslogの有効とレベルの設定をします。
**1) 設定**
障害解析用として、すべての機能でwarnレベルを指定します。
```
IX-V100(config)# syslog enable
IX-V100(config)# syslog function all warn
```


**2)確認**
現在のsyslogは、show syslog コマンドで確認できます。
```
IX-V100(config)# show syslog
Buffer syslog enabled, 819200 bytes, type cyclic
  0 messages (0-0), 0 bytes logged, 0 messages dropped

Log Buffer (0-0):
```


# ■ SSHサーバーの設定
SSHを有効にし、接続ポートの変更とアクセス元IPアドレス帯の制限を行います。
例では、接続ポートを 22 、アクセス元IPアドレス帯を VCN CIDR: 10.0.0.0/16 とオンプレミスIPアドレス: 1.2.3.4/32 に設定
**1) 設定**
・設定内容
```
ssh-server ip port 22
ssh-server ip access-list ssh-acl
ip access-list ssh-acl permit ip src 10.0.0.0/16 dest any
ip access-list ssh-acl permit ip src 1.2.3.4/32 dest any

interface GigaEthernet0.0
	ip napt static GigaEthernet0.0 tcp 22
	ssh-server ip enable
	exit
```

・実行
```
Router(config)# ssh-server ip port 22
Router(config)# ssh-server ip access-list ssh-acl
Router(config)# ip access-list ssh-acl permit ip src 10.0.0.0/16 dest any
Router(config)# ip access-list ssh-acl permit ip src 1.2.3.4/32 dest any
Router(config)# interface GigaEthernet0.0
Router(config-GigaEthernet0.0)# ip napt static GigaEthernet0.0 tcp 22
Router(config-GigaEthernet0.0)# ssh-server ip enable
Router(config-GigaEthernet0.0)# exit
Router(config)# 
```

**2) 接続確認**
```
[opc@tokyo-inst01 .ssh]$ ssh oracle@10.0.251.251
	The authenticity of host '10.0.251.251 (10.0.251.251)' can't be established.
	RSA key fingerprint is SHA256:e4iwxtr/ZG+TXepCWwfVq5guNz42CUYIa41AkPgv/Ps.
	Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
	Warning: Permanently added '10.0.251.251' (RSA) to the list of known hosts.
	oracle@10.0.251.251's password:
	Last login: Mon May 29 20:19:32 2023

	NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
	Compiled Tue 28 Mar 2023 11:15:17 AM JST
	Copyright (c) NEC Corporation 2023. All rights reserved.

IX-V100#
```

# ■ コンフィグ確認
```
IX-V100(config)# terminal length 0
IX-V100(config)# show running-config
! NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
! Compiled Tue 28 Mar 2023 11:15:17 AM JST
! Current time May 29-Mon-2023 21:14:31 JST
!
hostname IX-V100
timezone jst
!
syslog enable 819200
syslog function all warn
!
username oracle password secret $1$v+leTVkUz7lKbfL7AI4UAA==$fX9vl431doe+veDmr/9c8mKej+hNFbAcIkEV2TQ== administrator
!
ntp server 169.254.169.254
!
!
ip access-list ssh-acl permit ip src 10.0.0.0/16 dest any
ip access-list ssh-acl permit ip src 1.2.3.4/32 dest any
!
!
!
!
!
!
ssh-server ip access-list ssh-acl
!
!
!
!
!
device GigaEthernet0
!
interface GigaEthernet0.0
  ip address dhcp receive-default
  ip napt enable
  ip napt static GigaEthernet0.0 tcp 22
  ssh-server ip enable
  no shutdown
!
interface GigaEthernet1.0
  description LAN1
  ip address 10.0.254.254/24
  no shutdown
!
interface Loopback0.0
  no ip address
!
interface Null0.0
  no ip address
!
```



# ■ 装置情報確認
```
terminal length 0
show tech-support
show syslog
```

```
IX-V100(config)# terminal length 0
IX-V100(config)# show tech-support
	-------------------- show clock --------------------
	Monday, 29 May 2023 21:15:59 +09 00

	-------------------- show uptime --------------------
	System uptime is 8 hours 30 minutes 47 seconds
	System woke up by reload, caused by power-on
	System started at May 29-Mon-2023 12:45:58 JST

	Statistics: 0 known crash

	-------------------- show version --------------------
	NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWARE
	Compiled Tue 28 Mar 2023 11:15:17 AM JST


	-------------------- show hardware --------------------
	IX-V Series

	LED information:
	PWR: Green  VPN: Off    PPP: Off
	BAK: Off

	-------------------- show running-config --------------------
	! NEC IX-V Series IX-V100 Software, Version 1.0.10, RELEASE SOFTWA


	・・・

	-------------------- show error-log --------------------
	Latest Occurrence Time    Event Description
	2023/05/29 21:01:14 +0900 INFO: Modify startup-config cmd:write state:succeeded from:oracle
```


# ■ 設定保存
```
IX-V100(config)# write memory
	Building configuration...
	% Warning: do NOT enter CNTL/Z while saving to avoid config corruption.
```

# ■ 参考
・[UNIVERGE IX-Vシリーズ](https://jpn.nec.com/univerge/ix-nrv/index.html?)
・[IX-Vシリーズ　利用規約](https://jpn.nec.com/univerge/ix-nrv/Manual/eula/IX-V_EULA.pdf)
・[UNIVERGE IX-Vシリーズ　ダウンロード](https://jpn.nec.com/univerge/ix-nrv/download.html?#Software)
・[UNIVERGE IX-V ユーザーズガイド](https://support.necplatforms.co.jp/ix-nrv/manual/um/)
・[コマンドリファレンスマニュアル ](https://support.necplatforms.co.jp/ix-nrv/manual/crm/index.html)
・[機能説明書](https://support.necplatforms.co.jp/ix-nrv/manual/fd/FD-IXV100-ver1.0-1.pdf)