MSYSでインターネットに対応する

1.RBBSソフトMSYSでXFBBとのリンクを
 MSYSは実に多機能なRBBSソフトです。KISS−MODEに標準で対応しており、特に
カントロニクスのTNCを使うと簡単にサブポートも同時に使うことが出来ます。FBBなどの
ように設定で苦労する事も少なく、少々のメンテのみで動き続けます。私の様な不精者が
RBBSを動かしておれる程ですから、MSYSの操作性はたいしたものです。
 しかし、LANに対応しないかなぁ、という声が作者に届かないのか、それとも作者のポリ
シーなのか、未だ対応は実現してきませんでした。なんとかLANでMSYSを使えないか、
と考え、この計画は始まったのです。

2.OS/2でSIOを使おう
 私の家のKUMA−1号は、当初、OS/2 2.11JしかOSを入れていませんでした。
WINDOWSも3.0から使って来ましたが、WIN3.1になってずいぶん安定しましたが、それで
もWIN−OS2にはかないません。以来、OS/2との付き合いは長くなります。
 で、そうした中で、OS/2では必須と言われたOLSである、「SIO」の解説を見て、ムラ
ムラと来るものがありました。それは「VMODEM」という仮想モデムが使える、しかもそれ
がOS/2ソフトからだけではなくMVDMからも使えるらしい、という記述でした。
  この設定は簡単です。OS/2上だけの場合は、次のようにCONFIG.SYSで書くのです。
 DEVICE=C:\SIO\SIO.SYS (2,INTERNET,NONE)
 そしてVMODEMを起動しますと、COM3としてINTERNETへのアクセスが使えます。
MVDMに対応させるには、(2,INTERNET:3220,NONE:5)の様にします。そして、OS/2セ
ッションでVMODEMという同包されている仮想モデムを実行しますと、COM3にインター
ネット向けの仮想モデムが出来上がるのです。これをMSYSがポートとして認識してくれ
れば問題はないわけです。
 ちなみにSIO自体は「高速シリアルデバイスドライバ」ですが、シェアウェアです。4PORT
の標準版の他に12PORTまで各種取り揃えられています。

3.MSYSで仮想モデムポートを使う
 SIOをインストールして、上記のようにINTERNETオプションを設定、「始動」フォルダへと
VMODEMのシャドウを入れたら環境は出来上がります。
 MSYSの方では、MSYS.OPTに次のような記述をつけてやります。

PORT2 AT $3228 INT 5 SPEED 19200 NAME MODEM RADIOSPEED 1200 TYNCTYPE 9

それでTNCTYPE 9に対応したMSYSTNC.9の中に次のように書いてやります。

ATZ
ATS0=1

これで仮想シリアルポートは出来上がりです。
 MSYSを起動すると、VMODEMが初期化されます。試しにこのMSYS ON OS/2の
動いているマシン(例えばKUMA-6)に対して、TELNET KUMA-6としてやると、MSYSに対
してMODEMポートとして接続する事が可能です。
 もちろん、そのためにはMSYSとしての一般的なMODEMポートユーザーの設定が必要
です。これについては、MSYSのドキュメントを見てください。

4.XFBBに転送をかける

 さて、こうしてできたMSYSのLANポートとXFBBとの間でインターネット経由での転送を
行なうには、さらに一つの工夫が必要です。XFBBはPORT6300で動いており、これに対
して標準の状態でのVMODEMはPORT23(TELNET)に接続しようとするからです。
 MODEMポートでの転送については、基本的には次のように設定します。

P2 XFBB-CALL ATDT IP .MY-CALL PASSWORD

このMY−CALLの前の「.」を忘れてはなりません。これがないとXFBBは普通のユーザー
として認識してしまいます。ですから、相手がJM1YSBだとすれば、MSYSFWD.DEFに
次のように書くのです。

P2 JM1YSB ATDT***.***.***.*** .JF1TPR PASSWORD

 しかし、このままだとJM1YSBのPORT23に着信して跳ねられてしまいます。これを6300
に変換する方法が実はやっかいでした。大別して二つの方法が考えられます。

1)DELGATEを使って変換する
 DELEGATEのOS/2版を使うと、PORT23の要求をPORT6300に変換して中継する事
が可能です。127.0.0.1のループバックを設定してから

DELEGATED -P23 SERVER=tcprelay://***.***.***.***:6300
          / MANAGER=xxx@yyy.zzz RELIABLE=127.0.0.1

としてやれば、とりあえず接続できます。MSYSからはATDT127.0.0.1として記述すると、自動
で中継・変換してくれます。
 ただ、このままだとVMODEMへの接続がTELENT PORT23ではできなくなります。そこで、VMODEMへの
TELNET接続を違うポート番号に変えます。具体的には、\MPTN\ETC\SERVICESに次の行を加えればよい
のです。
 
VMODETelnet   6300/TCP #

*詳しくはVMODEMのマニュアルを眺めて下さい。
2)ルーターによる変換機能を使う
 ダイアルアップルーターを使っている場合、これの変換機能でもってXFBBのIP PORT23への
接続をPORT6300に変換すればよいのです。ただ、私の所ではこれは実際にはやっていません。



MSYS/VMODEM/DELEGATEの窓が並ぶ

5.残された問題
 基本的な問題として、「何度か転送をかけると転送動作が行われなくなる」という問題があります。
どうもファイルが処理できなくなるようです。また、関連した問題としてフリーエリアがだんだん減
っていきます。どうもMSYSとOS/2の相性が悪いようです。
 ただ、次のようににげる事は可能です。
1)MSYSに対して他のRBBSからコネクトして処理するようにする。この場合は大丈夫なよう
です。
2)タイマープログラムを使ってMSYSを何度かON/OFFする。または定期的にリブートする。
MSYSでもってHCLの後にQUITして、その後にタイマーで再起動するのも方法でしょう。
3)他のもう一台のマシンでMSYSを動かしMSYS−XFBBのマシンと必要な場合だけ転送を
行なうようにする。・・・問題は解決しないのですが、現実的な方法です。
このあたりが解消するとよいのですが。
6.で、とりあえずの解決策
 それで次のようにしたら解決とはいかないまでも実用的な運用ができます。
1)バッチファイルをつくる。
 例えば MT.BATとして作ります。
 MSYS.EXE
  ECHO START AGAIN!!
  MSYS.EXE
  ECHO START AGAIN!!
  CALL MT.BAT
2)さらにMSYSHCL.DOをいじる。これはHCLの最後に実行してくれるファイルです。
 この最後に
 QUIT
 と入れます。


さて、これでHCLを行なった時に、QUITして終了します。そして再起動するとフリーエリアも
大丈夫です。一日一回再起動という事かな。