Contents
コンピュータ名とホスト名の違いとは
結論から述べると、Windows におけるコンピュータ名とホスト名の違いは以下のとおりだ。
- コンピュータ名・・・ホスト名とNetBIOS名を総称した呼び方。
- ホスト名・・・TCP/IP の用語。常にコンピュータ名とイコールになる。
- NetBIOS名・・・NetBEUIの用語。コンピュータ名とイコールにならない場合がある。
◆コンピュータ名が15文字(15バイト)以下の場合
- コンピュータ名=ホスト名=NetBIOS名
◆コンピュータ名が16文字(16バイト)以上の場合
- コンピュータ名=ホスト名≠NetBIOS名
もう少し具体的に・・・
Windows でコンピュータ名を設定した経験はあるかと思うが、ホスト名を設定した経験はないのではないだろうか。NetBIOS名も同様だ。
それもそのはず、Windows ではコンピュータ名を設定すると、同じ名前で「ホスト名」と「NetBIOS名」が更新される。
つまり、Windows というシステムにおいて「ホスト名」と「NetBIOS名」の2つの名前が必要だが、それを1つに見せかけるための仕様が「コンピュータ名」ということだ。
コンピュータ名とホスト名、NetBIOS名の確認方法
コンピュータ名の確認方法
コンピュータ名は「システム」から確認することができる。
ホスト名の確認方法
ホスト名は「ipconfig /all」もしくは「hostname」で確認することができる。
NetBIOS名の確認方法
NetBIOS名は[システムのプロパティ]-[コンピューター名/ドメイン名の変更]-「詳細」から確認することができる。もしくは、「nbtstat -n」コマンドで確認可能。
コンピュータ名とホスト名が違うことはあるのか
コンピュータ名とホスト名が異なることは基本的にない。
コンピュータ名とNeBIOS名が違うことはあるのか
コンピュータ名とNetBIOS名が異なることはある。
それは16文字以上のコンピュータ名を設定した場合だ。
例えば、「TURNING-POINT2018」という17文字のコンピュータ名を設定しようとする。
そうすると以下のような警告が表示される。
コンピューターの NetBIOS 名は 15 バイト以内に制限されています。この場合、15文字に相当します。この NetBIOS 名は短縮されて “TURNING-POINT20” になります。これによって、NetBIOS 名の解決時に競合が発生する可能性があります。
「OK」を押下したあと再起動を実施すると、コンピュータ名が「TURNING-POINT2018」に変更されている。
ホスト名も「TURNING-POINT2018」になっている。
しかし、NetBIOS名は「TURNING-POINT20」になっている。
つまり、「コンピュータ名=ホスト名≠NetBIOS名」の状態だ。
ホスト名とNetBIOS名が異なることで何が変わるのか
共有フォルダ
例えば、「コンピュータ名=ホスト名≠NetBIOS名」の状態でフォルダを共有すると、ホスト名とNetBIOS名のどちらで共有リンクが作成されるのか。
実際に共有してみた結果、NetBIOS名である「TURNING-POINT20」で共有リンクが作成された。
同一ネットワーク内の WIndows Server 2016 から共有フォルダにアクセスしてみる。
この際、ホスト名である「TURNING-POINT2018」ではアクセスできないのだろうか。
結果、ホスト名でもアクセスはできた。
Windows の名前解決の優先順位は「ホスト名>NetBIOS名」であるため、ホスト名で名前解決が成功しても何ら不思議ではない。
なお、名前解決の優先順位の詳細はこちらを参照。
名前解決
ホスト名でもNetBIOS名でも名前解決は行われる。
ただし、ホスト名とNetBIOS名では名前解決に使われるプロトコルが異なるため、場合によっては下図のように「ホスト名では名前解決ができるけどNetBIOS名ではできない」「NetBIOS名では名前解決が出来るけどホスト名ではできない」とった状況になることもある。
まとめ
ややこしくなるのでコンピュータ名は15文字以内にしよう!
なお、NetBIOS名やNBT、LLMNRといった言葉がよくわからない人向けに記事を作成したのでぜひ読んでみてほしい。