■TuboLinux3.0でIPマスカレード
CATVでインターネット
インストールしたPCの情報は以下の通り。
- GraphicBoard DiamondStealth3D 2000 (S3 Virge)
- EtherCard Corega PCI-T
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/~poffice/news/fj.os.linux/15328
http://www.lares.dti.ne.jp/~gaako/linux_12.html
http://cesdis.gsfc.nasa.gov/linux/drivers/ne2k-pci.html
に辿り着く。結局、NE2000-PCI互換のボードとして認識できるようである。
ところが、TurboLinux3.0を近所の本屋で買ってしまった。これなら、CoregaPCI-Tの認識は自動的に終了してしまう。フキ出版 前原輝雄著の「新版Linuxでインターネット」と
http://www.fureai.or.jp/~fukiage/
の「TurboLinuxでのIPマスカレードのインストール」を参考に設定する。
/etc/rc.d/rc.localでmodprobeを使ってIPマスカレードを組み込む。
modprobe ip_masq_quake
modprobe ip_masq_Vdolive
modprobe ip_masq_cuseeme
modprobe ip_masq_raudio
modprobe ip_masq_irc
modprobe ip_masq_ftp
を/etc/rc.d/rc.localに追加する。
そして、ipfwadmを実行するスクリプトファイルを作成する。/home/sbin/にipmasqというスクリプトファイルを作る。
以下がその内容である。
#!/bin/sh
case "$1" in
start)
/sbin/ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
/sbin/ipfwadm -F -p deny
/sbin/ipfwadm -I -p accept
/sbin/ipfwadm -O -p accept
echo "Firewall & masquarading rules set"
;;
stop)
/sbin/ipfwadm -F -f
/sbin/ipfwadm -I -f
/sbin/ipfwadm -O -f
;;
*)
echo "Usage:ipmasq {start|stop}"
exit 1
esac
exit 0
そして、
chmod u+x /home/sbin/ipmasq
としておく。
これで
/home/sbin/ipmasq start
でスタート
/home/sbin/ipmasq stop
でストップできる筈だった。
しかし、何故かうまくいかない。ところが、linux-mailinglistで同じ問題が議論されていた。そこで、その中でまとめられていた対策を行う。
cat /proc/sys/net/ipv4/ip_forward
をすると、0という結果になる。これが、まずいというので、
echo 1 > /proc/sys/net/ipv4/ip_forward
で1にしてやる。すると、何の問題もなく動くようになる。
結局、/etc/rc.d/rc.localに
#dynamic ip-adress enable
echo 1 > /proc/sys/net/ipv4/ip_forward
を記述する。
Windows95/98マシンの方では、GatewayのアドレスとしてにLinuxボックスの内部IPアドレスを指定する。