今度は、フレッツISDNで自宅が常時接続可能になりました。 ダイアルアップルーターを使っているので、Win95/98ならLANカード挿してつないでやれば簡単に使えます。 ところが、私のメール環境であるPC110では、依然としてアナログモデムでダイアルアップ…。 せっかくすぐそこに常時接続の環境があるのに…。
というわけで、電話代ももったいないので、以下のページを参考にしながら、 PC110もLAN接続してやることにしました。
PC110はパームトップなので、当然のようにPCMCIAにします。 最近はPCMCIAでも10BASE-Tなら3000円以下で買えます。 どういうカードを選択するかですが、やっぱり「DOSをサポートしている」カードが望ましいでしょう。
メーカーのWebページで製品情報を調べて、DOSのサポートの有無をチェック、さらにパケットドライバが付属していれば手間が減らせます。
簡単に調べた範囲内では、プラネックスのENW-3503-TやエレコムのLD-CDFにはパケットドライバが付属しているようです。 私の場合は手持ちのカードを流用したのでメルコのLPC2-Tです。 付属するドライバはNDISだけで、パケットドライバはありません。
最近はDOSで使おうとする人も減っているはずなので、「付いててもNDISドライバのみ」というカードが増えてきているのではないかと思います。少し古めのカードを探した方が、可能性が高いかもしれません。
さて、「パケットドライバとは何なのか?」ですが、TCP/IPとソフト(アプリ)とのインターフェイスをするソフト(ドライバ)です。 「DOSでPPP」で取り上げたソフトは、みんなこの「パケットドライバ」に対応したソフトで、 dospppは「モデムでダイアルアップするパケットドライバ」(のようなもの)です。
つまり、dospppの代わりに「LANカード用のパケットドライバ」を使ってやれば、ダイアルアップ時と同じソフトが使えます。
基本的にパケットドライバは、カードごとの専用になります。 LANカードにそれ用の(=純正の)パケットドライバが付属していれば、問題なく使えるでしょう。 しかし、私のLPC2-Tには付属していません。さぁどうするか? 選択肢は2つあります。(「自分で作る」という選択肢もありますが…)
LPC2-T用のパケットドライバは見つかりませんが、他のカード用のパケットドライバなら入手できます。それらの中に、LPC2-Tで使えるものがあるかもしれません。(PCMCIAならイネーブラもないとダメか?)
NDISのドライバは付いています。まずNDISを使えるようにして、その上で「NDIS用のパケットドライバ」をかぶせてやります。
前者はうまくいくかどうかわからないので、今回は後者の方法を使うことにします。 ただし、メモリの消費は前者の方が少なくて済むと思います。
LPC2-T以外のカードでも、NDIS用のドライバがあれば、たぶん同じ方法が使えるでしょう。
ドライバやら何やらの前に、カードを使えるようにする必要があります。 PC110 には IBM PlayAtWill のサブセットが組み込まれているので、その設定を変更します。
LPC2-Tのドライバのマニュアルを読むと、LPC2-Tは C800
-CFFF
を使うようなので、まずそこを空けてやります。
必ずしも C800
-CFFF
でなくても構わないのかもしれませんが、めんどくさいので試してません。
次に、ATA/SRAM用のドライバが入っていると誤認されるらしいので、ATA/SRAM用のドライバを無効にします。(もしかしたら98だけの話なのかも?)
[CONFIG.SYS] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... DEVICE=C:\DOS\EMM386.EXE RAM I=B000-B7FF X=C800-CFFF X=DC00-DFFF FRAME=E000 ... DEVICEHIGH=C:\EZPLAY\SSDPCIC1.SYS DEVICEHIGH=C:\EZPLAY\IBMDOSCS.SYS DEVICEHIGH=C:\EZPLAY\RMUDOSAT.SYS /MA=C800-CFFF,DC00-DDFF /IX=5,10 /PX=15E0-15EF,35E0-35EF,102 DEVICEHIGH=C:\EZPLAY\$ICPMDOS.SYS REM DEVICEHIGH=C:\EZPLAY\PAWATAS.SYS /NOBEEP DEVICEHIGH=C:\EZPLAY\AUTODRV.SYS ... ----cut here----8<----cut here----8<----cut here----8<----cut here----
この設定で再起動し、ドライバ付属の LPCHKAT2.COM
でチェックします。
私の環境では、「I/Oアドレス 0x240」「IRQ 3」になっていました。
「IRQ 3」なのは、ポトリも赤外線もモデムもシリアルを殺してあるためでしょう。
普通は「IRQ 10」あたりだと思います。
「DOSで利用するネットワーク」によると、 「NDIS用のパケットドライバ」を使うだけなら、以下の3つからどれを選んでもよさそうです。
私の場合、ディスク共有は必要なく、最低限の機能で構わないので、 Workgroup Connection を使うことにしました。
mswgcn.exe
をダウンロードする。ftp://ftp.microsoft.com/softlib/mslfiles/mswgcn.exe
mswgcn.exe
を実行して解凍する。
CHEV US
で英語モードにして、解凍してできた SETUP.EXE
を実行する。
インストール先は、 C:\WGCN
にしました。
メールクライアントは不要なのでインストールせず、LANカードはとりあえず「NE2000」を選んでインストールを進めました。
ディスク共有が(も)目的の人は、ワークグループ名やユーザー名やパスワードにも気を使ってください。 Win95/98同士でのディスク共有経験があれば、だいたいその通りに設定すればいいはずです。
インストールが済むと、こんな風に変更されていました。
[CONFIG.SYS] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... DEVICEHIGH=C:\EZPLAY\SSDPCIC1.SYS DEVICEHIGH=C:\EZPLAY\IBMDOSCS.SYS DEVICEHIGH=C:\EZPLAY\RMUDOSAT.SYS /MA=C800-CFFF,DC00-DDFF /IX=5,10 /PX=15E0-15EF,35E0-35EF,102 DEVICEHIGH=C:\EZPLAY\$ICPMDOS.SYS REM DEVICEHIGH=C:\EZPLAY\PAWATAS.SYS /NOBEEP DEVICEHIGH=C:\EZPLAY\AUTODRV.SYS ... LASTDRIVE=K device=C:\WGCN\protman.dos /i:C:\WGCN device=C:\WGCN\workgrp.sys device=C:\WGCN\ne2000.dos ----cut here----8<----cut here----8<----cut here----8<----cut here----
[AUTOEXEC.BAT] ----cut here----8<----cut here----8<----cut here----8<----cut here---- C:\WGCN\net start @ECHO OFF PROMPT $e[m $e[43;5;30m$t$h$h$h$e[m $e[36;1m$l$p$g$e[37;1m PATH C:\WGCN;C:\DOS;C:\BIN;D:\USR\BIN;C:\VZ SET VZDEF=C:\VZ\DEF\ SET VZPATH=D:\USR D:\USR\CSV SET EDITOR=VZ ... ----cut here----8<----cut here----8<----cut here----8<----cut here----
とりあえずNE2000を選んでいるので、このままでは正しく動作しないでしょう。
LPC2-TのNDIS用ドライバ LPCA2.DOS
を C:\WGCN
にコピーして設定ファイルを書き換えます。
[CONFIG.SYS] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... LASTDRIVE=K device=C:\WGCN\protman.dos /i:C:\WGCN device=C:\WGCN\workgrp.sys device=C:\WGCN\lpca2.dos ----cut here----8<----cut here----8<----cut here----8<----cut here----
[C:\WGCN\PROTOCOL.INI] ----cut here----8<----cut here----8<----cut here----8<----cut here---- [network.setup] version=0x3100 netcard=ms$lpca2,1,MS$LPCA2 transport=ms$netbeui,MS$NETBEUI lana0=ms$lpca2,1,ms$netbeui ... [MS$NETBEUI] DriverName=netbeui$ SESSIONS=6 NCBS=12 BINDINGS=MS$LPCA2 LANABASE=0 [MS$LPCA2] DriverName=LPCA2$ IOBASE=0x240 INTERRUPT=3 ----cut here----8<----cut here----8<----cut here----8<----cut here----
[MS$LPCA2]
セクションの DriverName
は固定、 IOBASE
, INTERRUPT
は LPCHKAT2.COM
で確認した値です。
[network.setup]
セクションあたり、理解してないのであまり自信はありませんが、基本的に「NE2000
(ne2000
)」を「LPCA2
(lpca2
)」に置き換える方針で変更しています。(最初から、LPC2-T用のドライバを選んでインストールすればよかったかも)
これで再起動して NET USE
コマンドでマップしてやれば、NetBEUIでWin95/98のディスクを共有できるはず… なんですが、ちょっと問題がありました。
AUTOEXEC.BAT
の先頭で「NET start
」を呼んでいますが、私の環境ではこの直後にハングアップしてしまいました。
AUTOEXEC.BAT
の最後に回してやればハングアップはしなくなりましたが、コンベンショナルに無駄な空きができてしまいました。
しょうがないので、 AUTOEXEC.BAT
に書くのはあきらめて、コマンドラインから手打ちで「NET start
」することにしました。
私の場合、ディスク共有が目的ではないので、この状態でのチェックはいいかげんです。共有できるかどうかの確認すらしていません。 最低限、LANカードと相手(ハブとかルーターとか)との間でリンクが確立している(リンクLEDが点灯している)のだけは見ておきます。
これでNDISが使えるようになった(はずな)ので、その上にパケットドライバをかぶせてやります。
dis_pkt9.zip
をダウンロードする。ftp://ftp.iij.ad.jp/pub/simtelnet/msdos/pktdrvr/dis_pkt9.zip
DIS_PKT9.DOS
を C:\WGCN
にコピーする。
[CONFIG.SYS] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... LASTDRIVE=K device=C:\WGCN\protman.dos /i:C:\WGCN device=C:\WGCN\workgrp.sys device=C:\WGCN\lpca2.dos device=C:\WGCN\dis_pkt9.dos ----cut here----8<----cut here----8<----cut here----8<----cut here----
[C:\WGCN\PROTOCOL.INI] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... [protman] DriverName=PROTMAN$ PRIORITY=MS$NETBEUI [PKTDRV] drivername=pktdrv$ bindings=MS$LPCA2 intvec=0x62 ... [MS$LPCA2] DriverName=LPCA2$ IOBASE=0x240 INTERRUPT=3 ----cut here----8<----cut here----8<----cut here----8<----cut here----
パケットドライバ対応のソフトは、 WATTCP.CFG
を参照します。
dospppを使った場合は、勝手に作ってくれる(ように設定する)のですが、LANの場合はそうではないので、自分で設定してやります。
といっても、LAN用の WATTCP.CFG
を作っておいて、コピーして環境変数を設定するだけです。
[C:\WGCN\WATTCP.CFG] ----cut here----8<----cut here----8<----cut here----8<----cut here---- hostname=PC110 nameserver=192.168.0.1 netmask=255.255.255.0 gateway=192.168.0.1 domainlist="nifty.ne.jp" SOCKDELAY=60 my_ip=192.168.0.110 ----cut here----8<----cut here----8<----cut here----8<----cut here----
うちのルーターにはDHCP機能があるのですが、DOSのDHCPクライアントが見つからなかった(DHCPC
というのがあるらしいんですが*1 )ので、アドレスを直接書いてます。
192.168.0.1
がルーターのアドレスで、DNS兼ゲートウェイです。
PC110には 192.168.0.110
を割り当てて、 MY_IP
に設定しています。(不要かも?)
「職場でもつなぐ、家でもつなぐ」という人は、それぞれのWATTCP.CFG
を作成して、使う方のをコピーするようにすればいいでしょう。
[AUTOEXEC.BAT] ----cut here----8<----cut here----8<----cut here----8<----cut here---- ... vz -z copy C:\WGCN\WATTCP.CFG D:\USR\DMAIL\BIN set WATTCP.CFG=D:\USR\DMAIL\BIN echo C:\WGCN\net start ----cut here----8<----cut here----8<----cut here----8<----cut here----
最後の echo
コマンドは、「これを実行しなさいよ」という意味で表示させています。
もちろん、問題なければ AUTOEXEC.BAT
で直接実行されるようにした方が便利です。
*1 nifty:FHPPC/LIB/8/1037 に DPC011.LZH があるようです。 (2001/11/22)
これで、パケットドライバ対応のソフトが動くようになった(はずな)ので、いろいろ動かしてみてチェックします。 D-MAIL も Bobcat も問題なさそうです。
DIS_PKT9.DOS
は、素のパケットドライバよりもパフォーマンスが落ちるらしいですが、それほど感じません。
当然でしょうけど、INS-64ですからアナログ28.8Kモデムよりはずっと高速です。
さすがにコンベンショナルの空きは100KB以上ロスして480KBほどに減ってしまいました。 ぎちぎち最適化してやればもうちょい稼げるかもしれませんが、 MultiConfigにしてやれば困ることはないのでそのままにしています。