Apple の脅威の通知と金銭目当てのスパイウェアへの対策について

しばらく返答が寄せられていないようです。 再度ディスカッションを開始するには、新たに質問してください。

DNSで正引き名前解決が出来ない

Snow Leopard ServerをMac miniにクリーンインストールしました。インストール後の設定の最後の方に出てくる選択画面では「詳細設定」(?)を選択し、全くサービスをオンにしない状態(ただしDNSは自動的にオンになりますが)で設定を完了しました。


サーバーが起動し、改めてサーバ管理でDNSの設定を行おうと「コンピュータ(A)を追加」でLAN内のコンピュータをそれぞれ追加して行きました。しかしLAN内のクライアントからPING送信すると、インストール後の設定で登録されたプライマリーゾーンのネームサーバはしっかり正引きでPINGが通るのですが、その他に手動で追加したLAN内のクライアントコンピュータすべてに正引きでPINGが通りません。逆引きは問題なく通るのですが、なんででしょう?このためだけに何度もインストールをやりなおしてみているのですが、全く駄目です。


ルータにはTime Capsuleを使用しており、インストール後の設定中に「AirMacマネージメント」をオンにしているのでTime Capsule側のDHCPでクライアントにはMac miniのDNSを参照するようになっています。ネームサーバ以外手動で追加したAレコードが正引きPING/Lookupがダメな理由はどこにあるのでしょうか?

投稿日 2009/09/09 00:09

返信
返信: 17

2009/09/09 02:34 よっしー への返信

正引きのPING、逆引のPINGという意味がちょっと・・・ですが、「逆引でPING」というのが「IPアドレスを指定したPING」という意味ならば、これはDNSサーバには一切関係がありません。指定したマシンに直接PINGを飛ばすわけですから、そのマシンが起動していればDNSの有無にかかわらず必ずPINGは通ります。


よって、bind自体が全く機能していないような感じに見えますね。設定終了後にDNSサービスを再起動していますか?


それと、サーバ(DNS)の設定が終わった時点で、最上流(ルータ)から順番にサーバも含めてすべてのマシンを再起動してみてください。


もひとつ、Aレコードでクライアントマシンを指定しているようですから、各マシンに固定IPを(手動で)振らねければなりませんが、その点は大丈夫ですか?

2009/09/09 10:12 M3CSL への返信

M3CSLさん


早速のレスありがとうございます。


正引きのPING、逆引のPINGという意味がちょっと・・・ですが、


なんか書き方がちょっと悪かったみたいですね。すみませんでした。もう少し具体的に書きます。


例えばネームサーバを仮に「ns.xxx.com」(IPは192.168.1.200)とします。そしてクライアントを「imac.xxx.com」(IPは192.168.1.2)としてネームサーバにAレコードを登録しています。ルータにはTime Capsuleを使っておりDHCPサーバが起動しています。クライアントのシステム環境設定>ネットワーク>Ethernet>DNSサーバには192.168.1.200が登録されているので、名前解決には必ずOS X Serverのネームサーバ(DNS)を参照している状態です。


「PING」と書くと仰る通りに「指定したマシンが起動しているかどうか」にも関わってきますから、今回は「Lookup」で説明させて頂きますね。


このクライアントからネットワークユーティリティを使用して「ns.xxx.com」のIPを調べてみます。するとまずLAN内ネームサーバ(この場合は192.168.1.200自身)に問い合わせに行き、問題なく「192.168.1.200」と答えが返ってくるのですが、「imac.xxx.com」を調べるとLAN内ネームサーバではなく全然違う外部へ問い合わせに行ってしまい、答えが返ってきません。しかし逆引きの場合状況が変わって「192.168.1.2」を調べるとちゃんとLAN内ネームサーバが名前解決をしてくれて「imac.xxx.com」と返ってくるのです。Aレコードとして登録してあるにも関わらず、なぜか正引きの時だけこのような状態になってしまうのです。


