tweeeetyのぶろぐ的めも

アウトプットが少なかったダメな自分をアウトプット<br>\(^o^)/

hostsファイルの場所やら編集/設定するメモ(mac、linux、windows)

はじめに

タイトルの通りhostsの編集/設定のメモです。
他の記事でも使いたかったので簡単な自分用メモ程度ですが
他の方の役に立つこともあったりなかったり。。。w

おしながき

  1. hostsとは
  2. 設定してみる&確認方法
  3. hostsの場所(maclinuxwindows)

1. hostsとは

説明

hosts(ホスツ)とは、
TCP/IPを利用するコンピュータにおけるホスト名のデータベースで、
IPアドレスとホスト名の対応を記述したテキストファイルである。
http://ja.wikipedia.org/wiki/Hosts

もっとかんたんに言うと

ホスト名→IPアドレス変換を行うファイル

hostsファイルってどんなん?

macでもlinuxでもwindowsでもhostsと言うファイルがあり、
設定方法(中身)はおおよそ同じです。
置いてあるパス(ディレクトリ)が違ったりします。

中身はこんな感じ

192.168.0.1 www.yahoo.co.jp
※[host名][タブスペース][ipアドレス]の順番で並んでる

hostsイメージ

通常はホスト名www.example.comにアクセスしようとした場合、 DNSサーバにそのホスト名に対するIPアドレスを問い合わせて 見つかればそのIPに対して通信します。

hostsファイルはDNS問い合わせの前に参照され、 ファイル内にwww.example.comIPアドレスの記述があれば その設定を優先して通信します。

イメージだとこんなん

f:id:tweeeety:20141118133126p:plain

2. 設定してみる&確認方法

設定してみますが、macでの操作を例にします。

macでもlinuxでもwinでもやり方はほとんど同じですがファイルの場所が違ったりします。 ファイルの場所は後述します。

まずはやってみる

hostsに設定したホスト名&IPは試すだけであれば存在しなくても大丈夫です。
なんで今回は適当に設定してみます

※ hostsファイルに設定を追記
※ ipとホスト名の間はタブスペースです
# sudo vi /private/etc/hosts
---- vi追記 ----
192.168.111.111 tekitou.co.jp
---------------

※ 設定されたかpingで通信してみる
# ping tekitou.co.jp
PING tekitou.co.jp (192.168.111.111): 56 data bytes
Request timeout for icmp_seq 0

pingってみるとIP192.168.111.111に対して通信しようとしてることがわかります。
当然適当なアドレスなのでtimeoutになってます。

また、古いmacだと再起動が必要との記事もありますが
新しめのmacだと再起動はいらないようです。

1つのipに複数ホスト設定

ホスト名をタブくぎりで列挙するだけです

# sudo vi /private/etc/hosts
---- vi編集 ----
192.168.111.111 tekitou.co.jp  www.tekitou.co.jp  abc.tekitou.co.jp
---------------

※ それぞれにpingってみる
# ping www.tekitou.co.jp
PING tekitou.co.jp (192.168.111.111): 56 data bytes
Request timeout for icmp_seq 0

# ping abc.tekitou.co.jp
PING tekitou.co.jp (192.168.111.111): 56 data bytes
Request timeout for icmp_seq 0

3. hostsの場所(maclinux、win)

hostsファイルの設定のやり方はほぼ同じなので各OSのhostsファイルの場所を簡単にメモ。

mac

/private/etc/hostsにあります。
しかし、/etc/hostsとしてシンボリックリンクが貼られているので
linuxと同様/etc/hostsでも編集可能です。

※ `/`配下を見てみると/etcに/private/etcへのリンクがはられてるのがわかる
# ls -l / | grep private
lrwxr-xr-x@  1 root  wheel       11  6 28 17:28 etc -> private/etc
drwxr-xr-x@  6 root  wheel      204  6 28 17:36 private
linux

linux/etc/hostsです。設定の仕方は同じ。

windows

windowsは少しわかりにくいですが下記にあります

C:\Windows\System32\Drivers\etc\hosts

また、管理者権限で編集する必要があるので
直接ファイルを開くのではなく下記の手順で編集すると良いです。

メモ帳を右クリック > メニューの「管理者として実行」を選択 > ファイルを開くからhostsファイルを選択

まとめ

ってことで内容は全部いまさらな内容ですが、 他の記事で使えるような簡単自分メモでした\(^o^)/