2019年6月4日火曜日

モビリティ・プリント - Windows DNSレコードの例


通常のセットアップ中に、モビリティ・プリント・サーバは環境に関する照会(プロンプト)を行います。
これにより、クライアントがプリント・サービスを検出するのに必要なレコードを設定するために、
DNSサーバ上で実行する最適なコマンドを生成することができます。
(これに対する1つの例外は、複数のモビリティ・プリント・サーバ用にDNSレコードを設定する場合です。この場合少し設定が複雑になります。)

しかしながら、なぜ/どのようにDNSレコードが作成されるかを正確に把握しておくのは有益です。
ネットワーク構成を変更した時にレコードを削除して最初からやり直す場合は特にそうです。
下記はWindows DNSでレコードを設定するための2つの方法と、其々がいつ使用されるかを比較したものです。


Method A (すべてのレコードは前方参照ゾーン内に入る)
 ● これらのDNSレコードはモビリティ・プリント・サーバにより自動的に生成されるため、設定とトラブルシューティングが最も簡単なため、
    ほとんどのシチュエーションで使用されます。
 ● レコードが作成される前方参照ゾーンと完全に一致した正しいDNS検索サフィックスが設定されたクライアントは、プリンタを検出することができます。
 ● この方法は、前方参照ゾーンもしくはDNS検索サフィックスが「.local」で終わる場合、iOSとmacOSデバイスでは動作しません。
     Appleデバイスは最上位ドメイン名を一意に処理するためです。

下記コマンド例は、モビリティ・プリント・サーバのIPアドレスが「10.0.0.6」で、ネットワーク上のクライアントのDNS検索サフィックスが「papercutsoftware.com」であると想定しています。

コマンド例
dnscmd /RecordAdd papercutsoftware.com b._dns-sd._udp PTR pc-printer-discovery.papercutsoftware.com
dnscmd /RecordAdd papercutsoftware.com lb._dns-sd._udp PTR pc-printer-discovery.papercutsoftware.com
dnscmd /RecordAdd papercutsoftware.com pc-mobility-print-host A 10.0.0.6
dnscmd /RecordAdd papercutsoftware.com pc-printer-discovery NS pc-mobility-print-host.papercutsoftware.com

スクリーンショット例


















上記画像は「pc-printer-discovery」と呼ばれる委任サブゾーンです。
これはWindows, Android, Chromeクライアントから検索するために必要です。
これはモビリティ・プリント・サーバのIPアドレスで解決される「pc-mobility-print-host」というAレコードをポイントしています。



















上記画像は、AppleデバイスがネイティブでチェックするBおよびLBポインタ・レコードです。
これらのレコードは、macOSとiOSクライアントを委任サブゾーン「pc-printer-discovery」へ導きます。


Method B (レコードは条件付きフォワーダをポイントする逆引き参照ゾーンに入る)
 ● 管理者が、DNS検索サフィックスが「.local」で終わるように指定した場合、もしくは管理者がサブネットのリストを入力した場合に
     これらのDNSレコードが使用されます。
 ● DNS検索サフィックスが「.local」で終わる場合、Apple製品のドメイン名処理の方法が原因でこれらのレコードが必要となります。
 ● このスタイルのDNS-SDレコードは、クライアントにDNS検索サフィックスを設定する必要がありません。
 ● サブネット毎にプリンタ・アクセスを制限する場合、これらのレコードを設定する必要があります。
 ● ここに入力するサブネットはデバイスのサブネットと完全に一致する必要があります。
     例えば「10.0.1.0/24 」と「10.0.2.0/24 」の2つのサブネットのDNSレコードを作成する場合、
    「10.0.1.0/23」をショートカットとして使用することはできません。

下記コマンド例は、モビリティ・プリント・サーバのIPアドレスが「10.0.0.6」で、
クライアントは「10.0.0.0/24 」と「10.0.1.0/24」の2つのサブネットに接続すると想定しています。

コマンド例
dnscmd /ZoneAdd pc-printer-discovery. /dsforwarder 10.0.0.6

dnscmd /ZoneAdd 0.0.0.10.in-addr.arpa. /dsprimary
dnscmd /RecordAdd 0.0.0.10.in-addr.arpa. b._dns-sd._udp PTR 0.0.0.10.pc-printer-discovery.
dnscmd /RecordAdd 0.0.0.10.in-addr.arpa. lb._dns-sd._udp PTR 0.0.0.10.pc-printer-discovery.

dnscmd /ZoneAdd 0.1.0.10.in-addr.arpa. /dsprimary
dnscmd /RecordAdd 0.1.0.10.in-addr.arpa. b._dns-sd._udp PTR 0.1.0.10.pc-printer-discovery.
dnscmd /RecordAdd 0.1.0.10.in-addr.arpa. lb._dns-sd._udp PTR 0.1.0.10.pc-printer-discovery.

スクリーンショット例

















上記画像は、モビリティ・プリント・サーバのIPアドレスを直接ポイントする条件付きフォワーダ「pc-printer-discovery」です。
これはWindows, Android, Chromeクライアントから検索するために必要です。


















上記画像は、BおよびLBポインタ・レコードを含む逆引き参照ゾーンです。
これらのレコードは、macOSとiOSクライアントを委任サブゾーン「pc-printer-discovery」へ導きます。
モビリティ・プリントDNSレコードに使用される逆引き参照ゾーンは常に4オクテットあります。


サブネットとDNS-SDに関する詳細情報
弊社に「10.0.0.0/8 のような非常に大きなサブネットを使用してより多くの小さなサブネットを含めることができませんか?」や
「/23サブネットがある場合どうなりますか?」という問い合わせがきます。
回答は、セットアップ・ウィザードで入力したサブネットは、ネットワーク上のクライアントのサブネットと完全一致している必要がある、ということです。
より広範囲を網羅する「255.0.0.0」のサブネットマスクを設定することでファイアウォールやルーターのルールを設定する時は正常に動作しますが、
DNS-SDとAirPlayに関しては少し異なった動作になります。

例えば、IPアドレス「10.10.16.15」サブネットマスク「255.255.248.0」のiPhoneがあると想定します。
このデバイスの実際のサブネットは「10.10.16.1 - 10.10.23.254」の範囲のIPアドレスを含みます。
iPhoneがDNSサーバにクエリしてBおよびLBポインタ・レコードを検索すると、
DNSサーバは「10.10.16.0 (0.16.10.10.in-addr.arpa)」の逆引き参照ゾーン内をチェックします。
この逆引き参照ゾーンは、iPhoneが公開されているプリンタ検出するために存在している必要があります。
逆引き参照ゾーン「10.0.0.0 (0.0.0.10.in-addr.arpa) 」は、iPhoneのネットワークと一致しないため動作しません。

動作させるためには、管理者はモビリティ・プリント管理者画面のDNS設定ページから正しいサブネットマスクを使用して、
クライアントが使用するそれぞれの正確なサブネットを指定する必要があります。
この例では「10.10.16.1/255.255.248.0」です。その後、管理者はDNSサーバでコマンドを実行して正しいレコードを作成する必要があります。


-------------------------
https://www.papercut.com/kb/Main/MobilityPrintDNSRecordExamples

0 件のコメント :

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。