2.0系カーネルのIPmasquerade機能制御用である
ipfwadmよりも非常に柔軟な設定が可能です。
例えば、ppp接続をしているときのみIPmasquerade機能を設定するなどの動的な設定もできるようです。
詳しくは参考文献を参照して下さい。
ここではIPmasquerade機能を実現する方法のみ説明します。
注意: ipchainsを使うには、IPmasqueradeに対応したkernelが必要です。 もしもkernelがIPmasqueradeに対応していない場合にはkernelの再コンパイルが必要となります。
再コンパイル時のコンフィギュレーションにおいて、少なくとも以下の項目が"yes"となっている必要があります:
CONFIG_FIREWALL=y CONFIG_INET=y CONFIG_IP_FIREWALL=y CONFIG_IP_MASQUERADE=y CONFIG_IP_MASQUERADE_ICMP=y
3.1 ソフトの入手 |
ftp://ftp.rustcorp.com/ipchains
3.2 インストール |
3.3 運用 |
記述規則は以下の通りです。
ipchains -[ADC] chain rule-specification [options] ipchains -[RI] chain rulenum rule-specification [options] ipchains -D chain rulenum [options] ipchains -[LFZNX] [chain] [options] ipchains -P chain target [options] ipchains -M [ -L | -S ] [options] |
IPCHAINS="/sbin/ipchains" if [ -x $IPCHAINS ] ; then $IPCHAINS -P forward DENY $IPCHAINS -A forward -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQ echo 1> /proc/sys/net/ipv4/ip_forward fi |
note:
Redhat系ディストリビューションの場合、ipchainsの設定は"/etc/sysconfig/ipchains" に記述されます。 "setup"コマンドの[FireWallの設定]で簡単に設定する事も可能です。
基本的なコマンドとしては
/sbin/ipchains -P forward DENY |
さて、では次の行について解説を進めましょう。
/sbin/ipchains -A forward -s 192.168.1.0/24 -d 0.0.0.0/0 -j MASQ |
最後の行ですが、
echo 1> /proc/sys/net/ipv4/ip_forward |
以上、ipchainsでIPmasquerade機能を実現する方法を解説しました。
ipchainsの名の由来である"chain"については説明を省きました。
参考文献の"ipchains-mini-HOWTO.html"に非常に判りやすく説明されていますので、
是非一読して下さい。
3.4 参考文献 |
http://www.linux.or.jp/JF/Jfdocs/ipchains-mini-HOWTO.htmlLDP(Linux Documentation Project)のサイトにipchainsに関するHOWTO文書があります。
http://metalab.unc.edu/mdw/HOWTO/IPCHAINS-HOWTO.html
home |index |previous |next |contents