コンピュータファイル hosts は、ホスト名をIP アドレスにマッピングするオペレーティングシステムファイルです。これはプレーンテキストファイルです。元々、HOSTS.TXT というファイルが手動で管理され、ARPANET会員向けにスタンフォード研究所によってファイル共有を介して提供されていました。このファイルには、会員組織によって提供されたホストのホスト名とアドレスが含まれていました。1983年に初めて説明され、1984 年に実装されたドメインネームシステム[1]は、公開プロセスを自動化し、急速に成長するネットワークで瞬時に動的なホスト名解決を提供しました。現代のオペレーティングシステムでは、hosts ファイルは代替の名前解決メカニズムのままであり、多くの場合、ネームサービススイッチなどの機能の一部として、主要な方法またはフォールバック方法として構成可能です。
目的
ホスト ファイルは、コンピュータ ネットワーク内のネットワーク ノードのアドレス指定を支援するシステム機能の 1 つです。これは、オペレーティング システムのインターネット プロトコル(IP) 実装の共通部分であり、人間が理解しやすいホスト名を、IP ネットワーク内のホストを識別して位置を特定するIP アドレスと呼ばれる数値プロトコル アドレスに変換する機能を果たします。
一部のオペレーティングシステムでは、hostsファイルの内容がドメインネームシステム(DNS)などの他の名前解決方法よりも優先的に使用されますが、多くのシステムでは、カスタマイズを提供するために、 LinuxおよびUnixのnsswitch.confなどの名前サービススイッチを実装しています。リモートDNSリゾルバとは異なり、hostsファイルはローカルコンピュータの管理者の直接管理下にあります。[2]
ファイルの内容
hosts ファイルには、最初のテキスト フィールドにIPアドレス、その後に 1 つ以上のホスト名が続くテキスト行が含まれます。[3]ホスト名は IP にマッピングされますが、その逆ではありません。各フィールドは空白で区切られます。歴史的な理由からタブが好まれることが多いですが、スペースも使用できます。コメント行を含めることができます。コメント行は、行の先頭に八角形(#) を付けて示します。ファイル内の完全に空白の行は無視されます。 [4]たとえば、一般的な hosts ファイルには次のような内容が含まれます。
127.0.0.1 ローカルホスト ループバック ::1 ローカルホスト
この例には、システムのループバック アドレスとそのホスト名のエントリのみが含まれています。これは、hosts ファイルの一般的なデフォルト コンテンツです。この例では、IP アドレスに複数のホスト名 ( localhostとloopback ) がある場合があり、ホスト名はそれぞれ 1 行目と 2 行目に示すように、 IPv4とIPv6 の両方のIP アドレス にマップされる可能性があることを示しています。
ファイルシステム内の場所
ファイル システム階層内の hosts ファイルの場所は、オペレーティング システムによって異なります。通常は、拡張子なしの hostsという名前になります。
歴史
インターネットの前身であるARPANETには、分散ホスト名データベースがありませんでした。各ネットワーク ノードは、必要に応じてネットワーク ノードの独自のマップを維持し、システムのユーザーが覚えやすい名前を割り当てました。ネットワーク内の特定のノードへのすべての参照が同じ名前を使用していることを確認する方法はなく、別のコンピューターの hosts ファイルを読み取って自動的にコピーを取得する方法もありませんでした。
ARPANET は規模が小さかったため、正確なホスト ファイルを維持するための管理オーバーヘッドは小さく抑えられました。ネットワーク ノードは通常、1 つのアドレスを持ち、複数の名前を持つことができます。しかし、ローカル エリアTCP/IPコンピュータ ネットワークが普及するにつれて、ネットワークとネットワーク ノードがシステムに追加される頻度が増し、ホスト ファイルの維持がシステム管理者にとって大きな負担になりました。
RFC 952 のHOSTS.TXTファイルのフォーマット仕様などの標準化の取り組みや、RFC 953 で説明されているホスト名サーバーなどの分散プロトコルは、これらの問題の解決に役立ちましたが、hosts ファイルの集中化とモノリシックな性質により、最終的には分散型ドメイン ネーム システム(DNS) の作成が必要になりました。
いくつかの古いシステムには、ネットワーク名を含むhostsファイルに似たnetworksというファイルが存在します。[13]
拡張アプリケーション
ホスト名を解決する機能において、hosts ファイルは、ローカル システムで使用する 任意のホスト名またはドメイン名を定義するために使用できます。
- ローカルドメインのリダイレクト
- ウェブサービスやイントラネットの開発者や管理者の中には、会社の内部リソースにアクセスしたり、開発中のローカルウェブサイトをテストしたりするなど、さまざまな目的でLAN内にローカル定義ドメインを定義する人もいます。[14]
- インターネットリソースのブロック
- ホストファイルのエントリは、オンライン広告や、スパイウェア、アドウェア、その他のマルウェアを含む既知の悪意のあるリソースやサーバーのドメインをブロックするために使用できます。これは、それらのサイトのエントリを追加して、存在しない別のアドレスまたはローカルマシンなどの無害な宛先にリクエストをリダイレクトすることで実現できます。[15] 市販のソフトウェアアプリケーションを使用して、既知の望ましくないインターネットリソースのエントリをホストファイルに自動的に入力できます。さらに、迷惑なサーバーをブロックするユーザー作成のホストファイルが公開されています。[16] [17]
- フラヴィアは、反広告のページの中で、これらのファイルを「巻物」、「貴重な」、「強力な」などと表現しており、このホストの使用法が初めて発表された。[17]
- ソフトウェアの著作権侵害
- 一部の海賊版ソフトウェアは、ソフトウェアが発行元のアクティベーションサーバーに接続するのを防ぐために、修正されたhostsファイルに依存していますが、アクティベーションサーバーは汎用のhostsファイルに表示されることもあります。[18]
セキュリティ問題
hostsファイルは、悪意のあるソフトウェアの攻撃経路となる可能性があります。このファイルは、たとえば、アドウェア、コンピュータウイルス、またはトロイの木馬ソフトウェアによって変更され、意図した宛先から悪意のあるコンテンツや望ましくないコンテンツをホストするサイトにトラフィックをリダイレクトする可能性があります。[19] 広く蔓延したコンピュータワーム Mydoom.Bは、ユーザーがコンピュータセキュリティやウイルス対策ソフトウェアに関するサイトにアクセスするのをブロックし、侵入したコンピュータからMicrosoft Windows Update Webサイトへのアクセスにも影響を与えました。
場合によっては、マルウェアがホストファイルの読み込みを担当するライブラリを変更し、自由に制御できるファイルにリダイレクトすることもあります。[20]
参照
- DNSBL、DNSベースのブラックホールリスト
- コンテンツ管理ソフトウェア
- 広告フィルタリング
参考文献
- ^ Internet Systems Consortium. 「最も広く使用されているネームサーバーソフトウェア: BIND」。BIND の歴史。2017年 7 月 1 日閲覧。
- ^ シスコ ネットワーキング アカデミー プログラム: 初年度コンパニオン ガイド(第 2 版)。シスコ システムズ。2002 年。676 ページ。ISBN 1-58713-025-4。
- ^ 侵入テスト:サバイバルガイド。Packt Publishing Ltd. 2017年1月18日。ISBN 978-1-78728-988-8。
- ^ 「Hosts(5) - Linuxマニュアルページ」。
- ^ 「Linux ネットワーク管理者ガイド: ホストおよびネットワーク ファイルの作成」。2010年5 月 16 日閲覧。
- ^ 「Hosts ファイル」。2011 年 7 月 20 日時点のオリジナルよりアーカイブ。2011 年8 月 10 日閲覧。
- ^ 「Microsoft KB Q314053: Windows XP の TCP/IP および NBT 構成パラメータ」。2010 年8 月 28 日閲覧。
- ^ 「Microsoft KB 972034 リビジョン 2.0: 既定の hosts ファイル」 。2010年8 月 28 日閲覧。
- ^ ab 「Mac OS X: ローカルホストファイルにホストを追加する方法」 。2010年8 月 28 日閲覧。
- ^ 「Haiku/BeOS Tip Server」。2013年1月28日時点のオリジナルよりアーカイブ。2012年11月30日閲覧。
- ^ 「Haiku UserGuide:Network」。2019年1月17日閲覧。
- ^ RISC OS 6.14
- ^ 「ホストファイルとネットワークファイルの書き込み」。tldp.org 。2021年3月2日閲覧。
- ^ 「Hosts ファイルによるビルド / テスト」。オハイオ州立大学 Web ホスティング。OCIO。2015 年 10 月 9 日。2018 年8 月 5 日に閲覧。
- ^ Gordon; -Tx. 「Gordon と -Tx による Gordon の hosts ファイルの使用に関する説明」。Web Searchlores。+Fravia。2018 年 12 月 26 日時点のオリジナルよりアーカイブ。2018年8 月 5 日閲覧。
- ^ Hofstetter, Constantin. 「/etc/hosts で衝撃的なサイトなどをブロックする」GitHub . 2018 年8 月 5 日閲覧。
- ^ ab Vianello, Francesco "Fravia". "Antiadvertisement Lab". Web Searchlores . +Fravia. 2009年5月15日時点のオリジナルよりアーカイブ。2018年8月5日閲覧。
- ^ "yhosts". GitHub . 2021年6月21日閲覧。
- ^ 「Trojan.Qhosts の削除」。Symantec。2007年10 月 21 日時点のオリジナルよりアーカイブ。2010 年5 月 16 日閲覧。
- ^ Arntz, Pieter (2016年9月21日). 「Hostsファイルハイジャック」. Malwarebytes Labs . 2018年8月5日閲覧。
外部リンク
- ウィンドウズ
- ホストファイルの編集に関する初心者向けガイド
- Microsoft TCP/IP ホスト名解決順序
- Windows がホスト ファイルでリダイレクトしない Microsoft ドメインのリスト
- マック
- Mac OS X 10.2 以降で HOSTS ファイルを使用して不要なドメインをブロックする方法
- リナックス
- Linux で /etc/hosts ファイルを使用して不要な広告をブロックする方法
