メインコンテンツまでスキップ
に最終更新

IPV4_TO_IPV6

説明​

IPv4 アドレスを IPv6 アドレスに変換します。変換後のアドレスは ::ffff:IPv4 形式の IPv4 マップド IPv6 アドレスです。

構文​

IPV4_TO_IPV6(<ipv4_address>)

パラメータ​

  • <ipv4_address>: IPv4 型のアドレス

戻り値​

戻り値の型: IPv6

戻り値の意味:

  • 対応する IPv6 アドレスを ::ffff:IPv4 形式で返します
  • これは標準的な IPv4 マップド IPv6 アドレスの形式です

使用上の注意​

  • 標準的な IPv4 マップド形式で IPv4 アドレスを IPv6 アドレスに埋め込みます
  • 変換後のアドレスは、IPv6 ネットワークで IPv4 との互換性を保つために使用できます
  • すべての有効な IPv4 アドレスをサポートします
  • 入力パラメータが NULL の場合は NULL を返します

例​

IPv4 アドレスを IPv6 アドレスに変換します。

SELECT ipv4_to_ipv6(to_ipv4('192.168.1.1')) as ipv6_address;
+--------------------+
| ipv6_address |
+--------------------+
| ::ffff:192.168.1.1 |
+--------------------+

複数の IPv4 アドレスを変換します。

SELECT 
ipv4_to_ipv6(to_ipv4('10.0.0.1')) as private_ip,
ipv4_to_ipv6(to_ipv4('8.8.8.8')) as public_ip;
+-----------------+----------------+
| private_ip | public_ip |
+-----------------+----------------+
| ::ffff:10.0.0.1 | ::ffff:8.8.8.8 |
+-----------------+----------------+

IPv4 アドレスの境界値を変換します。

SELECT 
ipv4_to_ipv6(to_ipv4('0.0.0.0')) as min_ip,
ipv4_to_ipv6(to_ipv4('255.255.255.255')) as max_ip;
+----------------+------------------------+
| min_ip | max_ip |
+----------------+------------------------+
| ::ffff:0.0.0.0 | ::ffff:255.255.255.255 |
+----------------+------------------------+

入力パラメータが NULL の場合は NULL を返します。

SELECT ipv4_to_ipv6(NULL) as null_result;
+-------------+
| null_result |
+-------------+
| NULL |
+-------------+

キーワード​

IPV4_TO_IPV6