2.8.9.5.3. IP セットの種類
- bitmap:ip
- IPv4 ホストアドレス、ネットワーク範囲、またはセットの作成時に
netmaskオプションが使用される場合に CIDR 表記の prefix-length を持つ IPv4 ネットワークアドレスを保存します。オプションで、タイムアウト値、カウンター値、およびコメントを保存できます。65536エントリーまで保存できます。bitmap:ipセットを作成するコマンドの形式は以下のとおりです。ipset create set-name range start_ipaddr-end_ipaddr |ipaddr/prefix-length[netmask prefix-length] [タイムアウト 値] [カウンター] [comment]
ipset create set-name range start_ipaddr-end_ipaddr |ipaddr/prefix-length[netmask prefix-length] [タイムアウト 値] [カウンター] [comment]Copy to Clipboard Copied! Toggle word wrap Toggle overflow
例2.6 接頭辞の長さを使用したアドレスの範囲の IP セットの作成
接頭辞の長さを使用してアドレスの範囲の IP セットを作成するには、以下のように
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
bitmap:ip セットタイプを使用します。
ipset create my-range bitmap:ip range 192.168.33.0/28
~]# ipset create my-range bitmap:ip range 192.168.33.0/28
セットが作成されたら、以下のようにエントリーを追加できます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
ipset add my-range 192.168.33.1
~]# ipset add my-range 192.168.33.1
一覧のメンバーを確認します。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
アドレスの範囲を追加するには、以下を行います。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
ipset add my-range 192.168.33.2-192.168.33.4
~]# ipset add my-range 192.168.33.2-192.168.33.4
一覧のメンバーを確認します。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
例2.7 Netmask を使用したアドレス範囲の IP セットの作成
ネットマスクを使用してアドレスの範囲の IP セットを作成するには、以下のように
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
たら、以下のようにエントリーを追加できます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
bitmap:ip セットタイプを使用します。セットが作成され
ipset create my-big-range bitmap:ip range 192.168.124.0-192.168.126.0 netmask 24
~]# ipset create my-big-range bitmap:ip range 192.168.124.0-192.168.126.0 netmask 24
ipset add my-big-range 192.168.124.0
~]# ipset add my-big-range 192.168.124.0
アドレスの追加を試みると、そのアドレスが含まれる範囲が追加されます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
- bitmap:ip,mac
- IPv4 アドレスと MAC アドレスをペアとして保存します。
65536エントリーまで保存できます。ipset create my-range bitmap:ip,mac range start_ipaddr-end_ipaddr | ipaddr/prefix-length[タイムアウト 値] [カウンター] [comment]
ipset create my-range bitmap:ip,mac range start_ipaddr-end_ipaddr | ipaddr/prefix-length[タイムアウト 値] [カウンター] [comment]Copy to Clipboard Copied! Toggle word wrap Toggle overflow
例2.8 IPv4 MAC アドレスペアの範囲の IP セットの作成
IPv4 MAC アドレスペアの範囲に IP セットを作成するには、以下のように
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
はありません。
bitmap:ip,mac セットタイプを使用します。セットの作成時に MAC アドレスを指定する必要
ipset create my-range bitmap:ip,mac range 192.168.1.0/24
~]# ipset create my-range bitmap:ip,mac range 192.168.1.0/24
セットが作成されたら、以下のようにエントリーを追加できます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
ipset add my-range 192.168.1.1,12:34:56:78:9A:BC
~]# ipset add my-range 192.168.1.1,12:34:56:78:9A:BC
- bitmap:port
- ポートの範囲を保存します。
65536エントリーまで保存できます。ipset create my-port-range bitmap:port range start_port-end_port[タイムアウト 値] [カウンター] [comment]
ipset create my-port-range bitmap:port range start_port-end_port[タイムアウト 値] [カウンター] [comment]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 設定された match および SET ターゲット netfilter カーネルモジュールは、保存された数字を TCP または UDP ポート番号として解釈します。プロトコルは、オプションでポートとともに指定できます。サービス名が使用され、その名前が TCP サービスとして存在しない場合にprotoのみ指定する必要があります。
例2.9 ポートの範囲の IP セットの作成
ポートの範囲に IP セットを作成するには、以下のように
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
たら、以下のようにエントリーを追加できます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
bitmap:port セットタイプを使用します。セットが作成され
ipset create my-permitted-port-range bitmap:port range 1024-49151
~]# ipset create my-permitted-port-range bitmap:port range 1024-49151
ipset add my-permitted-port-range 5060-5061
~]# ipset add my-permitted-port-range 5060-5061
- hash:ip
- ホストまたはネットワークアドレスをハッシュの形式で保存します。デフォルトでは、ネットワークプレフィックスの長さを付けずに指定するアドレスはホストのアドレスです。ゼロの IP アドレスは保存できません。
ipset create my-addresses hash:ip [ファミリー[ inet | inet6 ]] [hashsize 値] [maxelem 値] [netmask prefix-length] [タイムアウト 値]
ipset create my-addresses hash:ip [ファミリー[ inet | inet6 ]] [hashsize 値] [maxelem 値] [netmask prefix-length] [タイムアウト 値]Copy to Clipboard Copied! Toggle word wrap Toggle overflow がfamily省略されたアドレスが IPv4 アドレスとして解釈される場合、inetファミリーはデフォルトでになります。hashsize値は、使用する初期ハッシュサイズで、デフォルトはに設定され1024ます。maxelem値は、セットに保存できる要素の最大数で、デフォルトではに設定され65536ます。netfilter ツールは、最も特殊なネットワーク接頭辞を検索します。これは、一致するアドレスの最小ブロックを探します。
例2.10 IP アドレスの IP セットの作成
IP アドレスの IP セットを作成するには、以下のように
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
たら、以下のようにエントリーを追加できます。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
hash:ip セットタイプを使用します。セットが作成され
ipset create my-addresses hash:ip
~]# ipset create my-addresses hash:ip
ipset add my-addresses 10.10.10.0
~]# ipset add my-addresses 10.10.10.0
netmask や timeout などの追加オプションが必要な場合は、セットの作成時に指定する必要があります。たとえば、maxelem オプション
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
はセット内の要素の合計数に制限されるため、メモリー領域が予約されます。
ipset create my-busy-addresses hash:ip maxelem 24 netmask 28 timeout 100
~]# ipset create my-busy-addresses hash:ip maxelem 24 netmask 28 timeout 100
timeout オプションは、指定された秒数の要素がセットのみに存在することを意味します。例:
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
以下の出力は、タイムアウト期間の終了時にセットから
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
要素が削除されることを示しています。
ipset add my-busy-addresses timeout 100
~]# ipset add my-busy-addresses timeout 100
その他の例は、
ipset(8) man ページを参照してください。