libnet-1.12 > Net::Config

名前

Net::Config - libnetのためのローカルな構成設定情報

概要

    use Net::Config qw(%NetConfig);

説明

Net::Config はlibnetディストリビューションの中のモジュールのための 構成設定データを保持します。インストールの途中で、あなたはこれらの値について 質問されます。

構成設定データはグローバルにperlインストール・ツリーの中のファイルに 保持されます。しかしユーザーはこれらの値の全てを独自に提供することに よってオーバーライドすることが出来ます。これはホームディレクトリに .libnetrcファイルを持つことによって行うことが出来ます。 このファイルは以下で説明されるキーが入ったHASHへのリファレンスを 返さなければなりません。 例えば以下の通りです

    # .libnetrc
    {
        nntp_hosts => [ "my_prefered_host" ],
    ph_hosts   => [ "my_ph_server" ],
    }
    __END__

メソッド

Net::Configは以下のメソッドを定義します。それらはクラス・メソッドとして 呼び出されるメソッドです。これはNet::ConfigNet::LocalCfgから 継承されるためです。そのためもしそうしたければオーバーライドすることができます。

requires_firewall HOST

与えられたホストが、あなたのファイアウォールの外側になるかを判定 しようとします。以下の値を返す可能性があります。

  -1  ホスト名を探すことが出来ません
   0  ホストはファイアウォールの内側です(あるいはftp_firewallエントリがありません)
   1  ホストはファイアウォールの外側にあります

これはホスト名検索と構成設定データでのlocal_netmaskエントリを使って 行われます。

NetConfig VALUES

nntp_hosts
snpp_hosts
pop3_hosts
smtp_hosts
ph_hosts
daytime_hosts
time_hosts

それぞれ、これは与えられたプロトコルのために使われるホスト名の 配列へのリファレンスです(優先順)。

inet_domain

あなたのインターネット・ドメイン名

ftp_firewall

FTPプロキシー・ファイアウォールを持っていれば(HTTPやSOCKSファイアウォール ではなく)、この値にはファイアウォール・ホスト名が設定されなければなりません。 もしあなたのファイアウォールがポート21をリスンしないのであれば、この値は "ホスト名:ポート" (例 "hostname:99")に設定されなければなりません。

ftp_firewall_type

さまざまな異なるftpファイアウォール製品を利用することができます。しかし残念ながら ファイアウォールを通過する方法には標準がありません。以下のリストは Net::FTPが使用するコマンドのシーケンスを示しています

  user        リモートホストのためのユーザ名
  pass        リモートホストのためのパスワード
  fwuser      ファイアウォールのためのユーザ名
  fwpass      ファイアウォールのためのパスワード
  remote.host リモートftpサーバーのホスト名
0

ファイアウォールはありません

1
     USER user@remote.host
     PASS pass
2
     USER fwuser
     PASS fwpass
     USER user@remote.host
     PASS pass
3
     USER fwuser
     PASS fwpass
     SITE remote.site
     USER user
     PASS pass
4
     USER fwuser
     PASS fwpass
     OPEN remote.site
     USER user
     PASS pass
5
     USER user@fwuser@remote.site
     PASS pass@fwpass
6
     USER fwuser@remote.site
     PASS fwpass
     USER user
     PASS pass
7
     USER user@remote.host
     PASS pass
     AUTH fwuser
     RESP fwpass
ftp_ext_passive
ftp_int_pasive

FTPサーバーは通常、パッシブモードでは動きません。つまりデータを転送したいとき には、あなたはサーバーに接続するアドレスとポートをサーバーに伝えなければ なりません。

いくつかのファイアウォールでは、サーバーがあなたのマシンに接続できないので (というのもあなたはファイアウォールの向こうにいるので)これが動きません。 そしてファイアウォールはコマンドを書き換えません。この場合、 ftp_ext_passivetrue値に設定しなければなりません。

いくつかのサーバーはパッシブモードでしか動かないように設定されています。 もしこういったものを持っているのであれば、常にパッシブモードで 転送するようNet::FTPに強制することができます;ファイアウォールを 通さないとき、ftp_int_passivetrue値を設定します。

local_netmask

"134.99.4.0/24"という形式のネットマスク文字列のリストへのリファレンス。 これらはrequires_firewall関数によって、与えられたホストが ファイアウォールの内側か外側かを判定するために使われます。

libnetパッケージのインストールとテストの途中で、以下のエントリが使われます。

test_hosts

trueであれば、make testは構成設定で与えられているホストに接続しようと するかもしれません。

test_exists

trueであれば、Configureは与えられた各ホスト名が存在するかをチェックします。


$Id: Config.pod,v 1.2 2011/01/27 13:15:11 iwai Exp $