2019年4月1日から Route53 ヘルスチェックのソース IP 範囲の追加があります

2019年4月1日から Route53 ヘルスチェック IP 範囲に追加があります。IP 制限環境でエンドポイントヘルスチェックをお使いの場合は是非、ご対応ください。
2019.03.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

先日、AWS Discussion Forums にて、Route53 ヘルスチェックのソース IP 範囲追加についてアナウンスがありましたのでシェアします。

Health checks from the new IPv4 address range will begin on April 1, 2019

上記のとおり、適用は2019年4月1日からとなっています。

影響

Route53 のヘルスチェック対象がパブリック(0.0.0.0/0)に公開されている環境では特に気にすることはありません。注意いただきたい環境は、アクセス IP を制限している環境において、エンドポイントモニタリングのヘルスチェックを使用されている場合です。

この場合、以下のような箇所で Route53 ヘルスチェックが使用する IP 範囲が許可ルールとして登録されているはずです。

  • セキュリティグループ
  • WAF
  • OS 内のファイアウォール
  • プロキシサーバ ...etc

新たなヘルスチェック IP 範囲を、これらの許可ルールに追加していない状態の場合、2019年4月1日以降にヘルスチェックがブロックされ、対象リソース異常とみなされる可能性があります。

ヘルスチェックについて

ヘルスチェッカーは復数のリージョンから対象エンドポイントをチェックします。リージョンあたり2つのヘルスチェッカーがあり、最低でも3リージョンの選択が必要ですので、ひとつのヘルスチェッカーがブロックされたことによって、エンドポイント異常と判断されることはありませんが、もし、復数のヘルスチェッカーで新しい IP 範囲が割り当てられた場合、エンドポイント異常と判断される恐れがあります。

Route 53 はヘルスチェッカーからデータを集計し、エンドポイントが正常であるかどうかを判断します。 ・ 18% を超えるヘルスチェッカーがエンドポイントを正常であるとレポートした場合、Route 53 はそのエンドポイントを正常と見なします。 ・ ヘルスチェッカーが正常であるエンドポイントが 18% 以下であるとレポートした場合、Route 53 はそのエンドポイントを異常と見なします。

記載のとおり正常判定のしきい値が18%超とされているので、多くのヘルスチェッカーで新しい IP 範囲が割当てられない限り、DNS フェイルオーバーなどの最悪ケースには至らないとは思います。ただし、後述のとおり今回の IP 範囲は /18 と広く設定されているので、今後、この IP 範囲の利用が増える可能性も考えられます。

対応

追加される以下の IP 範囲を 2019年4月1日までにアクセス許可ルールに追加します。今回、追加対象は IPv4 のみで、IPv6 の追加はありません。

  • 15.177.0.0/18

参考までに既存の IP 範囲一覧を掲載しておきます。

IPv4(既存の範囲)

54.245.168.0/26 54.243.31.192/26 177.71.207.128/26 54.255.254.192/26 54.244.52.192/26 176.34.159.192/26 54.251.31.128/26 54.183.255.128/26 54.241.32.64/26 54.252.254.192/26 107.23.255.0/26 54.248.220.0/26 54.228.16.0/26 54.250.253.192/26 54.232.40.64/26 54.252.79.128/26

IPv6(既存の範囲)

2600:1f1c:7ff:f800::/53 2a05:d018:fff:f800::/53 2600:1f1e:7ff:f800::/53 2600:1f1c:fff:f800::/53 2600:1f18:3fff:f800::/53 2600:1f14:7ff:f800::/53 2600:1f14:fff:f800::/53 2406:da14:7ff:f800::/53 2406:da14:fff:f800::/53 2406:da18:7ff:f800::/53 2406:da1c:7ff:f800::/53 2406:da1c:fff:f800::/53 2406:da18:fff:f800::/53 2600:1f18:7fff:f800::/53 2a05:d018:7ff:f800::/53 2600:1f1e:fff:f800::/53 2620:107:300f::36b7:ff80/122 2a01:578:3::36e4:1000/122 2804:800:ff00::36e8:2840/122 2620:107:300f::36f1:2040/122 2406:da00:ff00::36f3:1fc0/122 2620:108:700f::36f4:34c0/122 2620:108:700f::36f5:a800/122 2400:6700:ff00::36f8:dc00/122 2400:6700:ff00::36fa:fdc0/122 2400:6500:ff00::36fb:1f80/122 2403:b300:ff00::36fc:4f80/122 2403:b300:ff00::36fc:fec0/122 2400:6500:ff00::36ff:fec0/122 2406:da00:ff00::6b17:ff00/122 2a01:578:3::b022:9fc0/122 2804:800:ff00::b147:cf80/122

IP 範囲の情報取得

環境によっては、ip-ranges.json や、get-checker-ip-ranges コマンドで IP 範囲を取得し、許可ルールに自動追加されている場合もあるかと思います。いつ更新されるか判っておりませんが、少なくとも執筆時点では、いずれの IP 範囲の情報にも新しい IP 範囲の記載はありません。不安な場合は、事前に手動で登録されるのが良いかと思います。

$ aws route53 get-checker-ip-ranges
{
    "CheckerIpRanges": [
        "54.183.255.128/26", 
        "54.228.16.0/26", 
        "54.232.40.64/26", 
        "54.241.32.64/26", 
        "54.243.31.192/26", 
        "54.244.52.192/26", 
        "54.245.168.0/26", 
        "54.248.220.0/26", 
        "54.250.253.192/26", 
        "54.251.31.128/26", 
        "54.252.79.128/26", 
        "54.252.254.192/26", 
        "54.255.254.192/26", 
        "107.23.255.0/26", 
        "176.34.159.192/26", 
        "177.71.207.128/26"
    ]
}

(2019年4月1日の適用時に追加されるのか、それよりも前に更新されるのか。これらの更新タイミングについてご存知の方、教えてください。)

さいごに

ヘルスチェック IP 範囲を許可ルールで通している環境は少なくないと思いますので、是非、お早めにご対応いただければと思います!

以上!大阪オフィスの丸毛(@marumo1981)でした!