TCP/IP を利用する

日本語 OpenVMS システムで TCP/IP を利用するには,あらかじめ TCP/IP ソフトウェアがシステムにインストールされ,動作している必要があります。TCP/IP が動作しているかどうかは,次のようにして知ることができます。


  $ SHOW NETWORK

  Product:  TCP/IP        Node:  tko.honsha.com       Address(es):  192.168.0.123  
  $

Product: の項目に TCP/IP と表示されれば,TCP/IP が動作しています。

TCP/IP を利用してリモート・システムへログインする

現在ログインしている日本語 OpenVMS システムから,リモート・システムにログインするには telnet コマンドや rlogin コマンドを使います。


  $ TELNET OSAKA.SHITEN.COM

  %TELNET-I-TRYING, Trying ... 192.168.0.124
  %TELNET-I-SESSION, Session 01, host osaka.siten.com, port 23
  -TELNET-I-ESCAPE, Escape character is ^]

   Welcome to OpenVMS (TM) Alpha Operating System, Version V7.3-1  

  Username:

リモート・システムでの作業が完了し,そのシステムをログアウトすると,元の日本語 OpenVMS システムに制御が戻ります。

TCP/IP を利用してリモート・システム間でファイルを転送する

DIRECTORY や COPY などの DCL コマンドはネットワークに対応しているので,簡単な操作でリモート・システムへアクセスできます。ユーザ名とパスワードは二重引用符 (") で囲み,コマンド・ライン上で指定します。


    $ コマンド /FTP リモート・システム名"ユーザ名パスワード"::    

TCP/IP を利用してファイルの一覧を取得する

ファイルの一覧を取得するには,次のようにします。


  $ DIR /FTP OSAKA"YAMADA パスワード"::

  Directory osaka.shiten.com"yamada password"::
  LOGIN.COM;1                1   9-MAY-2001 15:59:46.53  
  MAIL.MAI;1                27  22-JAN-2002 10:41:56.21

  Total of 2 files, 28 blocks.
  $

TCP/IP を利用してファイルをコピーする

ファイルをコピーするには,次のようにします。


  $ COPY /FTP OSAKA"YAMADA パスワード"::LOGIN.COM []  
  $

コマンド・ライン上でパスワードを指定すると,第 3 者にパスワードを知られてしまう可能性があります。そのような危険を避けるには, FTP ユーティリティを使います。FTP ユーティリティはパスワードを画面に表示しないので,セキュリティが重要な場合に使うと便利です。

FTP ユーティリティを使ってファイルをコピーする

FTP ユーティリティを使ってファイルをコピーするには,次のようにします。


  $  FTP
  FTP> connect osaka
  220 osaka.shiten.com FTP Server (Version 5.1) Ready.
  Connected to osaka.
  Name (oska:yamada):
  331 Username system requires a Password
  Password:
  230 User logged in.
  FTP> ls login.com
  200 PORT command successful.
  150 Opening data connection for SYS$SYSROOT:[SYSMGR]login.com;*
                                             (192.168.0.124,49896)  
  SYS$COMMON:[SYSMGR]LOGIN.COM;1
  226 NLST Directory transfer complete
  96 bytes received in 00:00:00.00 seconds (46.87 Kbytes/s)
  FTP> get login.com
  200 TYPE set to IMAGE.
  200 PORT command successful.
  150 Opening data connection for SYS$COMMON:[SYSMGR]login.com;
                                            (192.168.0.124,49897)
  226 Transfer complete.
  local: SYS$COMMON:[SYSMGR]LOGIN.COM;2  remote: login.com
  992 bytes received in 00:00:00.00 seconds (322.91 Kbytes/s)
  FTP> exit
  221 Goodbye.
  $
 

TCP/IP を利用したファイル・アクセスの注意点

TCP/IP(おもに FTP )を使用してファイルをコピーする場合,そのファイルがテキスト・ファイルであるかバイナリ・ファイルであるか注意する必要があります。特に日本語 OpenVMS 以外のシステムとの間でファイルのコピーを行う場合には非常に重要になります。間違ったファイル形式でコピーを行うと,ファイルの内容は正しくコピーされません。

日本語のテキスト・ファイルをコピーする場合は,漢字コードにも注意する必要があります。日本語 OpenVMS では EUC に類似した Super DEC 漢字コードセットをサポートしています。 Windows 等の Shift JIS を使うシステムとの間で日本語のファイルを転送する場合には,たとえば次のように漢字コードの変換を行う必要があります。


    $ ICONV CONVERT LIST.TXT /FROMCODE=SJIS LIST-1.TXT /TOCODE=SDECKANJI    

日本語 OpenVMS ではファイル名にも日本語を使うことができますが,リモート・システムに置かれた日本語のファイル名を持つファイルにはアクセスできません。このような場合は英語のファイル名を使用してください。

FTP とレコード・フォーマット

Windows と Linux との間で FTP を用いてファイルを転送する場合には,転送したいファイルがテキストなのかバイナリなのかに注意する必要があります。日本語 OpenVMS の場合も同様に,日本語 OpenVMS と Windows もしくは Linux との間で FTP を用いてファイルを転送する場合には,転送したいファイルがテキストなのかバイナリなのかに注意する必要があります。

日本語 OpenVMS のディスク上にある各ファイルは,それぞれレコード・フォーマットを持っています。 OpenVMS では多数のレコード・フォーマットがサポートされていますが,一般的には以下のフォーマットが使用されます。

PC と互換性のあるレコード・フォーマット
ファイル形式 レコード・フォーマット レコード属性
テキスト・ファイル Variable length CRLF
  Stream_LF CRLF
バイナリ・ファイル Fixed length None

ファイルのレコード・フォーマットは DIR /FULL コマンドで知ることができます。ファイル転送の際にテキストとバイナリを間違えずに指定していれば,日本語 OpenVMS と Windows や Linux システムとの間で,ファイルは正しく転送されます。

テキストやバイナリの指定を間違えて転送してしまうと,実際のファイルの中身とファイル・フォーマットとが違い,ファイルの内容が壊れてしまいます。そのような場合には,再度正しく転送し直すことをおすすめしますが,再送しないで修正するには,以下の方法を試してみてください。

テキスト・ファイルをバイナリ・ファイルとして転送した場合

Windows または Linux から日本語 OpenVMS へファイルを転送して,ファイルの内容が壊れてしまった場合には,日本語 OpenVMS のレコード・フォーマットについての高度な知識があれば,ファイルを修復できる場合があります。特にテキスト・ファイルをバイナリ・ファイルとして日本語 OpenVMS システム上に転送した場合は,理論上はデータの欠落がないので修復可能です。以下のコマンドを実行してください。


  $ set file text.bin /attribute=(rfm:stm,rat:cr)  

このコマンドを実行すると,ファイルのレコード・フォーマットは Stream となり,エディタで編集可能となります。以下のコマンドでファイルの文字コードセットを適切に変換すれば,正しいテキスト・ファイルを得ることができます。


  $ iconv convert text.bin /fromcode=sjis text.txt /tocode=sdeckanji  

バイナリ・ファイルをテキスト・ファイルとして転送した場合

Windows 上のバイナリ・ファイルをテキスト・ファイルとして日本語 OpenVMS へ転送してしまった場合,Windows 側のファイル転送ユーティリティによって漢字コード変換が行なわれるため,殆どの場合はファイル内容が壊されてしまいます。

一部の UNIX のように,漢字コードに EUC を使っている場合は,日本語 OpenVMS へのファイル転送の際に漢字コード変換が必要ないため,ファイルを修復できる場合があります。実際に修復できるかどうかは,日本語 OpenVMS 上に作成されたファイルの状態に依存します。

テキスト・ファイルとして日本語 OpenVMS へ転送された結果できあがったファイルが,Stream_LF フォーマットになっている場合は,以下のコマンドで修復できる場合があります。


  $ set file binary.txt /attribute=(rfm:fix,rat:none)  

もし Variable length フォーマットになっている場合には,データの一部が失われている可能性が大きく,修復は困難です。

DECnet を利用する

DECnet は旧 DEC 社の独自のネットワークです。日本語 OpenVMS のほとんどの DCL コマンドは DECnet をサポートしています。

日本語 OpenVMS システムで DECnet を利用するためには,あらかじめ DECnet ソフトウェアがシステムにインストールされ,動作している必要があります。DECnet が動作しているかどうかは,次のようにして知ることができます。


  $ show network

  Product:  DECNET        Node:  TKO                  Address(es):  12.345
  $

Product: の項目に DECnet と表示されれば,DECnet が動作しています。

DECnet を利用してリモート・システムへログインする

現在ログインしている日本語 OpenVMS システムから,リモート・システムにログインするためには SET HOST コマンドを使います。


  $ SET HOST OSAKA

  Welcome to OpenVMS (TM) Alpha Operating System, Version V7.3-1  
  Username:

リモート・システムでの作業が完了し,そのシステムをログアウトすると,元の日本語 OpenVMS システムに制御が戻ります。

DECnet を利用してリモート・システム間でファイルを転送する

DIR や COPY など,ほとんどの DCL コマンドは DECnet に対応しているので,簡単な操作でリモート・システムへアクセスできます。ユーザ名とパスワードは
二重引用符 ( " " ) で囲み,コマンドライン上で指定します。


    $ コマンドリモート・システム名"ユーザ名パスワード"::    

DECnet を利用してファイルの一覧を取得する

ファイルの一覧を取得するには,次のようにします。


  $ DIR OSAKA"YAMADA パスワード"::

  Directory OSAKA"yamada password"::
  LOGIN.COM;1                1   9-MAY-2001 15:59:46.53  
  MAIL.MAI;1                27  22-JAN-2002 10:41:56.21

  Total of 2 files, 28 blocks.
  $

DECnet を利用してファイルをコピーする

ファイルをコピーするには,次のようにします。


  $ COPY OSAKA"YAMADA PASSWORD"::LOGIN.COM []  
  $

DECnet を利用してパスワード入力なしにアクセスする

セキュリティが重要なリモート・システムに対し,コマンド・ラインでパスワードを入力せずに DECnet を使用してファイル・アクセスを行う方法があります。

コマンド・ラインでパスワードを入力しないで,DECnet を使用してリモート・システムにアクセスするには,使用しているこちら側のシステムの名前とアクセスしたいユーザ名とを,あらかじめリモート・システム側に登録しておく必要があります。これをプロキシと呼びます。

プロキシの登録はシステム管理者が行います。プロキシの登録が完了すると,以下のようにユーザ名もパスワードも入力せずに,リモート・システムへのアクセスができるようになります。


  $ DIR OSAKA::

  Directory OSAKA::USER$DISK:[YAMADA]
  LOGIN.COM;1                1   9-MAY-2001 15:59:46.53  
  MAIL.MAI;1                27  22-JAN-2002 10:41:56.21

  Total of 2 files, 28 blocks.
  $

日本語 OpenVMS がサポートするネットワーク・プロトコルとネットワーク製品

日本語 OpenVMS がサポートするネットワーク・プロトコルとネットワーク製品には次のものがあります。

TCP/IP

DECnet