予約していないドメインでサーバーにアクセスする方法

データベースを移行したものの、名前解決が実装できていなかったり、ホットスワップを実装しておらず検証がスムーズにできないといった問題ありませんか?

そんなときは、DNS解決をローカル環境側で疑似的に行ってしまえばよいのです。より正確には、ローカルでIPアドレスと文字列を紐づけることで、DNS解決を回避してしまいます。

理論

ホスト名とIPアドレスをマッピングすることで、特定のドメイン名(ホスト名)を特定のIPアドレスに解決(接続)させることができます。

これは、http:/localhostとブラウザに打ち込むと、localhostというグローバルなドメインに飛ぶのではなく、127.0.0.1というループバックアドレスという自分自身を指すIPアドレスに繋がります。

実際、Windowsのhostsファイルには以下がデフォルトで記述されています。

...
# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost
...

やり方

環境

Windows

手順

  1. ファイルエクスプローラーを開き、左のナビゲーションから、PCWindows(C:)WindowsSystem32driversetcとフォルダをクリックしていってください。

  2. etcフォルダの中にあるhosts右クリックして、プログラムから開くをクリックしてください。

  3. そこから、Visual Studio CodeやNotepad++などのエディタで開いてください。

    以下のフォーマットで書くことで、DNS解決を回避できます。

54.xxx.xxx.xxx yourdomain.jp
  1. ブラウザでhttp://yourdomain.jpと入力すると、先ほど設定したIPアドレス54.xxx.xxx.xxxに接続されます。

まとめ

ローカルでIPアドレスとホスト名を紐づけることで、DNS解決を回避しました。

これは、例えばデータベースを移行したもののドメインの紐づけなどを行っておらず、しかし接続テストを行いたい場合などに非常に効果的です。

今後もtips的なものを投稿していきますので、弊社のブログをサーフィンしてください!

Last modified: 2023-06-28

Author