Skip to content

Latest commit

 

History

History
102 lines (77 loc) · 4.41 KB

9efc20fd09f32c.md

File metadata and controls

102 lines (77 loc) · 4.41 KB
title emoji type topics published publication_name
Standard Public Load BalancerでICMP ping/tracerouteに対応したので投げてみる
🔀
tech
azure
icmp
LB
microsoft
true
microsoft

モチベ

  • Azure LBでは従来ICMPは応答しなかったが、直近のアップデートによって対応した

https://azure.microsoft.com/ja-jp/updates/general-availability-inbound-icmpv6-pings-and-traceroute-are-now-supported-on-azure-load-balancer/

https://learn.microsoft.com/ja-jp/azure/load-balancer/load-balancer-test-frontend-reachability?tabs=windows-outside%2Cping%2Cwindowsvm

触ってみる

バックエンド用VMを作成

  • Ubuntuで適当に作成

:::message alert

  • Load Balancerのプローブに応答できるようにUbuntuマシンでapache(もしくは負荷分散に応答するミドルウェア)を稼働させておく
$ sudo apt update

$ sudo apt install apache2
  • また、バックエンドのVM側のNSGでHTTPも開放しておく
  • この設定をしていないと、プローブが返ってこないため、not reachableになる

:::

Public Load Balancerを作成

  • フロントエンドのIPはStandard SKU
  • バックエンドプールに先ほど作成したVMを指定

:::message

  • このICMPの応答確認には正常性プローブの結果を利用している
  • よって、負荷分散規則がないと正常性プローブがバックエンドプールと紐づかないため、応答が返ってこないことに注意 :::

ping/traceroute

ping

  • 手元のWindows PC(自宅)からPublic Load Balancerのフロントエンドにpingを投げてみると、応答が返ってくる
PS C:\Users\xxxx> ping 20.48.13.160

20.48.13.160 に ping を送信しています 32 バイトのデータ:
20.48.13.160 からの応答: バイト数 =32 時間 =4ms TTL=118
20.48.13.160 からの応答: バイト数 =32 時間 =4ms TTL=118
20.48.13.160 からの応答: バイト数 =32 時間 =4ms TTL=118
20.48.13.160 からの応答: バイト数 =32 時間 =4ms TTL=118

20.48.13.160 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 4ms、最大 = 4ms、平均 = 4ms
  • その他、以下のような種類の結果が得られる
シナリオ 予想される応答
すべてのバックエンド インスタンスでダウンが検出される 宛先ホストに到達できません
すべてのバックエンド インスタンスがオフになっている 応答なし: 要求がタイムアウトしました
少なくとも 1 つのバックエンド インスタンスで稼働が検出される 正常なエコー応答
Load Balancer の背後にバックエンド インスタンスがない、または負荷分散規則が関連付けられていない 応答なし: 要求がタイムアウトしました

tracert

  • 同様にtracertコマンドも試してみると、到達確認ができる
PS C:\Users\xxxx> tracert 20.48.13.160

20.48.13.160 へのルートをトレースしています。経由するホップ数は最大 30 です

  1    <1 ms     1 ms    <1 ms  192.168.3.1
  2     4 ms    16 ms    19 ms  softbankxxxxxxx.bbtec.net [x.x.x.x]
  3     4 ms     4 ms     5 ms  softbankxxxxxxx.bbtec.net [x.x.x.x]
  4     *        *        *     要求がタイムアウトしました。
  5     *        *        *     要求がタイムアウトしました。
  6     6 ms     4 ms     4 ms  softbankxxxxxxx.bbtec.net [x.x.x.x]
  7     5 ms     4 ms     5 ms  ae30-0.icr02.tyo31.ntwk.msn.net [104.44.235.188]
  8     *        *        *     要求がタイムアウトしました。
  9     *        *        *     要求がタイムアウトしました。
 10     *        *        *     要求がタイムアウトしました。
 11     *        *        *     要求がタイムアウトしました。
 12     *        *        *     要求がタイムアウトしました。
 13     4 ms     4 ms     4 ms  20.48.13.160

おわり

  • Public Load BalancerがICMPを返すようになったことで、パブリックIPを持たないVMをバックエンドプールに持つLBのトラシューが多少やりやすくなった、、、はず!