試しにバックアップから戻してサーバを10.5.8にしてみたところ、全く問題なく正引き名前解決が出来ます。設定が何か間違っているのでしょうか?確かに10.6のDNSではユーザインターフェイスに若干の変更がありますが、大して変わっていないと思うんですけどね...。ちなみにクライアントは10.6です。しかし10.5.7でも同症状。

2009/09/09 12:58 よっしー への返信

自分は10.4サーバを管理しているので、的はずれだったらすみません。


このような場合、通常は内部用DNSと外部用DNSの2つのゾーンを設定してそれぞれゾーンファイルを作るのではないでしょうか?


NATをかましているのかどうか文面からは分かりませんが、基本的にサーバはグローバルIPで動いていて、外部からのアクセスも受けるわけですよね。


でしたら、グローバルなゾーンファイルとは別に、もう1つ内部用の192.168.1.xxxのゾーンを追加してローカルのゾーンファイルを作ってみてはいかがでしょう?

2009/09/09 14:07 よっしー への返信

Aレコードを登録するときに、FQDNで登録されていますか?

imac.xxx.comではなくて、imac.xxx.com. です。最後の「.」ドットが重要です。


最後のドットがないと、FQDNつまり、完全修飾ドメインにならずに、上位のドメインがあるかと思いルート(.)に検索に行ってしまいます。

一度、確認してみてはいかがでしょう?

2009/09/09 14:57 M3CSL への返信

実はこのサーバ、Mac miniで動かしていると言うことで自宅サーバなんです。コンフィギュレーションは:


光回線終端装置

|

|

|

Time Capsule (NAT, DHCPオン)

| |

| |

| |

OS X Server iMac(クライアント)


実際にはクライアントがあと2台あるのですが、現在のテスト環境はこんな感じです。ですので、OS X Server自体はLAN内の名前解決しかしないようになっているはずなんです。グローバルIPが振り当てられているのは上記からも分かるようにTime Capsuleです。ここからDHCPを使って192.168.1.2〜192.168.1.200までプライベートIPを使用しています。しかしTime CapsuleはDNSサーバの機能は持っていないので、OS X Serverでその役割をさせているんです。実際にはiMacの他にMacBookとPoweMac G4があり、それぞれmacbook.xxx.com、g4.xxx.comと言う感じでAレコードを登録してあります。ゾーンファイルもローカルのみです。クライアントのメニューバー、移動>サーバへ接続でIPではなく、これらの名前を使ってファイル共有をしたい、と言う感じなんですが、なにぶんLookupでIPが返ってこないので見つけられません。10.5.8の時は全く問題なかったんですが...。

2009/09/09 15:03 Hiroki への返信

そうですね。書き忘れていました。FQDNで登録しています。最後のドットも必ずいれています。すると自動的に右横の「完全修飾名」のチェックボックスにチェックが入りますよね。


10.5の時と設定は全く同じはずなのに、なんでなんでしょう?一度Time Machineから10.5.8を戻して、動作確認した後にクリーンインストールしたら上手くいくのかなぁ?でもやっぱりメジャーアップグレードの時はクリーンインストールがしたくて、ハードディスクを全消ししてるんですが...。みなさんはサーバのアップグレードの場合、上書きアップグレードしているんでしょうか?

2009/09/09 15:46 よっしー への返信

では、imac.xxx.comのマシンで、ターミナルを起動して頂き、

dig ns.xxx.com

というコマンドを叩いて頂けますか?

たぶんこれで、imac.xxx.comが本当にns.xxx.comをネームサーバとして設定されているか、が解ると思います。


ns.xxx.comではDNSサーバの設定中のログ情報をデバッグにして頂いて、どの様なメッセージが表示されるかを確認してください。


これで、設定が悪いか、物理的なネットワークが原因かが大まかに解ると思いますよ。


蛇足ですが、

imac.xxx.comのターミナルで、

ping ns.xxx.com

ping 192.168.1.200

との表示のちがいも見てもらえると何か解るかもしれません。

2009/09/09 21:49 Hiroki への返信

クライアントであるiMacから早速やってみました。dig ns.xxx.comコマンドで以下のような結果が出ました。


; <<>> DiG 9.6.0-APPLE-P2 <<>> ns.xxx.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8628

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0


