GCPとWatchGuard製FireBoxのVPN接続

# 背景

以前、 [AWSとWatchGuard製FireBoxのVPN接続](https://qiita.com/mid480/items/9b87d1119e62e6d8a9bd) という形で記事を記載しましたが、
今回は別記事のため、切り出して記事を作成します。
前回は、静的ルーティングでしたが、今回は動的ルーティングのBGPで設定しています。
クラウドとの接続は一般的にBGPで設定するケースが多いと思います。

WatchGuard社から公式にAWSとの接続例は日本語化されたドキュメントがありますが、
Google Cloudはまだローカライズされたドキュメントはないようです。

というところで、日本語でGoogle Cloudとの接続を行いました。

参考：
 [Google Cloud BOVPN Integration Guide](https://www.watchguard.com/help/docs/help-center/en-us/Content/Integration-Guides/General/Google_Cloud_BOVPN.html?Highlight=Google)
[Google Cloud BOVPN Virtual Interface Integration Guide](https://www.watchguard.com/help/docs/help-center/en-us/Content/Integration-Guides/General/Google_Cloud_BOVPN_virtual_interface.html?Highlight=Google)

# 設定

## VPC ネットワーク

MTUもデフォルトで1460に設定されています。

![2020-10-18_154525.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/2d08c0c3-049d-bf94-1471-d0b6a00c1fdb.jpeg)

## CloudVPN

![2020-10-18_155535.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/4423e132-3d86-0e09-1588-922f7fc61fb7.jpeg)

### VPN作成

![2020-10-18_160256.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/10ef4ade-c34a-30e5-c0ab-b1d1b5a0cde6.jpeg)

### 注意事項

10月15日(木) にGoogleから2021年10月以降のVPNについて通知が来ました。

```
件名：[ご対応のお願い] 2021 年 10 月までに Classic VPN から高可用性 VPN に移行してください
本文：
（一部抜粋）

サポートを終了する次の Classic VPN 構成を使用した新しいトンネルは 2021 年 10 月以降は作成できなくなります。
また、これらの構成を使用している既存のトンネルはサポート対象外となります。
すでにインストールして使用しているトンネルは、引き続き正常に動作します。

・ トンネルの接続先のゲートウェイに関係なく、動的ルーティング（Cloud Router）を使用するすべての Classic VPN トンネル。
・ 使用するルーティング方法に関係なく、2 つの GCP Classic VPN ゲートウェイを相互接続する Classic VPN トンネル。
・ 静的ルーティングを使用して GCP Classic VPN ゲートウェイを他のクラウド プロバイダのネットワークに接続する Classic VPN トンネル。

この変更に向けた準備をお手伝いできるよう、このメールをネットワーク エンジニアやサイト信頼性エンジニア（SRE）にご転送ください。
```

![2020-10-18_154004.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/c7910acf-dc0d-c18a-66f8-22e58dc66493.jpeg)


## WatchGuard

## BO仮想インターフェース設定

![2020-10-18_160853.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/035806ce-0fc7-cde2-aeb3-203dac9f6b32.jpeg)

![2020-10-18_160959.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/665bad89-8613-3547-2972-c188287bf86f.jpeg)

![2020-10-18_161620.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/e5650b0b-de6c-53be-1509-4d92cb6e97f3.jpeg)

![2020-10-18_161932.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/7860cbb8-b718-32fa-ccdb-c53860cbfdea.jpeg)

### 注意事項

WatchGuardは標準では、VPNの設定がセッションベースとなっていて、
GCP側（パブリッククラウド全般かもしれませんが）は、タイマーベースとなっています。

## 接続確認

### GCE

* VM インスタンスでWindowsServer起動

![2020-10-18_172646.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/b9543ff5-41c1-93e9-6702-33e27292407a.jpeg)

無事にGCP内のインスタンスからアクセスできています。

WatchGuardの設定許可も `Any-Trusted` のみでインターネットから接続は通常できない設定となっています。

![2020-10-18_120939.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182636/f5b842bc-3da5-37a5-0188-763b0ad46404.jpeg)

## まとめ

GCPとWatchGuard FireboxのVPN接続は問題なくできました。
ドキュメントなどを読み込んで試しにCloudVPNのリソースを起動検証している途中で、
Classciが来年破棄されるとのことなので、ちょうどいい時期に検証ができて個人的に良かったです。

あまり日本国内でこの構成でVPN接続するケースは少ないとは思いますが、
WatchGuard、GCP公式ドキュメントにも言及されていない部分も含めて、
今後どなたかの参考になれば幸いです。