[通信] WindowsネットワークにDOSマシンを接続(1997)
DOSで利用するネットワーク
WindowsネットワークとTCP/IP
WindowsネットワークにDOSマシンを接続
▼ソフトウェアの選択
WindowsネットワークにDOSマシンを参加させるためのクライアントソフトウェアは、MicrosoftのFTPサーバーから無料でダウンロードできます(表「各クライアントの入手先」)。これらを使用することで、DOSマシンからLAN上で共有設定されているディレクトリ、ドライブ、プリンタなどの共有資源が利用できるようになります。Microsoftによるこの手のソフトウェアで最も有名なのはLAN Managerではないかと思いますが、実はその他にもNetwork Client for DOS、Workgroup Connectionがあります。ただし、いずれもPC/AT互換機でしか使用できません。また、英語版ですので一部の2バイト文字がファイル名として使用できない(というよりは、一部を除いてたまたま使えている)という問題があります。なお、Windows NT ServerのCDROMには、PC9801、PC/AT互換機、FMR用の日本語版LAN Managerが収められており、これらは当然2バイト文字のファイル名に対応しています。
さて、同じような用途のソフトウェアが三つもあると、一体どれを選べばよいのか、という話になってきます。本来はOS/2上のサーバーへの接続を目的としていたLAN Manager、Windows NT 3.5に最適なDOSクライアントとしてLAN Managerに代わって位置づけられたNetwork Client for DOS、そしてWindows for Workgroup用の簡便"なDOSクライアントとして開発されたWorkgroup Connection、というふうに生い立ちはそれぞれ異なりますが、いずれもルーツを同じくするソフトウェアですのでまったく別物ということはなく、今回の記事の目的の「Windowsネットワークの共有資源にアクセスする」という点ではそれほど大きな違いありません。
必要最低限の機能が欲しければWorkgroup Connection、プロトコルにNetBEUIではなくTCP/IPを使いたい場合はLAN ManagerかNetwork Client for DOS、といったところでしょうか。ただ、LAN Managerはいろいろと面倒が多く、目立ったメリットもありませんのでNetwork ClientかWorkgroup Connectionを使用したほうが面倒がなくてよいかもしれません。
主な差異を表「各クライアント比較」にまとめておきましたので参考にしてください。
各クライアント入手先
LAN Manager
ftp://ftp.microsoft.com/bussys/Clients/LANMAN/DSK3-1.EXE
ftp://ftp.microsoft.com/bussys/Clients/LANMAN/DSK3-2.EXE
ftp://ftp.microsoft.com/bussys/Clients/LANMAN/DSK3-3.EXE
ftp://ftp.microsoft.com/bussys/Clients/LANMAN/DSK3-4.EXE
Network Client for DOS
ftp://ftp.microsoft.com/bussys/Clients/MSCLIENT/DSK3-1.EXE
ftp://ftp.microsoft.com/bussys/Clients/MSCLIENT/DSK3-2.EXE
Workgrouup Connection ftp://ftp.microsoft.com/softlib/mslfiles/mswgcn.exe
LAN Manager,Network Client共通のドキュメント ftp://ftp.microsoft.com/bussys/Clients/README.NOW
▼インストール
ここでは、インストールに際して最も注意点が多いLAN Managerのインストールを解説します。他の二つについてはまったく説明しませんが、LAN Managerが理解できれば基本は同じですので問題ないでしょう。
クライアントのインストールに先立ち、サーバー側での準備をしておきます。
まずはインストール中に必要となる情報の収集です。既存のLANで使用しているワークグループ名、あるいはNTドメイン名を確認します。また、Windowsネットワークでは同一LANでは各々のコンピュータ名は一意でなければなりませんので、現在どのような名前が使われているのか調査し、LAN Managerをインストールするマシンにつける名前を決めておきます。
次に設定の変更を行います。LAN ManagerからWindows 95やWindows NTのマシンが見えるようにするために、Windows 95の場合はコントロールパネルの「ネットワーク」から「Microsoftネットワーク共有サービス」のプロパティを開き、「LM アナウンス」を「はい」にします。Windows NTの場合はレジストリエディタを使ってHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\LMannounceを1に設定します。これらの設定は、ネットワーク上のマシンの一覧を得るためにWindows 95などではある場所のリストを参照するブラウズマスタという機構を利用しているのに対し、LAN Managerではブロードキャストですべてのマシンに問い合わせを行うLMアナウンスという機構を利用しているために必要となるものです。これを行わなければ別表のNET VIEWコマンドを使用しても共有サービスが動いているマシンの一覧を参照することができません。Network Client for DOSとWorkgroup Connectionはブラウズマスタを利用しているので、LMアナウンスの設定は必要ありません。Windows NTの場合はさらに、15分アクセスがなかったときに自動切断されるのを防ぐために、HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters\SessionKeepAliveの値をFFFFFFFFにしておいたほうがよいかもしれません。
あと、同じくコントロールパネルの「ネットワーク」でEthernetカードにバインドされているプロトコルを確認し、NetBEUIがなければ追加を行います。
さて、下準備も終わり、やっとインストールです。
表1に示したURLからダウンロードした四つのLAN Manager 2.2の圧縮ファイルからインストールディスクを作成します。
コマンドプロンプトで、
DSK3-1 -d a:
のように実行すると、a:ドライブに挿入されたフォーマット済みのフロッピーディスクにファイルが展開されます。これをDSK3-2、DSK3-3、DSK3-4に対しても行います。それぞれのディスクのラベルには、README.NOWにも記述されているように"Setup"、"Drivers1"、"Drivers2"、"NetWare(R) Client"と記入しておきましょう。そしてchevコマンドなどを使いDOSを英語モードに切り替えてから、"Setup"ディスクのsetup.exeを実行し画面の指示に従ってインストールを進めますが、いくつか注意すべき点があります。
まず、インストール先ディレクトリを選んだ後にEnhanced RedirectorかBasic Redirectorのどちらをインストールするか選択する部分がありますが、Basic Redirectorは機能があまりに少なく使いにくいので、デフォルトのEnhancedを選びます。中盤でネットワークカードのドライバの選択画面になります。いくつかのカードについてはドライバが一覧表示されますが、いずれも古いドライバですので、もし一覧の中に自分が使っているものがあっても、TABを二回押して"Other Driver"を選び、カードに添付のNDISドライバをインストールしたほうが無難です。
その後プロトコルの選択を求められますが、ここではNetBEUIを選びます(次節「LAN Managerでのプロトコル選択」参照)。
その次の「Workstation Setting」では、LANで一意になるようなコンピュータ名を指定し、"Domain Name"の項目では先に調べておいたワークグループ名を入力します。"user name"は、接続相手がWindows 95のみの場合は何でもよいのですが、Windows NTを使用している場合にはNTマシンにアカウントを持ち、共有資源にアクセスする権限を与えられたユーザー名でなければなりません。
LAN Managerのインストール終了後、ネットワークカードの種類によってはLANMAN.DOSディレクトリにあるPROTOCOL.INIを編集してIRQ、IOアドレス、共有メモリエリア(interrupt、ioaddress、memorybase、memorysize)などを記述しなければならない場合があります。この内容についてはカードの種類によってまったく異なりますのでここで一般論を述べることはできません。各自カードのマニュアルを参照してください。
また、LAN ManagerをインストールしたマシンでCD-ROMを使用している場合はAUTOEXEC.BATの中にMSCDEX.EXEをロードしている行があるはずですが、その行をLAN Manager関係のファイルをロードしている部分よりも後ろに移動します。さもないとLAN Managerを使用することができません。この点は特に見落とされてトラブルの原因になりがちですので十分注意してください。
一通り作業が終わりマシンを再起動すると、ドライバ等の読み込みが終わった後に、インストール時に設定したユーザー名でlogonするためのパスワードの入力を求められます。これも、インストール時に設定したユーザー名と同様、接続相手がWindows 95だけであれば何を入れてもかまいませんが、Windows NTがある場合はユーザー名に対応するパスワードをきちんと入力する必要があります。入力後"you were logged on, but have not been validated by a server"という警告メッセージが出ますが、これはLAN Managerでドメインではなくワークグループにログオンしているのが原因です。ここでは無視しても特に問題ありません。また、サーバーが見つからない旨のエラーメッセージが出ることもあります。これは、Windowsマシンの存在がLAN Managerにまだ通知されてないために起こる現象で、NET VIEWコマンドを使用しても共有サービスが動いているマシンの一覧を参照することができません。この時は直接コンピュータ名を指定して
net view \\misako
などと、ある特定のコンピュータの共有資源を参照してみます。そこで図「NETコマンドの実行画面」の中ほどのように指定したマシンの共有資源の一覧が表示されれば、セットアップは無事完了です。
私の環境では、NET VIEWでマシンの一覧を参照できるようになるのにだいたい5分程度かかるようです。
▼LAN Managerでのプロトコル選択
LAN ManagerおよびNetwork Client for DOSでは、NetBEUIの加えてTCP/IP、IPXなどのプロトコルを使用することができます。インターネットへの接続などを考えると、一見TCP/IPを選んだ方が都合がよさそうですが、これらのクライアントソフトウェアに限ると実は話が違ってきます。
まず、NetBEUIのかわりにTCP/IPを利用すると、DOSクライアントではパフォーマンスがかなり落ちます。ネットワークへのアクセスが多い運用であれば影響が大きいでしょう。それでなくても、大きなファイルの転送を行うと実際かなり「待たされている」という印象が強くなりますので、あまり好ましくありません。
また、アプリケーションに対して提供されるインターフェイスがWinSockインターフェイスのみであり、DOSベースのソフトでこれを利用するものはほとんどないのではないかと思われます。Windows 3.1版のNetscape NavigatorをLAN環境で利用したりする分にはちょうどよい(もっとも、LAN Managerにより多くのコンベンショナルメモリが消費されるという問題があるのでそれを解決してからの話)のですが、純粋なDOS環境では使い道がありません。
このような事情がありますので、社内LANにTCP/IP以外のパケットを流すことが禁止されている、NetBIOS over TCP/IPを要求するSambaサーバーのファイルを共有する、あるいはルータを超えて通信を行うなどといった、どうしてもNetBEUIを使えない状況でなければ、DOSクライアントでTCP/IPを使用するのはあまりお勧めできません。
LAN Managerの使い方
ネットワークにログオンしたり、共有資源に接続したりといったネットワークに関連した操作は、NETコマンドを使って行います。表「NETコマンド」に最低限必要なコマンドを挙げておきました。
例えば、TOMOKOというコンピュータにあるDOWNLOADという共有フォルダにアクセスできるようにするには、表中にもあるようにNET USEを使って共有フォルダを自分自身のドライブに割り当てます。これによって、TOMOKOのDOWNLOADがあたかも自分のN:ドライブであるかのようにアクセスできます。Windows 95などでは\\tomoko\downloadといった記述(UNC:Universal Network Convention)を使用してもアプリケーションから共有資源を利用できますが、DOSベースのネットワークではUNCを使用したアクセスはできないので、このような煩雑な手順が必要となります。
LANマネージャのコマンドは表に挙がっているもの以外にも多くありますが、ほとんどの操作はこれだけで事足りるでしょう。これ以外のものについてはNET HELPで表示されるヘルプを参照してください。
NETコマンド(一部)
コマンド
役割
NET VIEW [\\コンピュータ名] 共有資源を持つコンピュータ一覧を表示。ただし、ログオン直後はこのコマンドを実行しても何も表示されないことがある。コンピュータ名を指定すると、そのサーバで利用できる共有資源の一覧を表示。
NET USE [デバイス名] [\\サーバ名\共有資源名] [/DELETE] 共有資源をコンピュータに接続、または切り離す。
【例】
NET USE N:\\TOMOKO\DOWNLOAD
コンピュータTOMOKOの共有フォルダDOWNLOADに、自分自身のN:ドライブとしてアクセスできるようにする。
NET USE LPT1: \\MISAKO\BJC400J
LPT1への出力を、コンピュータMISAKOに接続された共有名BJC400Jというプリンタから出力されるようにする
NET USE N: /DELETE
N:ドライブにマウントした共有資源を切り離す。
NET USE 現在接続されている共有資源の一覧
NET SEND コンピュータ名 |ユーザ名 メッセージ 指定した相手にメッセージを送る。Windows95ではwinpopup.exeを起動しておかなければ受信できない。また、LAN Managerはコードページが437(英語モード)でないと、受信したメッセージをポップアップ表示できない。
NET HELP [コマンド名] ヘルプを表示。コマンド名を指定すると、そのコマンドについてのヘルプを表示。
図「NETコマンドの実行画面」
前田剛 <g_maeda@mars.dti.ne.jp>
DOSで利用するネットワーク
http://hp.vector.co.jp/authors/VA007890/dos/sd/winnet.html
http://hp.vector.co.jp/authors/VA007890/dos/sd/index.html