;; QUESTION SECTION:

;ns.xxx.com.INA


;; ANSWER SECTION:

ns.xxx.com.10800INA192.168.1.200


;; AUTHORITY SECTION:

ns.xxx.com.10800INNSns.xxx.com.


;; Query time: 1 msec

;; SERVER: 192.168.1.200#53(192.168.1.200)

;; WHEN: Wed Sep 9 21:33:10 2009

;; MSG SIZE rcvd: 64

ログは確認していないのですが、同じコマンドでdig imac.xxx.comでやると:

; <<>> DiG 9.6.0-APPLE-P2 <<>> imac.xxx.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56658

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 13

;; QUESTION SECTION:

;imac.xxx.com.INA

;; ANSWER SECTION:

imac.xxx.com.120INA114.149.155.36

;; AUTHORITY SECTION:

.302906INNSD.ROOT-SERVERS.NET.
.302906INNSC.ROOT-SERVERS.NET.
.302906INNSL.ROOT-SERVERS.NET.
.302906INNSG.ROOT-SERVERS.NET.
.302906INNSJ.ROOT-SERVERS.NET.
.302906INNSA.ROOT-SERVERS.NET.
.302906INNSK.ROOT-SERVERS.NET.
.302906INNSE.ROOT-SERVERS.NET.
.302906INNSF.ROOT-SERVERS.NET.
.302906INNSB.ROOT-SERVERS.NET.
.302906INNSH.ROOT-SERVERS.NET.
.302906INNSI.ROOT-SERVERS.NET.
.302906INNSM.ROOT-SERVERS.NET.

;; ADDITIONAL SECTION:

A.ROOT-SERVERS.NET.308049INA198.41.0.4
A.ROOT-SERVERS.NET.308838INAAAA2001:503:ba3e::2:30
B.ROOT-SERVERS.NET.308057INA192.228.79.201
C.ROOT-SERVERS.NET.470195INA192.33.4.12
D.ROOT-SERVERS.NET.308082INA128.8.10.90
E.ROOT-SERVERS.NET.470134INA192.203.230.10
F.ROOT-SERVERS.NET.308101INA192.5.5.241
F.ROOT-SERVERS.NET.308780INAAAA2001:500:2f::f
G.ROOT-SERVERS.NET.308082INA192.112.36.4
H.ROOT-SERVERS.NET.470138INA128.63.2.53
H.ROOT-SERVERS.NET.471068INAAAA2001:500:1::803f:235
I.ROOT-SERVERS.NET.308203INA192.36.148.17
J.ROOT-SERVERS.NET.308098INA192.58.128.30

;; Query time: 153 msec

;; SERVER: 192.168.1.200#53(192.168.1.200)

;; WHEN: Wed Sep 9 21:40:59 2009

;; MSG SIZE rcvd: 507

このような感じでimac.xxx.comはDNSを参照していない感じです。

pingの場合も同様で、ns.xxx.comではちゃんと通っていますがimac.xxx.comでは:

Request timeout for icmp_seq 0

Request timeout for icmp_seq 1

Request timeout for icmp_seq 2

Request timeout for icmp_seq 3

Request timeout for icmp_seq 4

Request timeout for icmp_seq 5

こんな風に出てきてしまいます。なんでns.xxx.comとimac.xxx.comとではこんなに違うんでしょうか?

2009/09/09 22:20 よっしー への返信

ns.xxx.com上では、"dig ns.xxx.com" を

;; Query time: 1 msec

;; SERVER: 192.168.1.200#53(192.168.1.200)

となっているので、ちゃんと、自分自身で処理して回答を返しておるので正常です。


次のimac.xxx.com上で "dig imac.xxx.com" では、

imac.xxx.com. 120 IN A 114.149.155.36

...

;; Query time: 153 msec

;; SERVER: 192.168.1.200#53(192.168.1.200)

となってますね。やはり、ns.xxx.comの設定がらみのようです。

imac.xxx.comはちゃんと ns.xxx.com から返事をもらっているようです。

