概要
このドキュメントでは、スプリットドメインネームシステム(DNS)の設定を回避するために、内部ネームサーバ(NS)でサービスレコード(SRV)のピンポイントエントリを作成する方法について説明します。
著者:Cisco TACエンジニア、Joshua AleroおよびLidiya Bogdanova
前提条件
要件
次の項目に関する知識があることが推奨されます。
- DNSの基本的な知識
- パブリック権限のあるNSで正しく設定されたドメイン
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- Microsoft Windows Server 2012
- Video Communication System(VCS)/Expressway
注:このドキュメントの情報は、Microsoft DNSサーバまたはバインドのいずれかで使用できます。使用する必要があるのは、特定のDNSサーバに適した手順だけです。他のタイプのDNSサーバの手順は提供されていませんが、サーバがこの設定をサポートしている場合は、その概念を他のDNSサーバとともに使用できます。
注:内部NSは、内部ユーザだけでなく、Video Communication System(VCS)/Cisco Expressway-Cでも使用されます。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
Pinpoint DNSの概要
ピンポイントDNSエントリは、単一のホスト専用に作成されたゾーンです。このエントリは、親ドメインに対する権限を持たないネームサーバで権限を持つように定義できます。これにより、このドメインの他のDNSクエリを権威サーバに転送できます。
ピンポイントゾーンには、通常、必要なStart of Authority(SOA)レコードとネームサーバレコードの他に1つのレコードが含まれます。このレコードは自己参照であり、ゾーンの名前と同じで、Microsoft DNSで親フォルダと同じように表示されます。また、BINDゾーンファイルの@記号で参照されます。レコードは、DNSでサポートされる任意のタイプにすることができます。@記号は、Windowsコマンドラインインターフェイス(CLI)ツールでも使用され、BINDと同様に動作します。
次の図に、これらのレコードの例を示します。
これはDNSシステムの機能であり、Cisco JabberまたはCisco Expresswayアプリケーションのメカニズムには依存しません。また、スプリットDNSが使用できない場合は、Cisco Jabberの導入でサポートされるソリューションです。
ネームサーバがドメインの権限またはマスターとして設定されている場合、特定の名前を解決できない場合でも、そのドメイン内の名前に対するクエリはフォワーダに転送されません。したがって、同じドメイン内の異なる名前解決を通常ドメインの内部ユーザと外部ユーザに提供するために、スプリットDNSが使用されます。スプリットDNS設定では、内部DNSサーバは内部固有のエントリを持つゾーンのコピーを維持し、外部DNSサーバは外部固有のエントリを持つゾーンのコピーを維持します。外部ゾーンには存在するが、内部ゾーンには存在しないエントリは、内部クエリに対して解決できない必要があります。
これにより管理のオーバーヘッドが発生する可能性があるため、一部のネットワーク管理者はスプリットDNS設定を回避することを好みます。Pinpoint DNSエントリは、このような場合の代替手段となります。
設定
DNS SRVレコードの作成
Cisco Jabberの自動プロビジョニングとMobile and Remote Access(MRA)サービスでは、ドメインごとに2つのSRVレコードが関係しています(例としてdomain.comを使用します)。
- _collab-edge._tls.domain.com
- _cisco-uds._tcp.domain.com
ExpresswayまたはCisco Unified Communications Manager(CUCM)がクラスタ化されている場合、これらのレコードに複数のエントリを設定できます。
domain.comの認証ゾーンファイルが外部NSにのみ存在する場合は、内部NSで_cisco-uds._tcpのピンポイントDNSエントリが必要になります。最初にピンポイントDNSゾーンを作成し、次にゾーン内のSRVを作成する必要があります。
_cisco-uds._tcp SRVレコードは、外部ではなく内部ネットワークでのみ解決でき、ユーザデータサービス(UDS)を備えたCUCMノードの完全修飾ドメイン名(FQDN)に解決する必要があります。
_collab-edge._tls SRVレコードは外部ネットワークから解決できる必要があり、Expressway-Eサーバの完全修飾ドメイン名(FQDN)に解決されます。
Windows DNSサーバの設定
ピンポイントDNSエントリは他のゾーンとして作成され、その名前にはSRV名全体(_cisco-uds._tcp.domain.comなど)が含まれている必要があります。 この手順は、グラフィカルユーザインターフェイス(GUI)でも実行できます。ただし、次の例では、ピンポイントDNSエントリがまだ作成されていないことを前提としています。
SRVレコード自体を追加するには、CLIツールを使用する必要があります。GUIを使用してピンポイントDNSエントリにSRVレコードを追加しないでください。これは機能しません。CLIを使用して追加すると、これらのSRVレコードは、他のエントリと同様に通常のツールで管理できます。Windows CLIでは、dnscmdコマンドとPowerShellコマンドのいずれかの2つの方法が提供されます。次の例はどちらも2つのピンポイントDNSエントリを作成し、_cisco-uds._tcpのSRVレコードを1つ追加します
一度に使用できる方法は、次の2つのいずれかのみです。
dnscmd . /zoneadd _cisco-uds._tcp.domain.com. /dsprimary
dnscmd . /recordadd _cisco-uds._tcp.domain.com. "@" SRV 10 10 8443 cucm.domain.local
- 例2 - PowerShellコマンドの使用(dnscmdはMicrosoft Windows Serverの将来のバージョンで廃止される予定で、PowerShellは同じ目的で使用できます)。レプリケーションスコープオプションはDomain, Forest、またはZone FileActiveFileでないディレクトリ(AD)統合
Import-Module DnsServer
Add-DnsServerPrimaryZone -Name "_cisco-uds._tcp.domain.com" -ReplicationScope "Domain"
Add-DnsServerResourceRecord -Srv -ZoneName "_cisco-uds._tcp.domain.com" -Name "@" –Priority 10 -Weight 10 -Port 8443 -DomainName "cucm.domain.local"
次の図は、SRVレコードを持つピンポイントDNSエントリがGUIでどのように表示されるかを示しています。
バインドDNSサーバの設定
BIND DNSサーバでは、ピンポイントDNSエントリは通常のゾーンファイルと同じ方法で作成されます。
$ORIGINエントリは、SRVレコードのFQDN(_cisco-uds._tcp.domain.comなど)を指す必要があり、SOAレコードとNSレコードは通常どおりに追加されます。SRVはオプションで(ピンポイントDNSエントリがSRVレコードを定義するか上書きするか)、使用される名前はゾーンの名前/ORIGINに相当する@です。
_cisco-uds._tcp.domain.com.zoneファイルの内容の例を次に示します。
$TTL 1h
$ORIGIN _cisco-uds._tcp.domain.com.
@ IN SOA internalns.domain.local. hostmaster.domain.local. (
2016033000;
12h;
15m;
3w;
3h;
)
IN NS internalns.domain.local.
@ IN SRV 10 10 8443 cucm.domain.local.
ゾーン定義をnamed.confに追加する方法の例を次に示します。
zone "_cisco-uds._tcp.domain.com" IN {
type master;
file "_cisco-uds._tcp.domain.com.zone";
};
確認
ここでは、設定が正常に機能しているかどうかを確認します。
- サーバを内部NSに設定してコマンドnslookupを使用し、DNSエントリを正確に確認します。
次に、親ドメインから1つのホスト名を検索する方法と、内部NSで作成されたSRVレコードを検索する方法の例を示します。
C:\>nslookup exp-e.domain.com internalNS.domain.local
Non-authorative answer:
Name: exp-e.domain.com
Address: 198.51.100.50
C:\>nslookup -type=srv _cisco-uds._tcp.domain.com internalNS.domain.local
_cisco-uds._tcp.domain.com SRV service location:
priority = 10
weight = 10
port = 8443
svr hostname = cucm.domain.local
cucm.domain.local internet address = 192.168.100.11
内部NSで設定されていないホスト名を検索して、要求が期待どおりに転送されることを確認する方法の例を次に示します。
C:\>nslookup www.example.com internalNS.domain.local
Non-authoritative answer:
Name: www.example.com
Addresses: 203.0.113.42
- サーバをパブリックNSまたは外部NSに設定し、同じ手順を繰り返します。_cisco-uds._tcp SRVレコードのSRVルックアップが失敗します。
トラブルシュート
ここでは、設定のトラブルシューティングに使用できる情報を示します。
nslookup検証で重複する部分を持つホスト名(cucm.domain.local.domain.localなど)が返される場合、DNSエントリは完全なストップサインで終了することを確認する必要があります。そうしないと、ゾーンの起点が解決されたホスト名に追加されます。
作成されたエントリに問題がある場合は、DNSサーバから削除するだけです。Microsoft DNSにエントリを追加するにはCLIが必要ですが、GUIでエントリを安全かつ簡単に削除できます。
関連情報
MRAのマルチドメイン展開(異なる内部および外部ドメイン名)については、次のドキュメントを参照してください。
設定例:複数のドメイン展開での Expressway/VCS を介したモバイルおよびリモート アクセス