他のバージョンの文書9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

4.10. ネットワークアドレス型関数

Table 4-21. cidrinet 演算子

演算子説明使用法
< 小なり(未満)inet '192.168.1.5' < inet '192.168.1.6'
<= 以下inet '192.168.1.5' <= inet '192.168.1.5'
= 等しいinet '192.168.1.5' = inet '192.168.1.5'
>= 以上inet '192.168.1.5' >= inet '192.168.1.5'
> 大なりinet '192.168.1.5' > inet '192.168.1.4'
<> 非等inet '192.168.1.5' <> inet '192.168.1.4'
<< 内包されるinet '192.168.1.5' << inet '192.168.1/24'
<<= 内包されるか等しいinet '192.168.1/24' <<= inet '192.168.1/24'
>> 内包するinet'192.168.1/24' >> inet '192.168.1.5'
>>= 内包するか等しいinet '192.168.1/24' >>= inet '192.168.1/24'

inet 型に対するすべての演算子は cidr の値に対しても適用できます。演算子 <<<<=>>、および >>= はサブネットに含まれているかどうかを調べるものです。2 つのネットワークアドレスのホスト部分を無視し、ネットワークの部分のみを考慮して 2 つのネットワークアドレスが等しいか、もしくは一方のネットワークが他方のサブネットになっているかを特定します。

Table 4-22. cidrinet 関数

関数返り値結果
broadcast(inet)inetネットワークブロードキャストアドレスbroadcast('192.168.1.5/24')192.168.1.255/24
host(inet)textIP アドレスをテキストで抽出host('192.168.1.5/24')192.168.1.5
masklen(inet)integerネットマスク長を抽出masklen('192.168.1.5/24')24
set_masklen(inet,integer)inetinet 値に対するネットマスク長を設定set_masklen('192.168.1.5/24',16)192.168.1.5/16
netmask(inet)inetネットワークにネットマスクを作成netmask('192.168.1.5/24')255.255.255.0
network(inet)cidrネットワークアドレスからネットワーク部を抽出network('192.168.1.5/24')192.168.1.0/24
text(inet)textIP アドレスとネットマスク長をテキストで抽出text(inet '192.168.1.5')192.168.1.5/32
abbrev(inet)text省略形表示をテキストで抽出abbrev(cidr '10.1.0.0/16')10.1/16

inet 型に対するすべての関数は cidr の値に対しても適用できます。関数 host()、 text()、および abbrev() は主として代わりとなる表示フォーマットを提供する目的のものです。通常のキャスティングの構文、 inet(expression) または colname::inet を使用しテキストフィールドを inet にキャストすることができます。

Table 4-23. macaddr 関数

関数返り値結果
trunc(macaddr)macaddr終りの 3 バイトをゼロに設定trunc(macaddr '12:34:56:78:90:ab')12:34:56:00:00:00

関数 trunc(macaddr) は終りの 3 バイトがゼロに設定された MAC アドレスを返します。これは、残った接頭部を製造者に対応させることに使えます。ソース配付物の contrib/mac ディレクトリに対応表を作成、維持するためのユーティリティが入っています。

macaddr 型は (><= 等の)辞書編集順に並べる標準関係演算子もサポートします。