しかし、ns.xxx.comはimac.xxx.comをきちんと名前解決したようですが、IPアドレスが192.168.1.2ではなくて、114.149.155.36であると認識しているようです。

つまり、ns.xxx.comは、imac.xxx.comからの要求を「xxx.com. ドメインは私じゃ解決できないから、上位のネームサーバに聞こう!」として、実際存在するインターネット上のimac.xxx.comのアドレスを上位サーバ(ここではROOT)から得たのでそのアドレスを返したわけです。


imac.xxx.com上で "dig ns.xxx.com" をやっても同じですよね。(^_^)


xxx.comはよっしーさんが取得されているドメイン名ではないですよね。(^_^)


サーバ管理のDNSで詳細設定で設定している再帰クエリーを受け付けるIPアドレは何を設定されていますか?

それに、もしフォワーダIPアドレスを設定しているなら教えてください。


##本当は、/var/named/にあるゾーンファイルを見せて頂けると良いのですが、本題はサーバ管理を使って設定することですので。。(^^;

2009/09/09 22:47 Hiroki への返信

imac.xxx.com上で "dig ns.xxx.com" をやっても同じですよね。(^_^)

はい、実はこのコマンドはクライアントであるiMacからのみ行いました。



xxx.comはよっしーさんが取得されているドメイン名ではないですよね。(^_^)

そうですね。実際のドメインは全く別のものです。


サーバ管理のDNSで詳細設定で設定している再帰クエリーを受け付けるIPアドレは何を設定されていますか?

それに、もしフォワーダIPアドレスを設定しているなら教えてください。

「サーバ管理>DNS>設定>次のネットワークからの再起クエリーを受け付ける:」では「localnets」となっています。実はお恥ずかしいのですが、ここに入るべきものがよく分からないんです。問題が解決しないので何度もOSを再インストールをしたのですが、全くいじっていないのにデフォルトで時々「localhost」となっていたり、現在のように「localnets」になっていたり、その両方になっていたりもするんです。


あと「フォワーダIPアドレス」は「221.113.139.138」と「61.207.11.154」とこれも自動的に入っているのですが、Time Capsuleの「PPPoE」にある「DNSサーバ」に入っているものと同じなのでISPのDNSサーバのIPかと思われます。

2009/09/09 23:01 よっしー への返信

「サーバ管理>DNS>設定>次のネットワークからの再起クエリーを受け付ける:」では「localnets」となっています。

このlocalnetsが怪しいですね。(^_^)

ここに、192.168.1.2を追加してみてくれませんか?

それにより、192.168.1.2 つまり、imac.xxx.comからのクエリーを要求受け付けるようになります。


DNSのログファイルのレベルをデバックにすろと、クライアントから要求されている時の振る舞いが、解るので楽しいですよ。


