FSx for Windows File ServerへEC2をマウントできないときのトラブルシューティング

## はじめに
最近検証のためにFSx for Windows File ServerへEC2をマウントしようとしたのですが、ほとんど初めて触ったため、初歩的なミスで時間を無駄にしました。
その際に調べたトラブルシューティングをいくつか紹介します。

## 今回の構成
今回は、AWS Managed Microsoft ADをADとして利用し、FSx for Windows File Serverを作成しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/432a5697-937d-3d61-c20b-d5bc95101c92.png)

FSx for Windows File Serverへのマウントまでは順調に進んでいたのですが、マネージドコンソールに記載されている以下の手順2で躓きました。

> アタッチ手順 - デフォルトの DNS 名を使用
1.コマンドプロンプトを開きます。
2.次のコマンドを実行します (「Z:」は、使用可能な他のドライブ文字に置き換えることができます)。
net use Z: \\(FSxのDNS名)\share

コマンドを入力すると、以下の様に
```System error 53 has occurred. The network path was not found.```
と返ってきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/0b18fa55-af52-9d76-b950-3f8e05b9aaad.png)

さあ、トラブルシュート開始です。

## ネットワークの確認
### TCP 445（SMB）での疎通確認

EC2インスタンスで以下のPowerShellコマンドを実行し、疎通確認を行います。

``` Test-NetConnection (FSxのDNS名).test.fsx.com -port 445```

成功すると以下の様に返ってきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/2143aabf-150f-a7b4-f4f7-050ba1c14323.png)


失敗すると以下の様に返ってくるため、この後のトラブルシュートを続けましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/ec6d694c-6ad2-5440-5dba-7d43a788f7f3.png)


### セキュリティグループ・NACLの確認
EC2とFSx for Windows File Serverのセキュリティグループ・NACLの設定内容を確認してください。

ファイルシステムとクライアントの間では TCP 445（SMB)での通信が必要です。

EC2側とFSx側のセキュリティグループ・NACLでそれぞれ、インバウンド・アウトバウンドでTCP 445が許可されているか確認してください。

FSx for Windows File Serverは、ENI（ネットワークインタフェース）にセキュリティグループがアタッチされるため、注意してください。

※筆者はこれを考慮しておらず、これ以降のすべての調査を行うことになりました。

### VPCの確認
EC2とFSxが同じVPC内に存在するか、異なるVPCの場合は正しくVPCピアリングやTransit Gatewayを設定しているか確認してください。


## 名前解決ができているか確認する

### 名前解決ができているか確認
DNSサーバによる名前解決ができているか、以下のコマンドで確認しましょう。

``` nslookup (FSxのDNS名)```

成功した場合は、以下の様にFSxのIPアドレスが返ってきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/5c1ed622-b45a-0f4a-5868-0c877dc1dd83.png)

失敗した場合は、``` (DNSサーバ) can't find (FSxのDNS名):Non-existent domain ```と返ってくるため、この後のトラブルシュートを続けましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/bdbbe916-e1f8-67c8-fcbe-ec8ded2f8f7b.png)

### DNSの参照先の確認
DNSの参照先が「AWS Managed Microsoft ADが提供するDNS」に設定されているか確認します。

Managed Microsoft ADのDNSアドレスは、マネジメントコンソール＞Directory Service＞ディレクトリの、ネットワークとセキュリティにおけるDNSアドレスから確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/12edaf86-dc23-16af-58f5-f1973d149c49.png)

EC2にて、「インターネットプロトコル バージョン4 (TCP/IPv4) のプロパティ」を開いて、Managed Microsoft ADのDNSアドレスが設定されているか確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/eef42333-0675-e841-183a-9f71f52a13f6.png)

また、DNSサフィックスの設定についても確認します。
「TCP/IP詳細設定」にて「DNS」タブを選択し、「非修飾名の解決に使用するオプション」で「プライマリおよび接続専用のDNSサフィックスを追加する」となっているか確認します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/ee5194b7-29b7-94c9-f6fc-3c334a835fc0.png)


### DNSサーバの設定を確認
DNSサーバを確認し、FSx for Windows File Serverのレコードが登録されているか確認しましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/465e4fbb-2cae-42f9-cedb-06d8cd95b10b.png)

ちなみに、フォワーダーとして登録されているIPアドレスは、「AmazonProvidedDNS」のIPアドレスで、Managed Microsoft ADのDNSで解決することができない名前解決の要求を転送するためのものです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/bec1ff60-6d71-d1f8-b826-8488c915cdc9.png)


## EC2（Windows Server）の設定の確認
Windows Serverの設定についても確認しましょう。

### Windows ファイアウォールの確認
Windowsファイアウォールによって、EC2・FSx間のSMBトラフィックがブロックされていないか確認してください。

```netsh firewall show state```コマンドを利用することで、ファイアウォールによってブロックされているポート等の設定を確認することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/5745c27e-9ccb-fb15-a1f9-70d7ddee1317.png)


もし、SMBトラフィックがブロックされている場合は、「Windows セキュリティ」から「ファイアウォールとネットワーク保護」を選択し、各種設定を行ってください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/fe376d2c-bc36-0983-f4da-4819038ad318.png)

### ネットワーク共有設定の確認
ネットワークのファイルとプリンターの共有が無効になっている場合や、インストールされていない場合にはファイルシステムをマウントすることができません。

共有が無効になっていると、以下の様に表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/246ecded-3020-dfb3-19be-96b8ab5f1816.png)

今回私は無効になっていたので、「コントロールパネル」の「ネットワークと共有センター」から「共有の詳細設定」において、「ネットワーク探索を有効にする」にチェックを入れました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/7650c249-4936-48b4-118a-35c3f5cba218.png)

有効化できると以下の様に表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/80f3202c-cca4-7b92-c36e-19ad47b5d483.png)

### レジストリエディターの確認
レジストリエディターの設定によって、System Error 53が発生することがあるようです。

レジストリエディターの以下の項目が正しく設定されているか確認ください。
* HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\HwOrder
* HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115411/1c8855f3-9348-8891-2a23-26923e0eaf95.png)

詳しくは以下のリンクを参考にしてください。

https://answers.microsoft.com/ja-jp/windows/forum/all/%e3%83%8d%e3%83%83%e3%83%88%e3%83%af%e3%83%bc/cb831b98-4f91-4840-bcda-df38e50c5c53 


## おわりに
このほかにも調査する内容はあると思いますが、セキュリティグループや名前解決周りが原因となることが多いと考えます。
皆さんはうっかりしないよう気を付けてください。