
私は仕事中、サイトからサイトへと移動しながら、複数のネットワークに接続しますが、これらの LAN が使用してシステムに渡す DNS が異なることに気付きました。「安全な」LAN 上にいる場合は、DNS を信頼できますが、信頼できないサイト (レストランの無料 WiFi サービスなど) を使用しなければならない場合もあります。そのため、システムがどのように設定を更新するのかをよりよく理解したいと思っています。各サイトで、OSX のネットワーク設定ウィンドウにリストされている DNS が変わることに気付きました。そしてもちろん、自宅の LAN にいるときは、使い慣れた DNS が表示されます。自宅にいるときは、常にこれらの DNS を使用するようにしています。
これまで、自宅にいるときは OSX が自動的にネットワークに完全に切り替わると信じていましたが、最近の経験から、完全には切り替わっていないことがわかりました。つまり、DNS タブの DNS サーバー リストの下にあるネットワーク設定にリストされていないにもかかわらず、以前に取得した DNS を保持しているようです。
私は新しい WiFi プリンターをセットアップしているときにこれを発見しました。プリンターのマニュアルにざっと目を通しただけで、パッチ ケーブルを介してプリンターのイーサネットを MacBook のイーサネット ポートに直接接続するだけで十分だとわかりました。プリンターの設定ページにアクセスして、プリンターを WiFi に接続するように設定しました。設定を変更する前に、デフォルトのネットワーク設定情報を印刷しました。プリンターがすでに MacBook からいくつかの情報を取得していたことに驚きました。プリンターのデフォルト ネットワークに MacBook のイーサネットを手動で設定する必要さえなかったことにも驚きました。とにかく、本当に目立った設定の 1 つは、セカンダリ DNS サーバー設定 (IP) を取得していたことです。これは、私が頻繁に使用する LAN の 1 つからよく知っているものです。
私が思いついた唯一の結論は、OSX がフォールバック用に DNS の履歴を保持しているということでしたが、すぐにネットワーク設定をチェックしたところ、AirPort にも Eithernet にもプリンタに割り当てられた DNS サーバーがリストされていないことがわかりました。
システムが現在使用している DNS を確認するためのコマンドライン メソッドはありますか?
OSX は DNS サーバーを使用していると言っていますが、100% 確信するにはどうすればいいのでしょうか? OSX は明らかに IP を保持し、奇妙なことにプリンターに IP を配布しているのでしょうか?
答え1
Mac OS X 10.6.3以降、Appleは従わないシステム環境設定で指定された DNS サーバーのリスト順序ではなく、利用可能な最速の DNS サーバーを決定してそれを使用します。これは、接続しているネットワークを信頼している場合 (Apple はそれを当然のことと見なしていると思います) にはまったく問題ありませんが、それ以外の場合にはセキュリティ上の問題になる可能性があります。
DNS サーバー (および検索ドメイン) の検索順序を確認するには、次のコマンドを実行します。scutil --dns
どのDNSサーバーを使用しているかを確認するには実際に現在使用中たとえばnslookup apple.com
ターミナルから実行します。
さらに、このCNETの記事DNS 検索順序を「厳密な順序」に戻す手順を説明します。
答え2
現在の DNS サーバーは、「システム環境設定」>「ネットワーク」> [現在最もランクの高いアクティブなインターフェイス (「Ethernet」または「AirPort」など) >「詳細...」>「DNS」で確認できます。
同じことが表示されますcat /etc/resolv.conf
(「resolv」に意図的に「e」が付いていないことに注意してください)。
Bonjour は、Wide Area Bonjour も実行している可能性があります。Wide Area Bonjour に使用されているドメインを確認するには、 を実行しdns-sd -F
、ドメインのリストが表示されたら を押します^C
(そうしないと、リストの変更を監視しながら無期限に実行され続けます)。
Mac OS X は、DHCP サーバーを起動しない限り、他のマシンに DNS サーバー アドレスを「提供」しません。DHCP サーバーを起動する唯一の方法は、システム環境設定の「共有」パネルでインターネット共有をオンにすることです。インターネット共有を実行したままにしていた場合、独自の NAT プライベート IP アドレス (192.168.2.1) を DNS サーバー アドレスとして提供し、DNS プロキシを実行している可能性があります。または、NAT パブリック インターフェイス (「上流」インターフェイス、「接続を共有する FROM:」インターフェイス) で使用していた最後の DNS サーバー アドレスを提供していた可能性があります。したがって、たとえば、パブリック Wi-Fi ネットワークに接続していて、AirPort から Ethernet へのインターネット共有を使用して、Ethernet 接続マシンを Mac 経由でインターネットに接続していた場合、表示されていた現象を説明できます。
インターネット共有が有効(チェック)になっていなくて、DHCP サーバーを手動で起動する作業をしていない場合は、Mac がプリンターに DNS サーバー アドレスを渡していない可能性が高くなります。
正確には、プリンターが使用している DNS サーバー アドレスはどれですか? たとえば、プリンターが IPv4 リンク ローカル (169.254.xx) アドレスを割り当てていた場合、DNS ルックアップにプリンター自身 (おそらく Bonjour マルチキャスト DNS) を使用する必要があることを示す方法として、そのフィールドにプリンター自身のアドレスが表示されている可能性があります。