ヘッダーをスキップ
Oracle Database Net Servicesリファレンス
11g リリース1(11.1)
E05726-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

4 プロトコル・アドレス構成

ネットワーク・オブジェクトは、プロトコル・アドレスによって識別されます。接続が確立されると、クライアントと要求の受信者(リスナーまたはOracle Connection Manager)が同じプロトコル・アドレスで構成されます。

クライアントは、このアドレスを使用して接続要求を特定のネットワーク・オブジェクトが存在する場所に送信し、受信者はこのアドレスで要求のリスニングを行い、クライアント情報が自分の持っているアドレス情報に一致するかどうかに基づいて接続を許可します。

この章では、次の項目について説明します。

4.1 ADDRESSおよびADDRESS_LIST

プロトコル・アドレスは、ADDRESSADDRESS_LISTの要素で構成されています。

4.1.1 ADDRESS

用途

ADDRESSパラメータは、プロトコル・アドレスを定義します。

このパラメータは、ADDRESS_LISTパラメータまたはDESCRIPTIONパラメータに埋め込まれます。DESCRIPTIONは、tnsnames.oraファイルまたはlistener.oraファイルで使用されます。


関連項目:


各プロトコルに必要なパラメータは、「プロトコル・パラメータ」を参照してください。

(ADDRESS=
 (PROTOCOL=tcp)
 (HOST=sales-server)
 (PORT=1521))

4.1.2 ADDRESS_LIST

用途

ADDRESS_LISTパラメータは、共通の特性を共有するプロトコル・アドレスのリストを定義します。

 (ADDRESS_LIST=
  (LOAD_BALANCE=on)
  (ADDRESS=
   (PROTOCOL=tcp)
   (HOST=sales-server)
   (PORT=1521))
  (ADDRESS=
   (PROTOCOL=tcp)
   (HOST=hr-server)
   (PORT=1521)))
 (ADDRESS_LIST=
  (ADDRESS=
   (PROTOCOL=tcp)
   (HOST=finance-server)
   (PORT=1521)))

4.2 プロトコル・パラメータ

リスナーおよびOracle Connection Managerは、プロトコル・アドレスによって識別されます。表4-1「プロトコル固有のパラメータ」は、Oracle Protocol Supportで使用されるパラメータの説明です。

表4-1 プロトコル固有のパラメータ

プロトコル パラメータ 説明

IPC

PROTOCOL

ipcを値として指定します。

 

KEY

サービスの一意の名前を指定します。 サービス名またはサービスのOracleシステム識別子(SID)を使用することをお薦めします。

例:

(PROTOCOL=ipc)(KEY=sales)

Named Pipes

PROTOCOL

nmpを値として指定します。

 


SERVER

Oracle Serverのコンピュータ名を指定します。

 


PIPE

データベース・サーバー(Named Pipesでサーバーに指定したものと同じPIPEキーワード)への接続に使用したパイプ名を指定します。これには任意の名前を指定できます。

例:

(PROTOCOL=nmp)(SERVER=sales)(PIPE=dbpipe0)

SDP

PROTOCOL

sdpを値として指定します。

 


HOST

コンピュータのホスト名またはIPアドレスを指定します。

 


PORT

リスニング・ポート番号を指定します。

例:

(PROTOCOL=sdp)(HOST=sales-server)(PORT=1521)
(PROTOCOL=sdp)(HOST=192.0.2.204)(PORT=1521)

関連項目: 「お薦めするポート番号」

TCP/IP

PROTOCOL

tcpを値として指定します。

 


HOST

コンピュータのホスト名またはIPアドレスを指定します。

 


PORT

リスニング・ポート番号を指定します。

例:

(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521)
(PROTOCOL=tcp)(HOST=192.0.2.204)(PORT=1521)

関連項目: 「お薦めするポート番号」

SSL付きTCP/IP

PROTOCOL

tcpsを値として指定します。

 


HOST

コンピュータのホスト名またはIPアドレスを指定します。

 


PORT

リスニング・ポート番号を指定します。

例:

(PROTOCOL=tcps)(HOST=sales-server)(PORT=2484)
(PROTOCOL=tcps)(HOST=192.0.2.204)(PORT=2484)

関連項目: 「お薦めするポート番号」


4.3 お薦めするポート番号