これで、直らなければ、設定ファイル(/var/named/**)などを見ないと何とも言えませんね。。。(^_^)

2009/09/13 10:48 よっしー への返信

みなさん、大変お世話になりました。自己解決したので報告させて頂きます。


結果的に言うと「バグ」?なんでしょうか?なんか自分自身の設定ミスではないことが判明しました。


まずクリーンインストール時、Macが再起動すると「設定」を行う画面になります。その際に「ネットワーク名」と言うセクションがやってきます。そこには「ネットワーク上のほかのコンピュータがこのサーバを識別するために使用する名前を入力して下さい。」と書かれており、「プライマリDNS名」と「コンピュータ名」を入れないと行けません。そこで僕は以下のように入れました。


プライマリDNS名:ns.xxx.com

コンピュータ名:xxx


「続ける」のボタンを押し、「詳細設定」で「手動で設定する」を選んでこの段階ではプリセットで組まれているサービスを一切動かさずに「設定」を終了します。しかし「DNS」だけは切ることが出来ないのでそのままにしました。


「設定」が終了し、ログインの画面が出て来てログインします。


「サーバ管理」を開いて先ほど設定した「DNS」を「DNS」>「ゾーン」を見ると上下2つに分かれたセクションが表示され、上には「名前」「タイプ」「値」なんかが並んでいます。そこにはそれぞれ以下のような設定が自動的に入っていました。



名前 タイプ 値

▼200.1.168.192.in-addr.arpa. 逆引きゾーン -

192.168.1.200 逆引きマッピング ns.xxx.com.

▼ns.xxx.com. プライマリゾーン -

ns.xxx.com. コンピュータ 192.168.1.200


ここで▼ns.xxx.comを選択すると下のセクションには下記のような設定が自動的に入っていました。


プライマリゾーン名:ns.xxx.com.

管理者のメール:

ネームサーバ: ゾーン ネームサーバホスト名

ns.xxx.com. ns.xxx.com.


ここで疑わしい「プライマリゾーン名」と「ゾーン」なんです。僕が最初の「ネットワーク名」で入力したのは「プライマリDNS名」(ネームサーバホスト名)で、「ゾーン名」を入れたわけではありません。しかしMacが起動して「DNS」を見てみると「プライマリゾーン名」と「ソーン」には「ns.xxx.com.」と入っています。そして設定を手動で以下のように書き換えました。


プライマリゾーン名:xxx.com.

管理者のメール:

ネームサーバ: ゾーン ネームサーバホスト名

xxx.com. ns.xxx.com.


以上でこのゾーンに「imac.xxx.com.」を追加した時にちゃんとLookupで「192.168.1.2」と正引き出来るようになりました!これに気づかない時は一番最初に登録したネームサーバの「ns.xxx.com.」しか正引き出来なかったんです。なんでネームサーバ名がゾーン名として自動的に使用されてしまうのかは謎です。仕様?それともバグ?


あとゾーンにコンピュータを追加した時、下のようになってちょっと気持ち悪いです。


名前 タイプ 値

▼1.1.168.192.in-addr.arpa. 逆引きゾーン -

192.168.1.2 逆引きマッピング imac.xxx.com.

▼200.1.168.192.in-addr.arpa. 逆引きゾーン -

192.168.1.200 逆引きマッピング ns.xxx.com.

▼xxx.com. プライマリゾーン -

ns.xxx.com. コンピュータ 192.168.1.200

imac.xxx.com. コンピュータ 192.168.1.2


▼xxx.com.の下のns.xxx.com.をクリックしてIPアドレスを一度192.168.1.201に変えると下のように変化するので↓


名前 タイプ 値

▼1.1.168.192.in-addr.arpa. 逆引きゾーン -

192.168.1.2 逆引きマッピング imac.xxx.com.

192.168.1.201 逆引きマッピング ns.xxx.com.

▼xxx.com. プライマリゾーン -

ns.xxx.com. コンピュータ 192.168.1.200

imac.xxx.com. コンピュータ 192.168.1.2


最終的にIPを戻して↓


名前 タイプ 値

▼1.1.168.192.in-addr.arpa. 逆引きゾーン -

192.168.1.2 逆引きマッピング imac.xxx.com.

192.168.1.200 逆引きマッピング ns.xxx.com.

▼xxx.com. プライマリゾーン -

ns.xxx.com. コンピュータ 192.168.1.200

imac.xxx.com. コンピュータ 192.168.1.2


以上完了です!いやぁ〜、本当に疲れました。もうこれにたどり着くまで20回くらいクリーンインストールしましたよ...😟 10.6.1にしても変わりません。このこのパターンは僕だけかもしれませんが、クリーンインストールで同様の設定に悩まれてる方の参考になればと思い、また自分の記録のためにも書きました。10.5の時はインストール時の設定で「DNS」の設定みたいなのがありましたが、結局「サーバ管理」で手動で設定しなくちゃならなかったので、こんな問題には当たりませんでしたが...。


あと余談ですがOpen Directoryを「スタンドアロン」から「マスター」に変更した時、かなりの確率で「失敗しました」と出てしまいます。これはまた別にスレッドを立てた方がよさそうですね。なんかクライアント版に比べてサーバ版の不安定さにちょっとストレスが溜まってしまいました...😢

DNSで正引き名前解決が出来ない

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple ID を使ってご参加ください。