169.254.169.254
概要

このアドレスはIPv4アドレスの169.254.0.0/16の範囲に設けられた「リンクローカルアドレス」(link-local address)のうちの一つである。RFC 3927によってルータによる転送が禁止されており、インターネットや異なるネットワークには流れない。同一ネットワーク内に限定された通信のみ可能となる。
Amazon Web Services(AWS)やGoogle Cloud、Microsoft Azureといった主要なクラウドサービスでは、このアドレスをインスタンスについての情報(メタデータ)をサービス側から伝達するサービスの提供元(エンドポイント)として採用している。
クラウド上の仮想マシンは、インスタンスID、ホスト名、リージョン、IAMロールに基づく一時的な認証情報など、起動時に動的に決まる情報をあらかじめOSイメージに組み込むことができない。これらの情報は起動後にHTTPリクエストで169.254.169.254へ問い合わせ、クラウド基盤側から応答を受け取る仕組みになっている。このトラフィックはクラウド基盤の内部で処理され、外部ネットワークへは送信されない。
クラウド事業者ごとに取得できる情報の範囲やアクセス方法は異なる。AWSは当初、単純なHTTPリクエストで情報を返すIMDS(Instance Metadata Service)方式を採用していたが、これはセキュリティ上の問題となった。Webアプリケーションの脆弱性を悪用するSSRF攻撃によって、第三者がメタデータサービスから認証情報を窃取できる場合があったためである。この問題に対応するためAWSはIMDSv2を導入し、最初にセッショントークンを取得してからアクセスする2ステップ方式を標準とした。Google CloudやAzureでも同様のアドレスが使われるが、要求ヘッダやURLの構成、返却されるデータ形式はそれぞれ異なる。