NetBIOSとDNSの違いがわからない?仕組みや現状、nbtstatの使い方まで徹底解説

「ネットワークの用語って似たようなものが多くて、違いがよくわからない…」
「NetBIOSとDNSって何が違うの?今でも使われているの?」
「nbtstatコマンドってどうやって使うの?」

この記事では、そんな疑問や悩みを抱える方に向けて、NetBIOSとDNSの違いや、それぞれの仕組みについて分かりやすく解説します。
この記事を読めば、NetBIOSの役割や現在の使われ方、そしてトラブルシューティングに役立つnbtstatコマンドの使い方がしっかりと理解できるはずです。

目次

まずは結論から

  • NetBIOSは、同じネットワーク内(ローカル)でコンピュータ同士が通信するための古い仕組みです。
  • DNSは、インターネット全体でドメイン名(例:google.com)をIPアドレスに変換する現代の主流な仕組みです。
  • 現在のWindows環境では、NetBIOS単体ではなく、TCP/IP上で動く「NetBIOS over TCP/IP(NBT)」としてファイル共有などに使われています。
  • セキュリティ上の理由から、不要な場合はNetBIOSを無効化することが推奨されています。

それでは詳しく見ていきましょう。

NetBIOSとは何か

NetBIOS(ネットバイオス)とは、Network Basic Input/Output Systemの略で、1980年代にIBMとSytek社によって開発された、ネットワーク通信のためのインターフェース(API)です。
簡単に言うと、同じネットワーク(LAN)に繋がっているコンピュータ同士が、お互いを名前で認識して通信するための「共通の言葉」のようなものです。

開発された当初は、数十台程度の小さなネットワークを想定して作られていました。
そのため、ルーターを越えて別のネットワークと通信する機能(ルーティング機能)を持っていませんでした。
これは、同じ部屋の中にいる人とは直接名前を呼んで話せるけれど、別の部屋にいる人には声が届かないのと同じ状態です。

DNSとは何か

DNS(Domain Name System)とは、インターネット上でコンピュータの名前(ドメイン名)とIPアドレスを変換するシステムです。
例えば、「yahoo.co.jp」という人間が覚えやすい名前を、「182.22.59.229」というコンピュータが理解できるIPアドレスに変換してくれます。

DNSは、世界中のサーバーが連携して情報を管理する階層構造を持っています。
そのため、ローカルネットワークだけでなく、インターネットという巨大なネットワークでも効率よく名前解決(名前からIPアドレスを見つけること)ができます。
これは、世界中の住所と電話番号が載っている巨大な電話帳のようなものです。

NetBIOSとDNSの違い

NetBIOSとDNSは、どちらも「コンピュータの名前からIPアドレスを見つける(名前解決)」という役割を持っていますが、使われる範囲や仕組みが大きく異なります。

項目 NetBIOS DNS
主な用途 ローカルネットワーク(LAN)内の通信 インターネット全体の通信
名前の形式 NetBIOS名(最大15文字の単一の名前) FQDN(例:www.example.comのような階層構造)
通信の仕組み 主にブロードキャスト(全員に大声で尋ねる) DNSサーバーへの問い合わせ(電話帳で調べる)
ルーター越え 基本的に不可(NBTやWINSが必要) 可能(世界中どこでも)

NetBIOSは「同じ部署内の内線電話」、DNSは「世界中どこへでもかけられる外線電話」とイメージすると分かりやすいでしょう。

NetBIOS over TCP/IP(NBT)の役割

先ほど「NetBIOSはルーターを越えられない」と説明しましたが、インターネットが普及し、TCP/IPという通信ルールが標準になると、NetBIOSのままでは不便になりました。
そこで登場したのが「NetBIOS over TCP/IP(NBT)」です。

NBTは、古いNetBIOSの通信を、現代のTCP/IPの通信に乗せて運ぶための仕組みです。
これにより、NetBIOSを使ったWindowsのファイル共有やプリンタ共有が、ルーターを越えた別のネットワークでも使えるようになりました。
例えるなら、手紙(NetBIOS)をそのまま届けるのではなく、郵便局の封筒(TCP/IP)に入れて遠くまで届けるような仕組みです。

NetBIOS over TCP/IP(NBT)の仕組みを図解したインフォグラフィック

NetBIOSの現状とセキュリティリスク

かつてはWindowsネットワークに不可欠だったNetBIOSですが、現在ではその役割を終えつつあります。
Windows 2000以降、Active Directory環境ではDNSが標準の名前解決プロトコルとなり、ファイル共有もNetBIOSに依存しない「SMBダイレクトホスト(ポート445番)」が主流になりました。

さらに、NetBIOSにはセキュリティ上のリスクがあります。
NetBIOSの通信(ポート137〜139番)が開いていると、外部からコンピュータの名前や共有フォルダの情報が漏えいする危険性があります。
そのため、インターネットに直接繋がるサーバーや、信頼できないネットワークでは、NetBIOS over TCP/IPを無効化することやDNSでの環境を構築する場合にはNetBIOSを無効化することが推奨されています。

nbtstatコマンドの使い方

ネットワークのトラブルシューティングで、NetBIOSの名前解決がうまくいっているか確認したい時に便利なのが「nbtstat」コマンドです。
コマンドプロンプトを起動して、以下のようによく使うオプションを指定して実行します。

  • nbtstat -n
    自分のパソコンに登録されているNetBIOS名の一覧を表示します。
  • nbtstat -c
    最近通信した他のパソコンのNetBIOS名とIPアドレスの記憶(キャッシュ)を表示します。
  • nbtstat -a [コンピュータ名]
    指定した名前のコンピュータのNetBIOS情報を調べます。
  • nbtstat -A [IPアドレス]
    指定したIPアドレスのコンピュータのNetBIOS情報を調べます。
  • nbtstat -R
    記憶しているNetBIOS名のキャッシュを一度消去(パージ)して、リセットします。

「IPアドレスは分かるけど、パソコンの名前が分からない」といった場合に、nbtstat -A を使うと名前を特定できるので非常に便利です。

まとめ

  • NetBIOSはローカルネットワーク用の古い名前解決の仕組みです。
  • DNSはインターネット全体で使われる現代の主流な名前解決システムです。
  • NetBIOS over TCP/IP(NBT)は、古いNetBIOSを現代のTCP/IP上で動かすための技術です。
  • 現在はDNSが主流であり、セキュリティの観点から不要なNetBIOSは無効化が推奨されます。
  • トラブル時は「nbtstat」コマンドでNetBIOSの通信状態を確認できます。

ネットワークの仕組みは時代とともに進化していますが、古い技術の背景を知ることで、現在の仕組みがなぜそうなっているのかがより深く理解できます。
ご自身の環境でNetBIOSが不要な場合は、セキュリティ向上のために無効化を検討してみてください。

  • URLをコピーしました!
目次