IPv4 および IPv6 アドレスを操作するための関数
IPv4NumToString
UInt32 の数値を受け取ります。これをビッグエンディアンの IPv4 アドレスとして解釈します。対応する IPv4 アドレスを A.B.C.d 形式(小数形式のドット区切りの数値)で含む文字列を返します。
エイリアス: INET_NTOA
.
IPv4StringToNum
IPv4NumToString の逆の関数です。IPv4 アドレスの形式が無効な場合、例外をスローします。
エイリアス: INET_ATON
.
IPv4StringToNumOrDefault(s)
IPv4StringToNum
と同様ですが、IPv4 アドレスの形式が無効な場合は 0 を返します。
IPv4StringToNumOrNull(s)
IPv4StringToNum
と同様ですが、IPv4 アドレスの形式が無効な場合は null を返します。
IPv4NumToStringClassC(num)
IPv4NumToString に似ていますが、最後のオクテットの代わりに xxx を使用します。
例:
'xxx' を使用することは非常に珍しいため、今後変更される可能性があります。このフラグメントの正確な形式に依存しないことをお勧めします。
IPv6NumToString(x)
バイナリ形式の IPv6 アドレスを含む FixedString(16) 値を受け取ります。このアドレスをテキスト形式で含む文字列を返します。IPv6 マップされた IPv4 アドレスは形式 ::ffff:111.222.33.44 で出力されます。
エイリアス: INET6_NTOA
.
例:
IPv6StringToNum
IPv6NumToString の逆の関数です。IPv6 アドレスの形式が無効な場合、例外をスローします。
入力文字列が有効な IPv4 アドレスを含む場合、その IPv6 同等物を返します。HEX は大文字または小文字を使用できます。
エイリアス: INET6_ATON
.
構文
引数
string
— IP アドレス。 String.
返される値
- バイナリ形式の IPv6 アドレス。 FixedString(16).
例
クエリ:
結果:
関連項目
IPv6StringToNumOrDefault(s)
IPv6StringToNum
と同様ですが、IPv6 アドレスの形式が無効な場合は 0 を返します。
IPv6StringToNumOrNull(s)
IPv6StringToNum
と同様ですが、IPv6 アドレスの形式が無効な場合は null を返します。
IPv4ToIPv6(x)
UInt32
の数値を受け取ります。これをビッグエンディアン の IPv4 アドレスとして解釈します。バイナリ形式の IPv6 アドレスを含む FixedString(16)
値を返します。例:
cutIPv6(x, bytesToCutForIPv6, bytesToCutForIPv4)
バイナリ形式の IPv6 アドレスを含む FixedString(16) 値を受け取ります。指定されたバイト数を削除したアドレスをテキスト形式で含む文字列を返します。例えば:
IPv4CIDRToRange(ipv4, Cidr),
IPv4 および CIDR を含む UInt8 値を受け取ります。サブネットの下限と上限の範囲を含む 2 つの IPv4 を持つタプルを返します。
IPv6CIDRToRange(ipv6, Cidr),
IPv6 および CIDR を含む UInt8 値を受け取ります。サブネットの下限と上限の範囲を持つ 2 つの IPv6 を含むタプルを返します。
toIPv4
文字列または UInt32 形式の IPv4 アドレスを IPv4 タイプに変換します。
IPv4StringToNum
および IPv4NumToString 関数に似ていますが、文字列と符号なし整数データ型の両方を入力引数としてサポートします。
構文
引数
x
— IPv4 アドレス。String
,UInt8/16/32
.
返される値
- IPv4 アドレス。 IPv4.
例
クエリ:
結果:
クエリ:
結果:
クエリ:
結果:
toIPv4OrDefault
toIPv4
と同様ですが、IPv4 アドレスの形式が無効な場合は 0.0.0.0
(0 IPv4)、または提供された IPv4 デフォルトを返します。
構文
引数
返される値
string
が現在の IPv4 アドレスに変換されます。 String.
例
クエリ:
結果:
toIPv4OrNull
toIPv4
と同様ですが、IPv4 アドレスの形式が無効な場合は null を返します。
構文
引数
string
— IP アドレス。 String.
返される値
string
が現在の IPv4 アドレスに変換されます。無効なアドレスの場合は null になります。 String.
例
クエリ:
結果:
toIPv4OrZero
toIPv4
と同様ですが、IPv4 アドレスの形式が無効な場合は 0.0.0.0
を返します。
構文
引数
string
— IP アドレス。 String.
返される値
string
が現在の IPv4 アドレスに変換されます。無効なアドレスの場合は0.0.0.0
になります。 String.
例
クエリ:
結果:
toIPv6
文字列または UInt128 形式の IPv6 アドレスを IPv6 タイプに変換します。文字列の場合、IPv6 アドレスの形式が無効な場合は空の値を返します。
IPv6StringToNum および IPv6NumToString 関数に似ており、IPv6 アドレスをバイナリ形式(つまり、FixedString(16)
)に変換します。
入力文字列に有効な IPv4 アドレスが含まれている場合、その IPv6 同等物が返されます。
構文
引数
返される値
- IP アドレス。 IPv6.
例
クエリ:
結果:
クエリ:
結果:
toIPv6OrDefault
toIPv6
と同様ですが、IPv6 アドレスの形式が無効な場合は ::
(0 IPv6) または提供された IPv6 デフォルトを返します。
構文
引数
返される値
- IPv6 アドレス IPv6、そうでない場合は
::
またはオプションの提供されたデフォルトが返されます。
例
クエリ:
結果:
toIPv6OrNull
toIPv6
と同様ですが、IPv6 アドレスの形式が無効な場合は null を返します。
構文
引数
string
— IP アドレス。 String.
返される値
- IP アドレス。 IPv6。無効な形式の場合は null を返します。
例
クエリ:
結果:
toIPv6OrZero
toIPv6
と同様ですが、IPv6 アドレスの形式が無効な場合は ::
を返します。
構文
引数
string
— IP アドレス。 String.
返される値
- IP アドレス。 IPv6。無効な形式の場合は
::
を返します。
例
クエリ:
結果:
IPv6StringToNumOrDefault(s)
toIPv6
と同様ですが、IPv6 アドレスの形式が無効な場合は 0 を返します。
IPv6StringToNumOrNull(s)
toIPv6
と同様ですが、IPv6 アドレスの形式が無効な場合は null を返します。
isIPv4String
入力された文字列が IPv4 アドレスであるかどうかを判定します。string
が IPv6 アドレスの場合、0
を返します。
構文
引数
string
— IP アドレス。 String.
返される値
string
が IPv4 アドレスであれば1
、そうでなければ0
。 UInt8.
例
クエリ:
結果:
isIPv6String
入力された文字列が IPv6 アドレスであるかどうかを判定します。string
が IPv4 アドレスの場合、0
を返します。
構文
引数
string
— IP アドレス。 String.
返される値
string
が IPv6 アドレスであれば1
、そうでなければ0
。 UInt8.
例
クエリ:
結果:
isIPAddressInRange
IP アドレスが CIDR 表記で表されるネットワークに含まれているかを判定します。真の場合は 1
を、それ以外は 0
を返します。
構文
この関数は、文字列として表される IPv4 および IPv6 アドレス(およびネットワーク)の両方を受け付けます。アドレスの IP バージョンと CIDR が一致しない場合は 0
を返します。
引数
address
— IPv4 または IPv6 アドレス。 String、 IPv4、 IPv6、Nullable(String)
,Nullable(IPv4)
およびNullable(IPv6)
。prefix
— CIDR 形式の IPv4 または IPv6 ネットワークプレフィックス。 String.
返される値
1
または0
。 UInt8.
例
クエリ:
結果:
クエリ:
結果:
クエリ:
結果: