Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

AWS Route53を設定した後にpingがUnknown hostになったら

症状

% ping 取得したドメインで設定したRoute53のレコード名

ping: cannot resolve 取得したドメインで設定したRoute53のレコード名: Unknown host

解決策

% sudo killall -HUP mDNSResponder

参考記事 : OS X で DNS キャッシュをリセットする

エラーまでの流れ

  1. AWSでドメインを取得し、Aレコードを作成
  2. WebサーバーのIPアドレスと紐付け
  3. 紐付けたWebサーバーにpingで疎通確認
  4. とある理由からAレコード名を変更
  5. 変更したレコード名で再度ping
  6. 上記の症状

解決までに確認したこと

  1. ドメイン名(レコード名)の正誤
  2. 更新したドメイン名でブラウザからアクセスの可否
  3. IPアドレスでのpingの可否
  4. nslookupコマンドが有効

原因

OS X で DNS キャッシュをリセットするによると、

OS X では、DNS サーバで定義されている期間内は、解決済みの DNS クエリのローカルキャッシュが保管されますが、ときには、このキャッシュをすぐにリセットして、DNS サーバに対する再クエリを行わなければならなくなることもあります。たとえば、DNS サーバ上のエントリが最近変更された場合は、ネットワーク管理者またはサーバ管理者として、そうした対応が必要になることがあります。

という記述があることから、今回の場合はDNS上の解決済みクエリのキャッシュが、レコードを変更したために一致しなくなった事が原因だと考えました。新しいドメインでpingを送信しているのだから、新しく名前解決してくれるんじゃないの!?と思ったのですが、どうやらpingコマンドはDNSではなく、mDNSResponderに問い合わせるらしいです。このあたりに関しては、この質疑応答が役に立ちました。DNS Resolution Fails for ping and curl, but not dig

また、同じキーワードで検索を掛けているとこちらの記事にあたり、とても参考になりました。
macでnslookupできるけどpingできない時の対処法

原因については、なんかしっくり来ていないところもあり、表現も正確でない可能性があります。

tokiya_takai
1つのアプリを作るためのコードではなく、必要なところだけを抜粋し、ご覧いただいた皆さんのアプリケーションにも取り入れやすいような記事にするよう心がけています。Ruby on Rails、JavaScript、HTML、CSS、C言語がある程度書けます。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away