2005年1月18日

[vine-users:069782] Re: Vine3.1にてiptables-nat-OUTPUTが機能しない(解決)

田原@越谷です。
標題の件、解決しました。アドバイスを下さった皆様、ありがとうございました。

#症状
ブラウザとiptablesとsquidを同一マシンで動かしています。
Vine2.6(kernel-2.4.22-0vl2.15, iptables-1.2.7a-0vl1)のときには、
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A OUTPUT -p tcp --dport 80
-m owner ! --uid-owner 23 -j REDIRECT --to-port 3128
とすることで、ブラウザのプロキシ設定をすることなく、squidを利用できた。

しかし、Vine3.1(kernel-2.4.26-0vl17, iptables-1.2.10-0vl2)では、
この方法でsquidを利用できなくなった。
pingでのテストで、natテーブルのOUTPUTチェインが機能していないことが分かった。

#解決法
カーネルのコンフィギュレーション、
CONFIG_IP_NF_NAT_LOCAL=y
として、カーネルを再構築した。

#行ったこと
カーネルのsrpmを入手して、
# rpm -ivh kernel-2.4.26-0vl17.src.rpm
とした。
/usr/src/vine/SOURCES/kernel-2.4.26-ppc.configを編集して、
# CONFIG_IP_NF_NAT_LOCAL is not set
となっていた行を
CONFIG_IP_NF_NAT_LOCAL=y
とした。その後、
# cd /usr/src/vine/SPECS
# rpm -bb kernel-2.4.26-vl.spec
として、出来たkernel-2.4.26-0vl17.ppc.rpm等を
# rpm -Uvh --nodeps --force *
とした。
新しいカーネルで起動した後、以下の2点を確認した。
(1)前記のiptablesのルールを設定して、ブラウザで外部ページを見たときに
/var/log/squid/access.log
が更新された(正常動作)。
(2)pingによるテストで、natテーブルのOUTPUTチェインが機能することを確認した。
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -F
# iptables -t nat -F
# iptables -t nat -A OUTPUT -p icmp -j DROP
# ping -c1 127.0.0.1 >/dev/null 2>&1; echo $?
1 <−−− 正常にDROPされた

#要望
Vine3.1のカーネルがアップデートされる際には、PPC版のコンフィギュレーションも
CONFIG_IP_NF_NAT_LOCAL=y
としていただけると助かります。
# kernel-2.4.26-0vl17.src.rpmを展開して出来たkernel-2.4.26-i386.configでは
# CONFIG_IP_NF_NAT_LOCAL=yとなっていました。
--
K.Tahara

投稿者 xml-rpc : 2005年1月18日 12:47
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/11608
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。