web-dev-qa-db-ja.com

NovellClientに特定のIPインターフェース上のNDSツリーへのアクセスを強制する方法

約40のクライアントにファイル共有を提供するレガシーNetWare6.5サーバーがあります。また、2つの内部サブネットと親機関のネットワーク間のルーターとしても機能します。ルーティング機能をジュニパー製品に置き換えることを計画しています。同時に、物理ネットワークインフラストラクチャをリファクタリングしています。現在、NetWareサーバーは両方のサブネットにIPプレゼンスを持っています。 3つのインターフェイスのうち2つを無効にして、ネットワークへの接続が1つだけになるようにします。

残念ながら、Novellクライアント(Windows上の4.91.5.20080922 XP SP3)がNDSツリーnetware_server.department.mycorpを次のように解決する方法を理解できません。実際のIPアドレス。テストの結果、これらのインターフェイスが存在しなくなった場合、クライアントはNDSオブジェクトを正しい(まだ存在する)IPアドレスに「解決」できず、混乱が生じることがわかっています。

Wiresharkで実際のTCP/IP会話を確認できるように、netware_serverの「名前解決」を強制するために、「サーバーキャッシュタイムアウト」を0に設定しようとしました。また、C:\ WINDOWS\system32\drivers\etc\hostsファイルにNetWareサーバーのNDSオブジェクト名を使用してエントリを追加し、Novellのクライアントの名前空間プロバイダーを制限してみました。 (プロパティ-プロトコル設定)現在使用されている難解な方法の代わりに/ etc/hostsファイルを使用して新しい「ルックアップ」を強制しようとする「ホストファイル」のみ。これらの試みは両方ともこれから来ました TID100577 。両方とも失敗しました。

Novell Clientは、netware_server.department.mycorpなどのNDSオブジェクト名を実際のIPアドレスにどのように解決しますか?クライアント側の「NDS名」キャッシュを強制的にクリアするにはどうすればよいですか?その「NDS名」解決を、手動で指定したIPアドレスに常に解決するように強制するにはどうすればよいですか?

EDIT:まず、純粋なIPを実行しています。まだIPXを実行している場合、Novellクライアントの動作はまったく異なります。


Novell Clientは、実際にログインする前に、NetWareサービスをホストしているサーバーが配置されているIPアドレスを識別する必要があります。この情報は、Novellが「名前空間プロバイダー」(NSP)と呼ぶものを通じて収集されます。 IPのみを使用しているため、SLP、DNS、Host/NWHOSTファイル、またはDHCP( TID100577 )のみを使用するように制限されています。前述のように、[プロパティ]-[プロトコル設定]でこれらのNSPを選択または選択解除することにより、Novellクライアントが使用できるNSPにアクセスして無効にすることができます。同じことによると [〜#〜] tid [〜#〜] NT/2000以降、Novellクライアントは「非同期」方式でNSPをポーリングするため、(残念ながら)「順序」はありません。彼らがポーリングしている。

さらに、Novellクライアントはこれらの「サービス名」をローカルにキャッシュします。デフォルト設定では、このキャッシュを21日間保持します。クライアントに別のIPアドレスで同じNDSツリーを検索させようとしている場合は、このキャッシュをクリアすることを検討する必要があります([詳細設定]-[サーバーキャッシュタイムアウト]または[HKLM\SYSTEM\CurrentControlSet\Services\NetWareWorkstation\Parameters\ServerCacheTimeout)。 Novellクライアントがどの「ネームサービス」プロバイダーを使用するかについての詳細は、 ここ を参照してください。しかし、SLPは私の店で使われている方法のようです。 Novellは、NovellクライアントがSLPをどのように使用するかについての情報を持っています ここ

ただし前述のように、Novellクライアントに1つのIPアドレスからのみNetWareサービスにアクセスさせるための最も「確実な」方法は、手動で指定することです。 'サーバーのIP:'ユーティリティのプロンプト。これは理論的にはヒント(つまり、netware_server.department.mycorp)とキャッシュ内のすべてをオーバーライドする必要がありますが、おそらく何らかの方法で再確認する必要があります。

3
user62491

IPXがオフになっていると仮定します。そうでない場合は、私に知らせてください、そして私は拡大します。

1つのインターフェースと1つのインターフェースのみに接続するための最速の方法は、ログイン時に接続するIPアドレスを[サーバー]フィールドに入力することです。


名前解決はいくつかの方法から来ています。

  • クライアントが構成されているものに基づくSLP
  • ログイン画面に表示されるヒント(「サーバー」と「ツリー」の値)
  • DNSルックアップ

ルックアップの実行に使用する正確な順序がわからなくなったので、これは間違っている可能性があります。最初に試行するのは、要求されたリソースに対するSLPクエリだと思います(「サーバー」が入力されている場合は「サーバー」ですが、両方が入力されている場合は「ツリー」がサーバーよりも優先されます)。 SLPスコープの値はサーバーによって定期的に入力されるため、両方のサーバーインターフェイスにIPアドレスがある場合は、両方をアドバタイズします。オフにすると、SLPスコープから古くなるまでしばらく時間がかかります。

SLP解決が失敗した場合、DNSにフォールバックします。 [サーバー]、[ツリー]、および[コンテキスト]フィールドの値を使用して、DNS経由でサーバーを見つけようとします。 eDirツリーがDNSルートでない限り、これは失敗します。

あなたが試みるかもしれない一つのことは、サーバーにあなたのネットワークインターフェースの1つをアドバタイズしないように強制するために必要なSetコマンドを発行することです。これは、クライアントがバックアップLANインターフェイスに接続することを望まなかったため、専用のバックアップLANをセットアップしていた10年前に行いました。

SET NCP EXCLUDE IP ADDRESSES 192.168.2.30

これにより、その特定のアドレスがNCPサービスから除外されます。 SLPを介してアドバタイズされることはなく、SLPが機能していると仮定すると、クライアントが開始したすべてのNCPトラフィックが残りのインターフェイスに強制的に送られます。

3
sysadmin1138