サイトでロードバランサーが使用されているかどうかを確認する方法はありますか?

サイトでロードバランサーが使用されているかどうかを確認する方法はありますか?

タイトルの通りです。特定のサイトにロード バランサーが存在することを示す特定の動作はありますか?

答え1

編集: LoadBalancer を使用する主な目的は、クライアントと LoadBalancer のやり取りを透過的にし、基本的に目に見えないようにすることであるため、これは不可能ではないにしても非常に困難です (この言葉は嫌いです)。そうは言っても、私の元の投稿は次のとおりです。

私はかなり大規模なサイトのロード バランサーを管理しています。訪問者が特定のアプリケーション サーバーにアクセスしていることが分かる唯一の方法は、ログイン ページの下部にサーバーの具体的な名前が表示されることです。これにより、訪問者が抱える問題のトラブルシューティングに役立ちます。

それ以外では、そのポリシーに従わなかった場合にロード バランサーを実行しているという事実を「示す」要因は 1 つしか思いつきません。確認する方法は次のとおりですが、運が必要です。

ロード バランサが、すべてのトラフィックをいずれかのサーバに転送するように設定されているとします。または、少なくとも、あるサーバ間の ssh トラフィックを別のサーバに転送します。どちらのボックスにもログインするためのログイン クレデンシャルを持っていない可能性がありますが、ログインしようとすると、どちらも異なるキーを提供します。そのため、最初に ssh 経由でログインしようとすると、キーを受け入れるかどうか尋ねられます。その後、2 回目または 3 回目の要求で運が良ければ、別のキーがあること (つまり、別のボックスである) が通知されます。*nix システムでは、中間者攻撃が原因である可能性があるという警告がよく表示されます。

したがって、次の 2 つの点を実施する必要があります。

  1. リモートサーバー上のSSH
  2. SSH の LB

したがって、比較的短い期間に 2 つのキーを取得した場合、システム管理者がキーを変更したのではなく、ロード バランサーの背後にある 2 台の別々のマシンと通信しただけであると想定できます。

注: 他に 1 つの項目がありますが、これはまったくの当てずっぽうです。このサーバーがどの IP ブロックにグループ化されているかを調べてみてください。次に、これらの特定の IP アドレスの 1 つが LB に配置されているとします (実際、これらの IP の 1 つにあります)。

たとえば、ロード バランサは XXX.XXX.XXX.5 に配置されます。LB は、少なくとも 1 つの追加 IP アドレスのすべてのトラフィックをキャプチャするように設定されます。通常、XXX.XXX.XXX.5 のトラフィックは転送されません (私が持っている商用ハードウェアは、間違いなくこれを行いません)。したがって、管理アドレスが存在することは間違いありません。

LB がすべての外部ホストからの管理を許可するように設定されている場合、LB が見つかるまで IP アドレスに /admin のようなものを追加できる場合があります。これは、LB が管理にそのパスを使用することを前提としています。

答え2

決定的な方法はありませんが、探す手がかりはたくさんあります。
- nmap します。nmap は、通信しているデバイスの OS に関する手がかりをいくつか提供できます。BSD と表示され、URL が .aspx で終わっている場合は、何かが見つかります。
- クッキー: 多くのロードバランサーはセッション クッキーを追加します (または追加できます)。奇妙なものを探して Google で検索してください。F5 サポート フォーラムにたどり着いたら、それで終わりです。
- その他のさまざまなヘッダー: 多くのロードバランサーは、アイテムがキャッシュされたかどうか (およびその他の理由) などに基づいてヘッダーを追加します。興味深いヘッダーを探して Google で検索してください。
- ページ上または HTML コメントに埋め込まれている場合、開発者がトラブルシューティングに役立つように「served by web7」を追加していることがよくあります。
- 複数の異なる IP から同じコンテンツをすばやく要求し、ETag ヘッダーを比較します。 Apache はデフォルトでファイルシステムの inode に基づいて etag を決定しますが、多くの管理者はそれを調整しません。そのため、同じコンテンツに対して異なる etag が表示される場合、そのコンテンツは別のサーバーからのものであると推測できます (Apache でのみ機能し、調整されていない場合のみ機能し、共有ファイルシステムでない場合にのみ機能します)。

正直に言うと、これらすべてから意味のある答えが得られるのは 4 回に 1 回程度と予想されますが、全体としては、キャサリンが言ったように「何かが間違っている」場合を除いて、実際に知ることはできません。

答え3

IP ID は IP スタックごとに変わるため、ロード バランサーの「背後」にある IP ホストも変わります。hping のようなツールを使用すると、同じ範囲に属さない ID、または奇妙な偶然で十分に近い場合でも増加しない ID に注意してください。

hping3 www.yoursite.com -S -p 80 (or whatever)

上記は、アプリケーション層の「下」の LB の背後にある複数のホストをキャッチします。

答え4

ロードバランサーがクッキーベースの永続性クッキーを見れば手がかりが得られるかもしれません。

関連情報