表4-2「お薦めするポート番号」は、お薦めするポート番号の一覧です。

表4-2 お薦めするポート番号

ポート 説明

1521

クライアントがリスナーに接続するためのデフォルトのリスニング・ポートです。将来のリリースで、このポート番号は、公式登録ポート番号であるTCP/IPの2483およびSSL付きTCP/IPの2484に変更される可能性があります。

1521

クライアントがOracle Connection Managerに接続する際の、デフォルトで公式登録のリスニング・ポートです。

1830

管理コマンドがOracle Connection Managerに接続する際の、デフォルトで公式登録のリスニング・ポートです。


4.4 ポート番号の制限

オラクル社では、1〜65535のポート番号を許可しています。1023以下のポート番号は、多くのオペレーティング・システムで、特権プロセスで使用するために予約されています。

オペレーティング・システムによっては、特権プロセスのみ1023以下のポートでTCP接続をリスニングできる場合があります。1023以下のポートをリスニングするようにリスナーを構成する必要がある場合は、次のような一般的な手順に従ってください。使用するオペレーティング・システムによっては、別の手順が必要になることがあります。

  1. Oracle Net Configuration AssistantまたはOracle Net Managerを使用して、プロトコル・アドレスおよびその他の構成パラメータでリスナーを構成します。


    関連項目:


    『Oracle Database Net Services管理者ガイド』

  2. スーパーユーザー(root)としてログインし、リスナーの実行可能ファイル(tnslsnr)および依存共有ライブラリのファイル所有権とアクセス許可を設定し、スーパーユーザーのみがこれらのファイルを変更できるようにします。

    これらのファイルへの(ルート・ディレクトリから開始する)パス名に含まれている個々のディレクトリのアクセス権も、同じように変更されていることを確認します。

  3. rootとしてリスナーを起動します。

    オペレーティング・システム・プロンプトで、tnslsnrと入力し、オプションのコマンドライン引数も指定します。指定方法は、次のとおりです。

    tnslsnr listener_name -user user -group group
    

    引数は次のとおりです。

    表4-3 tnslsnrユーティリティのオプション

    オプション 説明

    listener_name

    リスナーの名前を指定します。省略すると、デフォルト名のLISTENERが使用されます。

    -user user

    スーパーユーザー(root)権限が必要ない場合にリスナーが使用する権限を持つユーザーを指定します。権限が必要な操作を実行した後、リスナーはroot権限を永遠に放棄し元に戻すことはできません。

    -group group

    スーパーユーザー(root)グループ権限が必要ない場合にリスナーが使用する権限を持つユーザーを指定します。権限が必要な操作を実行した後、リスナーはrootグループ権限を永遠に放棄し元に戻すことはできません。


    リスナーは、起動直後に、指定されたユーザーおよびグループに一時的に切り替えます。後続の操作はすべて(構成されているエンドポイントをリスニングする必要のあるシステム・コールを除いて)、指定されたユーザー権限またはグループ権限で実行されます。リスナーは、短時間、スーパーユーザー(root)に戻って予約済アドレス(1023以下のTCPポートなど)をリスニングします。listener.oraに構成されているすべてのエンドポイントのリスニングを開始した後は、指定されたユーザーおよびグループに切り替え、その後は元には戻りません。したがって、リスナーは最初のroot権限を放棄します。現行のリリースでは、-userおよび-groupコマンドライン引数は、数値形式で指定されているユーザーおよびグループ識別子のみを受け入れます。

    たとえば、mylsnrというrootリスナーを実行し、このリスナーでグループ識別子が16のユーザー37555の権限を使用する場合は、オペレーティング・システムのコマンド・プロンプトに次のように入力します。37555にはユーザーoracleの識別子、16にはdbaグループの識別子を指定してもかまいません。

    tnslsnr mylsnr -user 37555 -group 16
    
  4. リスナーの起動後は、リスナー制御ユーティリティを使用してリスナーを管理できます。


    重要:


    • リスナー・プロセスを実行するユーザーとしては、前述の例の手順3で説明されているようにoracleを使用するか、オペレーティング・システム上で通常リスナー・プロセスを実行するユーザーを使用することをお薦めします。

    • リスナー・プロセスをrootとして実行するとセキュリティ上攻撃を受けやすくなるため、実行しないようにしてください。