はじめに
私はクラウドCoEをやっているのですが、先日「Direct Connectを利用した通信経路でtracerouteをかけた結果、リンクローカルアドレスが登場した。これは不適切なルーティング設定になっているのか?」という質問を受けました。
この質問への回答を今回記事にまとめます。
リンクローカルアドレスとは
リンクローカルアドレスは、同一のセグメント内のみで有効なアドレスです。
DHCPサーバ(プライベートIPアドレスを割り当てる役目を持ったサーバ)が存在しないネットワーク内で使われる、特別なIPアドレスです。
DHCPサーバがなくても個々のコンピュータが自分自身にIPアドレスを割り振ることから、「自己割り当てIPアドレス(AutoIP)」とも呼ばれます。
IPv4アドレスでは、169.254.0.0/16 がリンクローカルアドレスとして利用されます。
Direct Connect
Direct ConnectはAWSとオンプレミスをプライベート接続する専用線サービスです。
今回のケースでは、以下の通信経路でした。
なぜリンクローカルアドレスが登場したのか
Direct Connectの仮想インタフェースが原因でした。
Direct Connect では仮想インターフェイスに自動的に設定される IP アドレスの範囲として 169.254.0.0/16 が使用されます。
Q: 仮想インターフェイスの両端には、それぞれどの IP アドレスが割り当てられますか?
パブリック AWS クラウドへの仮想インターフェイスを構成する場合は、お客様が所有するパブリック IP 空間からの IP アドレスが接続の両端に割り当てられている必要があります。仮想インターフェイスの接続先が VPC であり、AWS でピア IP CIDR を自動生成する選択をした場合、接続の両端の IP アドレス空間は AWS によって割り当てられ、169.254.0.0/16 の範囲内となります。
おわりに
AWSの仕様上、Direct Connectの通信経路に169.254.0.0/16 が登場するものであり、不適切なルーティング設定になっている状態ではないとわかりました。
非常に勉強になりました。