hostsファイル:ユーザーと開発者のための強力なツール
公開: 2020-09-23以前にhostsファイルについて聞いたことがあるかもしれませんが、それが何であるか、または何をするのかわからない場合があります。 この記事では、これを明確にし、ホストファイルとは何か、およびそれがどのように機能するかを正確に説明します。 また、それを使用して達成できることのいくつかの例を見ていきます。 始めましょう!
ホストファイルとは何ですか?
ホストファイルはコンピューター上にあります(MacかWindowsかに関係なく、hostsファイルがあります)。 ホストファイルは「プレーンテキスト」と呼ばれるもので、数十年前に「名前解決」の初期の形式として使用され、初期のインターネットアクティビティがこれらのファイルによってターゲットサーバーに送信されていました。 この使用法は、現在も使用されているドメインネームシステム(またはDNS)の発明に取って代わられました。
今日のインターネットトラフィックは、DNSシステムに依存して「行き先を教えて」います。 ブラウザにWebサイトのアドレスを入力すると、ブラウザはDNSシステムを使用してこのWebサイトをホストしているサーバーの場所を「検索」します。
その要求は、ローカルコンピューターのhostsファイルから始まります。 必要な詳細(つまり、必要なサーバーの場所またはIPアドレス)がそこに見つからない場合、アドレスが見つかるまで、要求は外部DNSサーバーに続行されます。 これにより、ブラウザがWebサイトに接続し、探していたコンテンツを表示できるようになります。 これらはすべてミリ秒単位で発生しますが、これは非常に注目に値します。
上の図をざっと見てください。 ご覧のとおり、コンピューターから送信された要求は、最初にコンピューターのhostsファイルを介してルーティングされます。 ホストファイルにリクエストしたウェブサイトのIPアドレスが保存されている場合は、ブラウザが直接そのファイルに送信されます。 そうでない場合は、ブラウザをDNSサーバーに転送します。DNSサーバーには必要な情報が含まれているはずです。
これを利用して、hostsファイルを編集することで、DNSをバイパスし、ブラウザの使用中に任意のドメインを任意のIPアドレスに解決できると結論付けるのが論理的です。 これを実行する機能には多くの利点があり、これから説明します。
注:hostsファイルとその編集方法を詳しく調べる前に、hostsファイルが悪意のある攻撃の標的になる可能性があることに注意してください。 このため、変更が終了したら、プロパティを「読み取り専用」に変更する価値があります。
ホストファイルの変更
コンピューター上のhostsファイルの変更は非常に簡単で、非常に便利な場合があります。 Windows、Linux、Macでhostsファイルを簡単に変更する方法を見てみましょう。
Windows10でhostsファイルを変更する方法
このファイルは「C:\ Windows \ System32 \ drivers\etc」にあります。
メモ帳などのテキストエディタでhostsファイルを開くと、次のように表示されます(プロンプトが表示されたら、「管理者として実行」を忘れないでください)。
既存のコンテンツの下(上記の例では24行目あたり)に、到達するターゲットIPアドレス、スペース、ドメイン名の順に入力できます。 これはおおよそ次のようになります。
コメントには「#」記号が使用されていることに注意してください。 同じ行の「#」の後に書かれているものはすべて無視されます。 これをラベルとして使用して、hostsファイルの編集にラベルを付けることができます。次に例を示します。
# my router's alias 192.168.1.1 myrouter.com
Linuxディストリビューションでhostsファイルを変更する方法
たとえば、Ubuntuでは、hostsファイルへのフルパスは/ etc/hostsです。 エディターでファイルを開くことができます(この例ではNanoエディターを使用しました)。 プロンプトが表示されたら、sudoパスワードを入力します。
それが完了したら、Windowsの場合と同じように行を追加できます。
MacOSでhostsファイルを変更する方法
MacOSでは、ファイルへのフルパスは/ etc/hostsです。 ターミナルウィンドウを起動したら、テキストエディタを使用してhostsファイルを開きます。
- sudo nano / private / etc / hostsと入力し、Returnキーを押します。
- 要求されたパスワードを入力します。 これで、Nanoエディターでhostsファイルが開きます。
- ホストファイルの元のコンテンツの下に移動し、WindowsおよびLinuxの説明に従ってファイルを編集します。 >ターゲットIPアドレス>スペース>ドメイン名
- Control-Oを押してファイルを保存します。
- 変更が表示されない場合は、>dscacheutil-flushcacheを使用してキャッシュをフラッシュします。
ローカルマシンでhostsファイルを編集する方法を理解したので、これを使用して実行できるいくつかの便利なことを見てみましょう。
ホストファイルを編集する主な理由
ホストファイルを編集する理由はたくさんあります。 以下でそれらのいくつかを実行します。
ウェブサイトの開発をテストするとき
あなたが現在ドメイン「mycompany.com」の下で公開されているクライアントのウェブサイトの新しいバージョンに取り組んでいるWordPress開発者であると仮定します。 ローカルバージョンのWebサイト(コンピューターに保存されている)に変更を加えています。
問題は、コード内でドメイン「mycompany.com」を参照すると、ブラウザがサイトのローカルバージョンではなく、ライブバージョンのサイトに移動することを示しているため、テストすることはほとんど不可能です。行った変更。 この場合、いくつかのオプションがあります。
- 一時ドメインを購入し、開発中のバージョンが配置されているIPをポイントします。
- ライブサイトをステージングサーバーにデプロイします。
- ホストファイルを使用して、「mycompany.com」がローカルで別のIPアドレス/サーバーを一時的に指すようにします。
したがって、一時的なドメインにお金を捨てるのが好きでない限り、この問題の優れた解決策は、hostsファイルを使用して、作業が進行中または予定されている場所にドメインを解決させることです。
これを行うには、作業しているサーバーのドメイン名とIPを入力するだけです(前述のとおり)。 たとえば、IPアドレスが138.201.141.25の場合、hostsファイルを編集して次のようにします。
wwwドメインを追加する場合も、同じことが当てはまります。 これを行うには、次のように2行目を追加します。
または、次のように両方を同じ行に組み合わせます。
また、hostsファイルを使用してローカルファイルを指すと、コンピューターがローカルファイルを直接「要求」し、DNSサーバーからのIPアドレスの要求をスキップして、受信を待機できるため、ブラウジングの速度がわずかに向上することにも注意してください。その応答。
このようにhostsファイルを編集すると、開発者が開発中のWebサイトをテストしたり、DNSサーバーをオーバーライドして、Webサイトやネットワークトラフィックへのアクセスを制御したりするのに役立つ他の種類の作業を行う場合に非常に役立ちます。
Webサイトをブロックする
そこにはたくさんのウェブサイトがありますが、それらの多くは特に快適ではありません。 そのため、これらへのアクセスをブロックすることをお勧めします(たとえば、コンピューターを使用する子供がいる場合)。 これは、特定のWebサイトの要求をローカルホストのIPアドレス(通常は127.0.0.1)にルーティングすることで実現できます。
ただし、次の点を指摘する必要があります。
- アドレスにwwwを含めない限り、HTTPSサイトはブロックされません。
- これらの変更中は、これらの変更が有効になるようにするには、ブラウザのキャッシュをクリアする必要があることに注意してください。
たとえば、www.badwebsite.comというWebサイトへのアクセスをブロックしたいとします。 これを行うには、hostsファイルに次のように入力します。
127.0.0.1 badwebsite.com www.badwebsite.com
この結果、このWebサイトにコンピューターからアクセスできなくなります。
また、hostsファイルを使用してスパイウェア/アドネットワークをブロックすることもできます。 これを行うには、ブロックするすべてのスパイウェアサイトとAd Networksドメイン名のリストを作成し、それらをhostsファイルに追加して、常にマシンを指すIPアドレス127.0.0.1にマッピングします。 そうすると、ブラウザはこれらのドメインに到達できなくなります。
これを行うことの利点の1つは、そのような不要なサイトをブロックした後、既知の悪意のあるサイトにアクセスできなくなるため、ブラウジングがより安全になることです。 また、広告ネットワークサイトから広告をダウンロードするのを待つ必要がなくなるため、ブラウジングを高速化できます。
結論
要約すると、hostsファイルを編集すると、マシン上でローカルにどのドメインがどのIPアドレスに解決されるかを完全に制御できます。 これには、いくつかの可能な用途と利点があります。 制御できることは常に素晴らしいことであり、コンピュータのhostsファイルを回避する方法を知っていると、まさにその…制御が可能になります。 確かに強力なツールです!