VPN設定ができない機器をWindows PCを使ってVPNにルーティングする

新型コロナウィルス感染拡大に伴う在宅勤務体制を進めている状況かと存じます。
その様な状況で、開発機を持ち帰りテストを行うにも、プラットフォームの Sandbox API が呼び出せない等の不都合もあるかと思います。

今回は開発機を Windows PC を経由して VPN に参加させる方法を紹介します。

# 前提
すでにプラットフォームのホワイトリストへ登録されている IP を得られる VPN 環境があり、Windows PC へ設定されている。

# Windows PC 側の設定

## Routing and Remote Access サービスを起動する
![vpn3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/d117a2b9-0dda-0ead-2551-18cd72e37632.png)

## ネットワークインターフェースの設定

### VPN のネットワークを共有設定
![キャプチャ-69.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/390fdb1c-cf7c-ccc4-a635-f1cfec86779a.png)

### ネットワークインターフェイスの設定

共有設定を行うことで、ネットワークの設定が変更され、ネットワークに繋がらなくなっている場合があるので、宅内環境に合わせて修正する。
![キャプチャ-72.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/08b570a5-786c-3194-6ed9-c2eb55b793d7.png)


## グローバルIPの確認
http://inet-ip.info にアクセスして IP アドレス、ISP が VPN 経由の値になっているか確認。
<img width="695" alt="スクリーンショット_2020-04-10_16_16_09-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/a70a42e9-853b-d771-9838-0d4dd359cced.png">

## 困ったらルーティングテーブルを確認

コマンドプロンプトで `route print`

```
C:\Users\gondo>route print
===========================================================================
インターフェイス一覧
 16...60 45 cb a3 af 01 ......Realtek PCIe GBE Family Controller
 27...00 ff 00 88 c0 74 ......TAP-Windows Adapter V9
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0      10.22.100.1    10.22.100.122     25
          0.0.0.0        128.0.0.0      10.255.16.1    10.255.16.130     25
      10.22.100.0    255.255.255.0            リンク上     10.22.100.122    281
    10.22.100.122  255.255.255.255            リンク上     10.22.100.122    281
    10.22.100.255  255.255.255.255            リンク上     10.22.100.122    281
      10.255.16.0  255.255.255.224            リンク上     10.255.16.130    281
      10.255.16.3  255.255.255.255            リンク上     10.255.16.130    281
     10.255.16.31  255.255.255.255            リンク上     10.255.16.130    281
    18.178.222.49  255.255.255.255      10.22.100.1    10.22.100.122     25
    18.180.204.42  255.255.255.255      10.22.100.1    10.22.100.122     25
        127.0.0.0        255.0.0.0            リンク上         127.0.0.1    331
        127.0.0.1  255.255.255.255            リンク上         127.0.0.1    331
  127.255.255.255  255.255.255.255            リンク上         127.0.0.1    331
        128.0.0.0        128.0.0.0      10.255.16.1    10.255.16.130     25
      169.254.0.0      255.255.0.0            リンク上     10.22.100.122    301
  169.254.255.255  255.255.255.255            リンク上     10.22.100.122    281
        224.0.0.0        240.0.0.0            リンク上         127.0.0.1    331
        224.0.0.0        240.0.0.0            リンク上     10.22.100.122    281
        224.0.0.0        240.0.0.0            リンク上     10.255.16.130    281
  255.255.255.255  255.255.255.255            リンク上         127.0.0.1    331
  255.255.255.255  255.255.255.255            リンク上     10.22.100.122    281
  255.255.255.255  255.255.255.255            リンク上     10.255.16.130    281
===========================================================================
固定ルート:
  なし
```

# 開発機側の設定

開発機側には Windows PC のアドレスを `ゲートウェイ` や `ルーター` という項目に設定します。
この例では iPad で設定します。

## Windows PC の IP アドレスを確認
コマンドプロンプトで `ipconfig` を実行して IP アドレスを調べる。
![キャプチャ-70.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/1744f1c9-3645-dc52-ee92-9fd21de7d64f.png)
イーサネット 2 は VPN の方のアドレス。

## ネットワークを手動設定

`IPアドレス` にはルーターが動的に付与しないアドレス且つ、ネットワーク内のデバイスと重複しない IP アドレスを設定。
`ルーター` に先ほど調べた Windows PC のアドレスを設定。
![IMG_0032.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/f79b9e6a-a737-9903-6db6-0e01388452f4.jpeg)

## グローバルIPの確認
http://inet-ip.info にアクセスして IP アドレス、ISP が VPN 経由の値になっているか確認。
<img width="695" alt="スクリーンショット_2020-04-10_16_16_09-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1083/a70a42e9-853b-d771-9838-0d4dd359cced.png">

# mac でやるには

LANアダプターとwifiアクセスポイントを用意して、インターネット共有機能を使えば簡単にできると思います。（機材が手元に無いため未検証）