web-dev-qa-db-ja.com

Mac OS XLionでの.localTLDの10秒の遅延

当社のネットワークは、ローカルネットワーク上のすべてのサーバーにxxx.companyname.localを使用しています。 Macでこれらのサーバーの1つにアクセスするときはいつでも、10秒の遅延があります。どうやらLionが.localドメインを次の順序で解決するため、この遅延はDNSルックアップが原因であることがわかりました。

  1. /etc/hostsでIPv6アドレスを確認してください
  2. dNSサーバーでAAAAレコード(IPv6アドレス)を確認します
  3. aAAAレコードをMDNS(Bonjour)経由で確認します
  4. /etc/hostsでIPv4アドレスを確認してください
  5. dNSサーバーでAレコード(IPv4アドレス)を確認します
  6. mDNSでAレコードを確認する

さて、問題は、IPv6ネットワークがないことです。ネットワーク上のすべてのxxx.companyname.localサーバーにはIPv4アドレスのみがあり、DNSサーバーにはAレコードのみがあります。これは、アドレスがステップ5で解決されることを意味します。これに関する問題は、ステップ3がタイムアウトするまでに10秒かかることです。ウィキ、SVNサーバー、Kerberosサーバーなどに接続するたびに、10秒の遅延があります。

/etc/hostsに次のような行を追加して、Lionをだますことができました。

::FFFF:10.99.99.99 xxx.companyname.local

これを行うと、LionはドメインにIPv6アドレスがあると見なし、手順1の後で停止します。ただし、この回避策はDNSのすべての便利な機能を完全に回避します。数十の内部ドメインのIPアドレスを手動で追跡したくありません!ホスト名の使用をやめて、IPアドレスを入力することもできます。

だから:誰かがこのルックアップの順序を変更する方法を知っていますか?または、IPv6ネットワークがないため、IPv6ルックアップを無効にしますか?

13
Jakob Egger

IT部門がlocal.を悪用するのを防ぎます。

すでに説明したように、会社が所有していないドメイン名を悪用するため、企業のサブドメインを作成できると想定すべきではありません。ここで問題の半分。会社のコンピュータにMacintosh(またはDNSSDを使用するその他のもの)が含まれている場合は、local.がこの方法で自由にいじり回すことができるとは限りません。

Macintoshをアップグレードします。

MacOS 10.4は確かに、あなたが説明するようにxxx.companyname.local.を扱います。しかし、これはオペレーティングシステムのその後のリビジョンで変更されました。 MacOS 10.5は、2つのラベル名のみをマルチキャストDNSに渡します。 xxx.companyname.local.などの3つのラベル名はMDNSでは処理されません。 MacOS 10.6はこれをさらに進め、DNSサーバーがlocal.zoneを持つように誤って構成されているかどうかを検出し、それに応じて動作しようとします。

少なくとも、Macintoshを構成して/etc/resolver/companyname.localファイルにsearch_order 1を含める必要がありますこれは、プロキシDNSサーバーの現在のIPアドレスを一覧表示します。ただし、Appleが言うように、これは、DHCPによって割り当てられたDNSサーバーのIPアドレスが変更されるとうまく機能しません。

握る手に…

…これらは、間違った方向に対応するために、単純に徐々に複雑なボッジになっています。 AppleのMarcKrochmalを引用すると、人々があなたの会社のやり方でlocal.を悪用すると、「常に何らかの問題が発生する」と言えます。 (クイック検索でわかるように)2002年以降、以前ではないにしても、間違った方向に進んでいることが知られています。ただしないでください

参考文献

8
JdeBP

私はマックを知らないので本当に助けにはなりませんが、私は賢いお尻の回避策のアイデアを思いつきました:あなたがインターネット上のどこかにセットアップするなら、"somedomain.com DNAME companyname.local"-ステップ2でDNAMEをキャッチします。次に何が起こるかわかりませんが、それでもbonjourにフォールバックするのでしょうか、それともすでにDNSプロセスの途中であるため、DNSに固執する可能性があります。

0
Alex