protectedサブネット内にあるインスタンスからNATゲートウェイでインターネットにアクセスできるように設定した
設定方法
1.NATゲートウェイを作成しpublicサブネットに配置
2.protectedサブネットを関連付けたルートテーブルのルートに①のルートを設定
Error:network is unreachable
インスタンスにSSH接続しいざインターネットアクセスを試みたところ上記のエラー
確認したこと
①ルートテーブル
ルートテーブルに デフォルトルート(宛先: 0.0.0.0/0) があり、NAT Gateway (nat-...) がターゲットに設定されていることを確認
②セキュリティグループ
インスタンスに適用されているセキュリティグループを確認
アウトバウンドルールが、宛先 0.0.0.0/0、プロトコル すべて で「許可」になっていることを確認
③ネットワークACL
インスタンスが存在するサブネットに適用されているインバウンドおよびアウトバウンドのトラフィックが両方とも「許可」になっていることを確認
④IPアドレス(パブリックサブネットの場合)
インスタンスがパブリックIPアドレスまたはElasticIPを持っていることを確認
原因
②のセキュリティグループのアウトバウンドルールに何も設定が入っていなかった。
セキュリティグループのアウトバウンドルールには作成時にデフォルトですべてのアウトバウンドトラフィックを許可するアウトバウンドルールが設定されているのだが、いつの間にか削除していた模様。
参考
セキュリティグループのルールの基本
セキュリティグループのルールの特徴を次に示します。
許可ルールを指定できます。拒否ルールは指定できません。
セキュリティグループを初めて作成するときには、インバウンドルールはありません。したがって、インバウンドルールをセキュリティグループに追加するまで、インバウンドトラフィックは許可されません。
セキュリティグループを最初に作成するとき、リソースからのすべてのアウトバウンドトラフィックを許可するアウトバウンドルールが設定されます。ルールを削除し、任意の発信トラフィックのみを許可するアウトバウンドルールを追加できます。セキュリティグループにアウトバウンドルールがない場合、アウトバウンドトラフィックは許可されません。
セキュリティグループのルールの基本