[Oracle Cloud] IPSec VPN トンネル停止の通知アラームの設定をしてみてみた

Oracle Cloud Infrastructure(OCI)の IPSec VPN トンネルの状態は、Tunnel Stateメトリックで稼働中(1)か停止中(0) の数値で確認することができます。
![アラームイメージ.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/9a99484d-e043-ea65-690b-200d409bf5d4.jpeg)
ということで、IPSec の Tunnel がダウンした時に、メールでアラーム通知されることを確認します。


# ■ 構成

以前に構成した  Cisco 841M ルーターで OCI と IPSec VPN接続した構成へ、IPSec VPN トンネルへアラーム設定をします。

 https://qiita.com/shirok/items/1542af8efcd4d94c4b3a



# ■ アラーム設定
### 1)  サイト間VPN画面
対象のIPSec VPN接続を選択し、設定トンネルをクリック
![01_IPSec-アラーム作成01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e9c6aff9-a5aa-286c-7adf-39e8115cd321.png)


### 2) VPN Tunnel画面
メトリックの IPSecトンネルの状態にある [オプション] から [この問い合わせにアラームを作成]をクリック
![01_IPSec-アラーム作成02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/52f97253-fb6b-3d77-9050-fbd69ef08ae3.jpeg)

### 3) アラームの作成画面
以下項目を入力し、[アラームの保存]をクリック
以下項目以外はデフォルトを使用、必要に応じて変更して入力

|フィールド  |項目  |
|---|---|
|アラーム名  |アラームの名前。この名前は、このアラームに関連する通知のタイトルとして送信されます  |
|アラームの重大度  |アラームが起動状態にあるときに必要となるレスポンスの認識  |
|メトリック・ネームスペース  |oci_vpnを選択  |
|メトリック名  |TunnelStateを選択  |
|時間隔  |集計頻度の単位「分」または「時間」を選択  |
|統計  |集計関数　mean(指定した期間中のCountで、Sumの値を割った値)を選択  |
|トリガー・ルール演算子と値 |条件しきい値で使用する演算子、停止中の数値である 0と等しい もしくは　1より小さい条件を選択  |
|トリガー遅延分数  |アラームが起動状態になるまでに条件が維持される分数  |
|宛先  |通知(トピックにアラーム通知を送信)を選択  |
|トピック  |事前に作成したトピックを選択|
|通知の繰り返し  |アラームが起動状態になっている間、通知は指定した間隔で再送信されます。|
|通知の抑制  |評価および通知を一時停止する抑制時間ウィンドウを設定  |

![01_IPSec-アラーム作成03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/ada9dd99-b5f6-971a-c946-b49e5f2fb82f.jpeg)



### 4) アラーム定義画面
アラーム作成完了です。
![01_IPSec-アラーム作成05.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/a20710e9-965a-b4bd-d438-b72d6a124244.jpeg)




# ■ Tunnelダウン 検証
## ● CPE IPSec Tunnel 停止
### 1) IPSec SA確立確認

```
Router# show crypto session
Crypto session current status

Interface: Tunnel1
Profile: oracle-vpn-140.204.100.101
Session status: UP-ACTIVE
Peer: 140.204.100.101 port 500
  Session ID: 1125
  IKEv2 SA: local 100.100.100.101/500 remote 140.204.100.101/500 Active
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map
```

### 2) tunnel シャットダウン

```
Router#configure terminal
Router(config)#interface Tunnel1
Router(config-if)#shutdown
Router(config-if)#
*Jan 30 08:29:05.579: %BGP-5-NBR_RESET: Neighbor 192.168.254.114 reset (Interface flap)
*Jan 30 08:29:05.579: %BGP-5-ADJCHANGE: neighbor 192.168.254.114 Down Interface flap
*Jan 30 08:29:05.579: %BGP_SESSION-5-ADJCHANGE: neighbor 192.168.254.114 IPv4 Unicast topology base removed from session  Interface flap
*Jan 30 08:29:07.579: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to down
*Jan 30 08:29:07.579: %LINK-5-CHANGED: Interface Tunnel1, changed state to administratively down
```


### 3) Tunnel シャットダウン設定確認

```
Router(config-if)# do show running-config | section interface Tunnel1
interface Tunnel1
 ip address 192.168.254.113 255.255.255.252
 ip virtual-reassembly in
 ip tcp adjust-mss 1350
 shutdown
 tunnel source 100.100.100.101
 tunnel mode ipsec ipv4
 tunnel destination 140.204.100.101
 tunnel protection ipsec profile oracle_ipsec_profile_Tunnel1
```



### 4) IPSec SA確立していないこと確認
対象のトンネル Tunnel1 の　statusが DOWNであることを確認

```
Router#show crypto session
Crypto session current status

Interface: Tunnel2
Profile: oracle-vpn-140.204.100.102
Session status: UP-ACTIVE
Peer: 140.204.100.102 port 500
  Session ID: 1138
  IKEv2 SA: local 100.100.100.101/500 remote 140.204.100.102/500 Active
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map

Interface: Tunnel1
Session status: DOWN
Peer: 140.204.100.101 port 500
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 0, origin: crypto map
```

