NLB の名前解決をすると、一部のIPアドレスしか表示されません。原因と対処法を教えてください

NLB の名前解決をすると、一部のIPアドレスしか表示されません。原因と対処法を教えてください

NLB に対して nslookup コマンド等で名前解決をした際、一部のIPアドレスしか表示されない場合の理由と対処法を紹介します。
Clock Icon2024.01.17

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

困っていた内容

複数のアベイラビリティゾーン(以下AZ)を関連付けた NLB があります。
この NLB に対して nslookup や dig コマンドで名前解決を実行すると AZ の数だけIPアドレスが表示される想定ですが、一部のIPアドレスしか表示されません。原因と対処法を教えてください。

どう対応すればいいの?

NLB へ名前解決を行なった際、有効なターゲットが存在する AZ のIPアドレスのみが表示される仕様です。
例えば複数の AZ のうち ap-northeast-1a にのみターゲットの EC2 インスタンスが存在した場合、nslookup 等のコマンドで名前解決をすると ap-northeast-1a 側のIPアドレスのみが表示されます。

NLB に関連付けられたすべての AZ のIPアドレスを表示させたい場合は、すべての AZ にターゲットを配置するか、もしくは NLB の設定でクロスゾーン負荷分散を有効化することで実現できます。

やってみた

実際に試してみました。
今回は ap-northeast-1a(以下AZ-1a) と ap-northeast-1c(以下AZ-1c) の2つの AZ が関連付けられた NLB を用意します。

まず、ターゲット EC2 が片方(AZ-1a)にのみ稼働している状態で NLB のDNS名に対して dig コマンドで名前解決をしてみます。
するとIPアドレスが1つしか表示されません。NLB に関連付けられた2つの AZ のうち、ターゲットが存在している側(AZ-1a)のIPアドレスのみが表示されている状態です。

次は AZ-1a、AZ-1c の両方にターゲット EC2 が稼働している状態にします。
すると、dig コマンドで両方の AZ のIPアドレスが表示されました。

今度はターゲット EC2 が片方(AZ-1a)にのみ稼働している状態で、かつクロスゾーン負荷分散を有効化してみます。

この状態で名前解決をすると、2つの AZ のIPアドレスが返されます。
ターゲットが1つの AZ にしか存在しなくても、クロスゾーン負荷分散によって AZ を横断したルーティングが有効になったため、他 AZ のIPアドレスも表示される挙動となります。

以上、弊社ヘルプデスクに割とよくお問い合わせをいただく「NLBの名前解決で一部のIPアドレスしか表示されない」という事象について解説してみました。

2025年6月18日追記:
機会があって以下のような構成も試してみました。

NLB(2AZ)→ ALB(2AZ)→ EC2(1AZ)

上記の場合でも、NLB の名前解決をすると片方の IP アドレスしか返されない動作となりました。
NLB の直接ターゲットとなる ALB が 2AZ であっても、その先にあるターゲット EC2 が 1 つの AZ にしか存在しない場合は、やはり 1 つの IP アドレスしか返されないことを確認しました。

なお、もし各 AZ にターゲットが存在する場合でも NLB の IP アドレスが返らない際には、ドキュメントに記載された以下のような状況も考えられます。当てはまるものがないか確認してみましょう。

ロードバランサーのゾーンヘルス

Network Load Balancer には、Route 53 に有効な各アベイラビリティーゾーンのゾーン DNS レコードと IP アドレスがあります。Network Load Balancer が特定のアベイラビリティーゾーンのゾーンヘルスチェックに合格しなかった場合、その DNS レコードは Route 53 から削除されます。
(中略)

  • ロードバランサーに正常なターゲットがない

  • 正常なターゲットの数が、設定された最小値未満である

  • ゾーンシフトまたはゾーン自動シフトが進行中

  • 問題が検出されたため、トラフィックが自動的に正常なゾーンに移行中



この情報がどなたかのお役に立てば幸いです!

参考資料

アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.