Windowsのhostsファイルに記述できるエイリアス数の罠
ローカルの開発環境やら、別サーバーに環境を移すときやらに、お世話になるhostsファイル。
Windows 7以降だと、C:\WINDOWS\system32\drivers\etc\hostsを管理者モードで実行したメモ帳で編集してあげれば良いのですが、ちょっとした罠がありました。
127.0.0.1 exsample.com sub1.exsample.com sub2.exsample.com sub3.exsample.com sub4.exsample.com sub5.exsample.com sub6.exsample.com sub7.exsample.com sub8.exsample.com sub9.exsample.com sub10.exsample.com
という具合に、複数のホスト名を書くと、exsample.comとsub1~sub8まではうまくいきますが、sub9、sub10はうまく名前解決してくれません。
Microsofftの公式ドキュメントでも説明されていました。
原因
Windows XP/Windows Server 2003 以降の OS では、HOSTS ファイルの 1 行に記載できる別名 (エイリアス) の数は、ホスト名 1 つにつき 8 個までとなっています。
また、この制限はソース コード上でハード コードされているため、変更することはできません。
解決方法
1 つの IP アドレスに対して、別名を 9 個以上記載したい場合には、複数行に分けて記載して下さい。
Windows10 でも同様の現象となるようで、特に更新されていないようです。