FLETS ISDNで複数台のPCをつかってみよう!
2000年9月17日

さてうちでもFLETS ISDNで定額料金にてインターネットが使えるようになりました。 ちょうど同じ時期に、ノートパソコンをかって家にパソコンが2台になりました。せっかく2だいあるのだから、両方でインターネットにつなぎたいですよね。そこでつなげるようにしてみることにしました。

パソコン情報:
    デスクトップPC: WIndows98, FreeBSD3.4-R, Vine Linux 2.0のトリプルブート
    ノートPC:Windows98, FreeBSD4.1-R のデュアルブート
持ち歩かないデスクトップをPC使用して、両方のPCでFLETS ISDNにてインターネットに接続できるようにしてみました。

方法:NATをつかう。

NATをうごかすOSはFreeBSDにしました。接続形態は下の図のようになります。

デスクトップPCからインターネットにつなぐ
OSがFreeBSDということで、ppxpを使ってやりました。 Terminal Adapter(TA)はINSメイトV-8DSUということで、このファイルを自分で作成して/usr/local/etc/ppxp/modemあたりにおき,qdialにてモデムをこのファイルを選択。し、適当にセットアップする。(適当にが結構むずかしいといううわさも。きっとどこかのホームページにのっているでしょう、やりかたが)
ダイヤルアップ出来るようになったら、つぎはプライベートのLANをつくりましょう。EthernetカードやHUB等をかって上図のように構成します。
接続して、適当にプライベートIPアドレスをつけます。
FreeBSDでNATを動かす場合は、IPFWとnatdを使用するらしいです。カーネルコンフィグファイルに下記の二行を付け加えて再構築します。

options IPFIREWALL
options IPDIVERT


また、/etc/servicesに下記の一行があることを確認します。なかったら加えるらしいです。
natd            8668/divert # Network Address Translation

あたらしいカーネルで起動して、て、まずPPXPにてププロバイダー つなぎます。

...おっと、そのまえに下記のコマンドを実行する必要ありです。
ipfw add 100 allow from any to any via any
デフォルトだと全てのパケットはカーネルを通過できないようになっています (^^;;

次に下記のコマンドを実行するらしいです。
ipfw -f flush
ipfw add divert 8668 ip from any to any via any via tun0
ipfw add pass all from any to any
自分の割り当てられたたIPアドレスを調べます。たとえば、ここにアクセスします。
...おっと、じつは下記のコマンドで割り当てられたIPアドレスをローカルにしらべられますね。うむむ。。。
ifconfig tun0

このnatd.confファイルのなかのグローバルアドレスの部分を自分のアサインされたIPアドレスにします。、またこのふぁいる中、プライベートアドレスについても自分のしようしているものにします。

下記のコマンドでnatdを起動します。

natd -f /etc/natd.conf
natd.confは上記のnatd.confです。上の場合ですと、natd.confを/etcにおいています。

さて、ローカルのパソコンからから外界にpingしてみましょう。default gateway をnat箱にしなければなりません。

DHCPの設定
natbox で下記のコマンドでDHCPを動かしとくと便利かも。
dhcps -a /etc/dhcpdb.pool xl0
※インターフェス名などはもちろんかわりますが... またwide-dhcpを使っています。
サンプルdhcpdb.poolはこの辺にあります。

とりあえず駆け足でこの文面をつくっていました、かなり省略している部分があるので、同じことをやろうとしていて、でも出来ない人は、私までメールででもごいっぽうください。このホームページをもうちょっと詳しくします(笑)


  • 自動natd起動ツール
    natbox.pl
    template
    ppxpとかでダイヤルアップしたあとに、両方のふぁいるを同じディレクトリにおいてルートでnatbox.plを起動するとよさげです。