Table 4-18. cidrと inet演算子
演算子 | 説明 | 使用方法 |
---|---|---|
< | 小さい | 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つのアドレスのホストの 部分は無視し、ネットワークの部分のみを使用し、1つのネットワークの 部分はもう片方のサブネットと等しいかを検査します。
Table 4-19. cidrとinet関数
関数 | 返り値 | 説明 | 例 | 結果 |
---|---|---|---|---|
broadcast(inet) | inet | ネットワークのためにアドレスを伝える | broadcast('192.168.1.5/24') | 192.168.1.255/24 |
host(inet) | text | IPアドレスを文字列で抽出する | host('192.168.1.5/24') | 192.168.1.5 |
masklen(inet) | integer | ネットマスクの長さを抽出する | masklen('192.168.1.5/24') | 24 |
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) | text | IPアドレスとマスクの長さを文字列として抽出する | 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()の関数は別のディスプレーフォーマットを 提供するための関数です。
Table 4-20. macaddr関数
関数 | 返り値 | 説明 | 例 | 結果 |
---|---|---|---|---|
trunc(macaddr) | macaddr | 最後の3バイトをゼロにする | trunc(macaddr '12:34:56:78:90:ab') | 12:34:56:00:00:00 |
trunc(macaddr)関数は、MACアドレスの 最後の3バイトをゼロに設定して返します。これは、製造業社の 余っている接頭数に対応するためです。contrib/mac ディレクトリには連係テーブルを作成/維持するためのものがあります。
macaddr型は字句解析のために>や <=などの標準リレーショナル演算子も サポートしています。