GitHubContribute in GitHub: オンラインでの編集

ipv4_compare()

2 つの IPv4 ストリングを比較します。 2 つの IPv4 ストリングは、引数接頭部から計算された結合 IP 接頭部マスク、およびオプションの PrefixMask 引数を考慮しながら、構文解析され、比較されます。

ipv4_compare("127.0.0.1", "127.0.0.1") == 0
ipv4_compare('192.168.1.1', '192.168.1.255') < 0
ipv4_compare('192.168.1.1/24', '192.168.1.255/24') == 0
ipv4_compare('192.168.1.1', '192.168.1.255', 24) == 0

構文

ipv4_compare(Expr1, Expr2[ ,接頭部マスク])

引数

名前 タイプ 必須 説明
Expr1 ストリング IPv4 アドレスを表すストリング式。 IPv4 ストリングは、 IP 接頭部表記を使用してマスクできます。
Expr2 ストリング IPv4 アドレスを表すストリング式。 IPv4 ストリングは、 IP 接頭部表記を使用してマスクできます。
PrefixMask 数値またはストリング 考慮に入れられる最上位ビットの数を表す 0 から 32 までの整数。

IP 接頭部表記法

IP アドレスは、スラッシュ (/) 文字を使用して IP-prefix notation で定義できます。 スラッシュ (/) の LEFT に対する IP アドレスは、基本 IP アドレスです。 スラッシュ (/) の右側の数値 (1 から 32) は、ネットマスク内の連続する 1 ビットの数です。

例えば、 192.168.2.0/24 には、24 個の連続ビットを含むネット/サブネット・マスク、または小数点付き 10 進数形式の 255.255.255.0 が関連付けられます。

返品

  • 0: 最初の IPv4 ストリング引数が 2 番目の IPv4 ストリング引数と等しい場合
  • 1: 最初の IPv4 ストリング引数が 2 番目の IPv4 ストリング引数より大きい場合
  • -1: 最初の IPv4 ストリング引数が 2 番目の IPv4 ストリング引数より小さい場合
  • null: 2 つの IPv4 ストリングのいずれかの変換が失敗した場合。

IPv4 ストリング内で指定された IP 接頭部表記を使用して IP を比較します。


events_all
| project  ip1_string=src_ip , ip2_string= dst_ip
| extend result = ipv4_compare(ip1_string, ip2_string)
| project ip1_string, ip2_string, result

結果

返された結果のサンプルを表示しています。

ip1_string ip2_string 結果
192.168.1.0 192.168.1.0 0
192.168.56.10 192.168.56.3 1
172.16.0.1 192.168.200.25 -1