G-gen の藤岡です。GCE(Windows Server)から Filestore をマウントしようとしたところ、Network Error - 53
のエラーが出力されマウントに失敗する事象が起きました。原因と対策を紹介します。
事象
以下の構成において、Filestore を instance-1 からマウントしようとするとエラーとなり、マウントに失敗。instance-2 からはマウントが可能(OS は共に Windows Server)。
# instance-1 でマウント時のエラー C:\Users\fujioka>mount -o mtype=hard 192.168.0.2:/vol1 z: Network Error - 53 Type 'NET HELPMSG 53' for more information. C:\Users\fujioka>
調査
- GCE で ドキュメント に記載の NFS インストールやユーザー ID の構成済み
- Cloud Logging へエラーログはない
- ファイアウォールは問題ない
- Filestore(
192.168.0.2
)へ 2049/tcp の疎通は instance-1 は不可、instance-2 は可
# instance-1 の結果 PS C:\Users\fujioka> ipconfig Windows IP Configuration Ethernet adapter Ethernet: Connection-specific DNS Suffix . : asia-northeast1-b.c.xxxx.internal Link-local IPv6 Address . . . . . : xxxx IPv4 Address. . . . . . . . . . . : 100.0.0.2 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 100.0.0.1 PS C:\Users\fujioka> PS C:\Users\fujioka> Test-NetConnection 192.168.0.2 -Port 2049 WARNING: TCP connect to (192.168.0.2 : 2049) failed WARNING: Ping to 192.168.0.2 failed with status: TimedOut ComputerName : 192.168.0.2 RemoteAddress : 192.168.0.2 RemotePort : 2049 InterfaceAlias : Ethernet SourceAddress : 100.0.0.2 PingSucceeded : False PingReplyDetails (RTT) : 0 ms TcpTestSucceeded : False PS C:\Users\fujioka> # instance-2 の結果 PS C:\Windows\system32> ipconfig Windows IP Configuration Ethernet adapter Ethernet: Connection-specific DNS Suffix . : asia-northeast1-b.c.xxxx.internal Link-local IPv6 Address . . . . . : xxxx IPv4 Address. . . . . . . . . . . : 10.0.0.2 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 10.0.0.1 PS C:\Windows\system32> PS C:\Windows\system32> Test-NetConnection 192.168.0.2 -Port 2049 ComputerName : 192.168.0.2 RemoteAddress : 192.168.0.2 RemotePort : 2049 InterfaceAlias : Ethernet SourceAddress : 10.0.0.2 TcpTestSucceeded : True PS C:\Windows\system32>
原因
クライアントが RFC 1918(10.0.0.0/8
/ 172.16.0.0/12
/ 192.168.0.0/16
)以外のサブネット範囲の場合、Filestore のアクセス制御は、IP ベースのアクセス制御 を使用しなければなりません。
コンソールから Filestore を作成する際、アクセス制御は、以下の 2 つから選択できます。
- VPC ネットワーク上のすべてのクライアントにアクセス権を付与する
- IP アドレスまたは IP アドレス範囲でアクセスを制限する
ここで VPC ネットワーク上のすべてのクライアントにアクセス権を付与する
を選択すると、クライアント側の IP アドレスが RFC 1918 範囲外の場合、マウントができません。
Filestore はサービスプロデューサーのネットワークと呼ばれる Google が管理する専用ネットワークに配置されます。サービスプロデューサーのネットワークにおいて、RFC 1918 範囲外のようなパブリック IP アドレスから無制限にアクセスを許可することはセキュリティ上のリスクとなります。
そのため、ユーザーが管理する VPC からの接続であっても RFC 1918 範囲外の IP アドレスの場合は、明示的に許可する IP アドレスを指定する仕様となっています。これは、Cloud SQL や GKE の承認済みネットワークと同様です。
対処
Filestore の編集で IP アドレスまたは IP アドレス範囲でアクセスを制限する
を選択し、クライアントの IP アドレス範囲を許可します。
追加した IP アドレス範囲のクライアントのアクセスレベルは、管理者・管理閲覧者・編集者・閲覧者があります。各アクセスレベルの詳細は ドキュメント をご参照ください。
追加すると、instance-1 で Filestore がマウントができるようになります。
C:\Users\fujioka>mount -o mtype=hard 192.168.0.2:/vol1 z: z: is now successfully connected to 192.168.0.2:/vol1 The command completed successfully. C:\Users\fujioka>
参考
GCE(Windows Server)から Filestore のマウント方法については以下の記事をご参照ください。
藤岡 里美 (記事一覧)
クラウドソリューション部
数年前までチキン売ったりドレスショップで働いてました!2022年9月 G-gen にジョイン。ハイキューの映画を4回は見に行きたい。
Google Cloud All Certifications Engineer / Google Cloud Partner Top Engineer 2024
Follow @fujioka57621469