ネットワークカードを設定する

97年12月16日


さて, ppp 接続に続いては, NAT 鯖に必要なもう一つの要素, 家庭内のローカルな network との接続である。 ノートパソコンを LAN につなごうと思ったら, 当然ながらインターフェースカードは PCCARD になる。 ということで, 安いカードを探してくる。 安くても動かなければ意味がないので, その辺は注意しよう。まぁ, LAPTOP survey を片手に電気街を歩き回るのがいいだろう。 私は, 日本橋の某祖父マップで中古の Melco LPC-TS を 4800.- でゲット。 新品だと, 6580.- という輸入もののカードがあったが, 詳しい型番が不明で, とても怪しげだったのでやめた (それ以前に品切れであったんだが^^;)。

まずはネットワークカードを確認させないといけない。ということで, とりあえず差してみる。と, ちゃんと認識された。めでたい。でも, これだけではさすがに使えない。いうまでもないが, インターフェースに与える IP アドレスなどを設定しないといけない。

さて, この設定であるが, 本来は /stand/sysinstall でグラフィカルに設定できるのだが, 何かうまくいかないので, 直接ファイルをエディタで書き換えた (sysinstall は何か大げさだし)。 ちなみに, linux だと netconfig というそのものずばりな名前の, グラフィカルな設定ツールがあるし, 例の Win95 もグラフィカルに設定できる。 しかし, どれもあんまり使えないツールなので, 結局どの OS でどのツールを使おうと, 設定ファイルを直接書き換えるのと手間はそうかわらない。 この辺は「超初心者用OS」のフリをしている OS である Win95 でさえ, 同じに思える (多分, あのOSの中でも設定の難しいものの一つではないだろうか。もっとも, DHCP があれば別だが)。

おっと, 脱線してしまった。元に戻そう。 /etc/pccard.conf をみると, PCCARD のネットワークカードを使う時は, /etc/pccard_ether というスクリプトで初期化処理が行なわれることがわかる。 そこで, この中でネットワークの設定をおこなっている部分を書き換える。 書き換えたのは二箇所。 まず, 環境設定を行なうカードの種類を設定する。 件のカード, Melco LPC-TS は "ed0" と認識されたので,

pccard_ether="ed0"
とする。これで, ed0 が挿入された時に自動で ifconfig が実行される。 もう一箇所, ifconfig の引数を設定している部分を書き換える。 いままで, 家庭内で 10.0.0.0/8 な「イントラネット」が構成されていたので, 「外部との接続をした時のルータ用に」と空けていた, アドレス 10.1.1.1 をこのマシンの IPアドレスに設定する。またネットマスクも設定する。
pccard_ed0="10.1.1.1 netmask 0xff000000"
なお, IP アドレスの付け方とかがわからない人のために言っておくと, ここで使っているアドレス 10.?.?.? (言っとくけど, 実際にはこのアドレスは使ってないよ)は 「公の場所にでなければ好き勝手に使ってよいアドレス」である。 このようなアドレスはこれ以外にもいくつかあるが, こういったものの他は基本的に
好き勝手なIPアドレスを使ってはいけない!!
ので, 注意しよう。良くわからない場合は, そっくりそのまま真似する (そのまま同じアドレスを使ってみる)か, RFC をよみましょう(ぉ

ここまでできたら, とりあえずマシンごとハブの近くまで運んで (ノートの利点ですな), 他のマシンと通信できるかを確認する。ping とか, rlogin で, 相手の IP アドレスをじかに叩いてみるのがいいでしょう。 少々脱線するが, テストでコンソールから他のマシンへ telnet しようとすると, ユーザー名のプロンプトが出る前に telnet コネクションが切られてしまうと言う謎の現象が起こって 「もしかして, 故障か?」と思ったことがあった。ところが, 非常に謎なことに, rlogin はできるのである。 後日, kterm から telnet したらちゃんとできたことから, どうやらこれはコンソールの端末種類 (cons25) が他のマシン (そのマシンは linux box だった) にわからなかったのが原因だったようである。 しかし, 何とも予想外の現象で焦った。みなさん, コンソールから他のマシンに telnet できなくても, それは普通のことなので, そんなに焦らないで下さいね。

あとは簡単である。まず, マシン名を決める。 命名の才能はないので, 単純に 98note という名前にした。 続いて, /etc/hosts とかに

10.1.1.1 98note 98note.tominaga.org
10.1.1.2 desktop desktop.tominaga.org
10.1.1.3 atnote atnote.tominaga.org
などといった記述を加えて, 他のマシンの名前の解決ができるようにすればおしまいである。めでたしめでたし (しつこいようですが, これらのマシン名, IP アドレスは架空のものです。 実際はちょっと違う名前とアドレスが設定してあります ^^)。
ついにゴール ? network の稼働を確認
NAT パッチを当てる