## ● OCI IPSec画面確認
### 1) サイト間VPN画面
ダウンさせた Tunnnel01 の IPSec と IPv4 BGPステータスが 「停止」になっていることを確認
![11_Tunnel稼働確認01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/70bfc162-f443-7075-0073-ff32b0a3a5e4.jpeg)



### 2) Tunnnel画面
ダウンさせたトンネルをクリックし、Metric　が停止ステータス(0) になっていることを確認
![11_Tunnel稼働確認02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/057b8c74-5850-a9ae-ea65-f5e486b719b7.jpeg)





## ● OCI アラーム発生確認
### 1) OCI コンソール
[監視及び管理] → モニタリング項目にある[アラームのステータス]をクリック
![02_アラーム発生01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/d4580e55-735e-f200-4bed-d15f0a49eec6.jpeg)


### 2) アラームが起動しました画面
作成したアラームをクリック
![02_アラーム発生02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/2395007a-693d-20bc-687e-11e8b164fc04.jpeg)


### 3）アラーム定義画面(グラフ)
アラームの履歴から、値が1から0になりグラフが赤くなっていることを確認
![02_アラーム発生03.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/b80ca442-6d3c-ecc1-312d-4c0440f119ec.jpeg)

### 4）アラーム定義画面(データ表)
アラームの履歴の[データ表を表示]をクリックし、Time Stanpで日時を確認
![02_アラーム発生04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/5164cdfa-7fd6-32f8-eace-b5eafb624e3c.jpeg)


## ● アラームメール確認
設定したメールアドレスに、アラーム作成時に設定したアラーム名の題名(Subject)でメール受信を確認
![03_アラームメール確認.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/ca249c17-6226-e62e-2052-7e1a79ddbd01.jpeg)










# ■ Tunnel回復
## ● CPE IPSec Tunnel1 起動
### 1) Tunnel 起動

```
Router(config)#interface Tunnel1
Router(config-if)#no shutdown
Router(config-if)#
*Jan 30 14:04:39.514: %LINK-3-UPDOWN: Interface Tunnel1, changed state to up
*Jan 30 14:04:49.586: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up
*Jan 30 14:04:55.118: %BGP-5-ADJCHANGE: neighbor 192.168.254.114 Up
```


### 2) 設定確認
shutdown 設定がないことを確認

```
Router# do show running-config | section interface Tunnel1
interface Tunnel1
 ip address 192.168.254.113 255.255.255.252
 ip virtual-reassembly in
 ip tcp adjust-mss 1350
 tunnel source 100.100.100.101
 tunnel mode ipsec ipv4
 tunnel destination 140.204.100.101
 tunnel protection ipsec profile oracle_ipsec_profile_Tunnel1
```

### 3) IPSec SA確立確認
Down した Tunnel1 の Status が UP-ACTIVE になっていることを確認

```
Router# show crypto session
Crypto session current status

Interface: Tunnel2
Profile: oracle-vpn-140.204.100.102
Session status: UP-ACTIVE
Peer: 140.204.100.102 port 500
  Session ID: 1439
  IKEv2 SA: local 100.100.100.101/500 remote 140.204.100.102/500 Active
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map

Interface: Tunnel1
Profile: oracle-vpn-140.204.100.101
Session status: UP-ACTIVE
Peer: 140.204.100.101 port 500
  Session ID: 1433
  IKEv2 SA: local 100.100.100.101/500 remote 140.204.100.101/500 Active
  Session ID: 1431
  IKEv2 SA: local 100.100.100.101/500 remote 140.204.100.101/500 Active
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map
```

## ● OCI IPSec画面確認
### 1) サイト間VPN画面
起動させた Tunnnel01 の IPSec と IPv4 BGPステータスが 「稼働中」になっていることを確認

![11_Tunnel稼働確認01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/be863f64-4f96-dec5-144c-e419c1870c1d.jpeg)


### 2) Tunnnel画面
ダウンさせたトンネルをクリックし、Metric　が起動ステータス(1) になっていることを確認

![11_Tunnel稼働確認02.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4d29e2a3-e700-0503-c122-98877b0ad65c.jpeg)

## ● OCI アラーム停止確認
### 3）アラーム定義画面(グラフ)
アラームの履歴から、値が0から1になり、グラフが青くなっていることを確認
![12_アラーム停止確認01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/163997d5-bc79-5f94-6e03-1f0f9612a08e.jpeg)



# ■ 参考
**・OCI Documents**
　- [サイト間VPNのメトリック](https://docs.oracle.com/ja-jp/iaas/Content/Network/Reference/ipsecmetrics.htm)
　- [アラームの管理](https://docs.oracle.com/ja-jp/iaas/Content/Monitoring/Tasks/managingalarms.htm)
　- [アラームの作成](https://docs.oracle.com/ja-jp/iaas/Content/Monitoring/Tasks/create-alarm.htm#top)

**・Cisco Documents**
　- [IP Security VPN Monitoring](https://www.cisco.com/en/US/docs/ios-xml/ios/sec_conn_imgmt/configuration/15-2mt/sec-ip-security-vpn.html#GUID-8CE2F8F7-D915-40E5-8C69-C9C10D40D65D)