問題 2:すべての IBM(R) Lotus Notes(R) Client と IBM(R) Lotus Domino(R) Server が Lotus Domino Server への接続に使用するアルゴリズムでは、サーバーへの正常な接続に使用された IP アドレスをキャッシュに保持できます。サーバーの IP アドレスが変更されたときに、このキャッシュエントリが存在する場合は、キャッシュされた古いアドレスが使用されることによって、接続が失敗することがあります。
このキャッシングが実行される理由を理解しておくことは重要です。Lotus Notes は、Lotus Notes ポートとして実装される広範なネットワークテクノロジーをサポートしています。Lotus Notes が、ダウンしたサーバーへの接続試行で、それぞれの接続試行が失敗するまでにすべての名前解決ツールを使用してすべてのテクノロジー (Lotus Notes ポート) を試す場合は、接続試行に長い時間がかかることになります。サーバーがダウンしたときのエラーの報告でこのような長い遅延が発生するのを防ぐために、Lotus Notes は 2 つのサーバー接続アルゴリズムを実装しています。1 つのアルゴリズムは高速で、キャッシュされたアドレスを使用し、もう 1 つは低速で、失敗したときにキャッシュをバイパスする完全なアルゴリズムを使用します。
この問題には次のような解決策があります。解決策は、使用する必要性が高い順に示されています。
解決策 1:高速接続アルゴリズムは、クライアントまたはサーバーが、1 日のうちの早い時間に同一サーバーに正常接続した場合に限り使用されます。当日中にまだ正常な接続が行われていない場合は、低速なアルゴリズムが使用され、キャッシュはバイパスされます。この問題を避けるために、サーバーの IP アドレスを夜遅く (ただし、午前 0 時前) に変更します。このアクションは、ユーザーには意識されず、ユーザー側でのヘルプデスクへの問い合わせやアクションが不要であるため、最も簡単な解決策といえます。
解決策 2:キャッシュは、サーバーへの正常接続の後に書き換えられます。キャッシュされるアドレスは、解決された IP アドレスではなく、ユーザーによって入力されたアドレスです。したがって、ユーザーが、servera.acme.com を入力して servera/acme へ接続することを習慣にしている場合、キャッシュされるアドレスは 1.2.3.4 ではなく、servera.acme.com となり、問題が発生することはありません。
解決策 3:キャッシュは、サーバーへの正常接続の後に書き換えられます。ユーザーが Notes 名 (servera/acme など) によるサーバーへの接続を試行するときは、失効したキャッシュエントリが使用されます。ユーザーが、サーバーの完全修飾ドメイン名 (servera.acme.com など) を使用して接続を試行するときは、キャッシュは使用されず、新しいアドレスが DNS から取得され、正確な新規アドレスがキャッシュに入力されます。このようなサーバーの完全修飾名を使用した正常な接続を行うには、[ファイル] - [アプリケーション] - [開く] メニューコマンドを使用するか、[ファイル] - [プリファレンス] - [ユーザー] - [ポート] - [トレース] メニューを選択します。
解決策 4:キャッシュは、クライアントのロケーション文書およびサーバーのサーバー文書内の次の Lotus Notes フィールドに保存されます。
- $Saved Addresses
- $SavedDate
- $SavedPorts
- $SavedServers
- $SavedTriedDate
これらのフィールドが、式エージェントの使用などで、ロケーションまたはサーバー文書から削除されている場合、キャッシュ内の旧 IP アドレスは使用できません。この方法は、クライアントまたはサーバーがメモリ内のコピーに存在している場合に Lotus Notes アイテムが書き換えられるため、混乱の原因となります。したがって、この方法を使用して、クライアントのキャッシュを消去する場合は、ローカルアドレス帳にエージェントを作成してから、スタンドアロンのロケーション文書に切り替え、クライアントを終了します。クライアントを再起動し、エージェントを実行して、その他すべての保存場所のキャッシュを消去します。通常のロケーションに切り替えます。
キャッシュを消去するエージェント式言語コードのサンプルは以下のとおりです。
- FIELD $SavedAddresses:=@DeleteField;
- FIELD $SavedDate:=@DeleteField;
- FIELD $SavedPorts:=@DeleteField;
- FIELD $SavedTriedDate:=@DeleteField;
- FIELD $SavedServers:=@DeleteField;
- SELECT @All
解決策 5:次の NOTES.INI 設定を使用して、キャッシュされているアドレスの使用を無効にします。
DONT_USE_REMEMBERED_ADDRESSES=1
クライアントが、複数または低速なポートテクノロジーを使用している場合は、この手法をお勧めできません。この手法では、サーバーのダウンの報告で大きな遅延が生じる可能性があるからです。