hostsファイルの設定がちゃんと反映されているか確認する方法です。
Linux系の確認の方法です。Windowsではありません。
ちなみに検証に使用したOSはミラクルLinuxです。
hostsファイルの場所
# ls -l /etc/hosts
-rw-r--r--. 1 root root 236 6月 28 14:28 /etc/hosts
ファイルの場所は「/etc/hosts」です。
hostsファイルの設定
hostsファイルの設定は「IPアドレス ホスト名」で記述します。
# cat /etc/hosts
127.0.0.1 localhost
設定を追加するにはviなどで直接編集します。
# cat /etc/hosts
127.0.0.1 localhost
192.168.0.10 google.co.jp
hosts設定後の確認(nslookup、dig)
hosts設定後に正引き(ドメインからIPを参照)できるか確認する方法です。
nslookupやdigが思いつくかもしれませんが、nslookupやdigはhostsを参照しません。
先ほど「192.168.0.10 google.co.jp」をhostsに追加したので試してみます。
nslookup
# nslookup google.co.jp
Non-authoritative answer:
Name: google.co.jp
Address: 172.217.175.67
Name: google.co.jp
Address: 2404:6800:4004:81e::2003
dig
# dig google.co.jp
google.co.jp. 138 IN A 142.251.222.3
nslookupもdigもDNSに問い合わせに行ってIPを取得しています。
hostsは参照されていません。
pingで確認
一般的に使用される確認方法はpingをすることです。
# ping google.co.jp
PING google.co.jp (192.168.0.10) 56(84) bytes of data.
hostsに設定した「192.168.0.10」にpingを送信しています。
適当に設定したIPなのでpingの応答はありませんが。
ただ、この方法だと相手のPCやサーバにIPパケットを送信することになります。
当然相手にわかります、pingスパムと勘違いされる可能性もあります。
getentで確認
getentで設定を確認することができます。
# getent ahosts google.co.jp
192.168.0.10 STREAM google.co.jp
192.168.0.10 DGRAM
192.168.0.10 RAW
hostsに設定した「192.168.0.10」になっています。
相手のPCやサーバにIPパケットも送りません。
もしipv6も設定していて、ipv4を引きたいときは「ahostsv4」を使用します。
まとめ
開発時に使用したり、一時的に設定したりするhostsの確認方法でした。
永続的に多人数で設定するときは開発用のDNSを構築したほうが無難かも。