Solaris のシステム管理 (IP サービス)

Oracle Solaris IP フィルタのアドレスプール機能の使用

アドレスプールは、アドレスとネットマスクのペアのまとまりに名前付けを行います。アドレスプールは、IP アドレスと規則の一致を取るために必要な時間を短縮します。また、アドレスプールによって、大きなまとまりのアドレスをより簡単に管理できます。

アドレスプール構成規則は、ippool.conf ファイルに保存されます。起動時にアドレスプール規則をロードする場合は、アドレスプールの規則を保存する /etc/ipf/ippool.conf というファイルを作成します。 起動時に アドレスプール規則をロードしない場合は、適当な場所に ippool.conf ファイルを保存し、ippool コマンドによってパケットフィルタリングを手動でアクティブ化します。

アドレスプールの構成

次の構文でアドレスプールを作成します。


table role = role-name type = storage-format number = reference-number
table

複数のアドレスへの参照を定義します。

role

Oracle Solaris IP フィルタでプールの役割を指定します。この時点で、参照できる役割は ipf だけです。

type

プールの保存形式を指定します。

number

フィルタリング規則が使用する参照番号を指定します。

たとえば、アドレスが 10.1.1.1 および 10.1.1.2 でネットワークが 192.16.1.0 のグループをプール番号 13 で参照する場合、アドレスプールの構成ファイルに次の規則を含めます。

table role = ipf type = tree number = 13 
{ 10.1.1.1/32, 10.1.1.2/32, 192.168.1.0/24 };

次に、フィルタリング規則のプール番号 13 を参照するには、次の例のような規則を構築します。


pass in from pool/13 to any

なお、プールへの参照を含む規則ファイルをロードする前に、プールファイルをロードする必要があります。プールファイルをロードしていない場合、次の出力のようにプールは未定義となります。


# ipfstat -io
empty list for ipfilter(out)
block in from pool/13(!) to any

プールをあとで追加しても、そのプールの追加によってカーネルの規則セットが更新されることはありません。そのプールを参照する規則ファイルも再ロードする必要があります。

パケットフィルタリング規則を記述するときの詳細な文法および構文については、ippool(4) のマニュアルページを参照してください。