Bonjourとは?Appleのゼロコンフィグネットワーキング技術の仕組みと活用法
Bonjour(ボンジュール)は、Appleが開発したゼロコンフィギュレーション(自動設定)ネットワーキング技術です。この技術により、パソコン、モバイルデバイス、プリンターなどの機器が、通信プロトコルを通じてネットワーク上で互いを自動的に検出し、接続できるようになります。ファイル共有やネットワークプリンターのセットアップといった手間のかかる作業を簡素化し、時間を大幅に節約できます。Bonjourはインターネットプロトコル(IP)をベースとしているため、有線・無線のどちらのネットワーク環境でも利用可能です。
本記事の情報は、macOS Catalina(10.15)からOS X Lion(10.7)までのMac、iPhone、iPad、Apple TV、さらにWindows 7からWindows 10までのPCに適用されます。また、多くのプリンターにもBonjour技術が搭載されています。
Bonjourは独立したアプリケーションではありません。アプリケーション、コンピューターのOS、iOSモバイルデバイスなど、さまざまな製品で利用されるネットワーキング技術の集合体であり、バックグラウンドで静かに動作し、すべてのMacでデフォルトで有効になっています。たとえば、iTunesはBonjourを利用して、同じネットワーク上でiTunesが稼働している他のコンピューターを検出し、共有メディアライブラリを管理します。
Bonjourの主な機能
Bonjourは、ネットワーク上の共有リソースを「サービス」という単位で管理します。リソースがオンラインになったり、オフラインになったり、IPアドレスが変更されたりしても、その所在を自動的に検出・追跡し、その情報をネットワークアプリケーションへ提供することで、ユーザーがスムーズにリソースへアクセスできるようにします。
ゼロコンフィギュレーションネットワーキング(zeroconf)の実装として、Bonjourは次の3つの中核的な検出技術をサポートしています。
- アドレス割り当て:Bonjourはリンクローカルアドレッシング方式を採用し、DHCP(Dynamic Host Configuration Protocol)なしでローカルクライアントに自動的にIPアドレスを割り当てます。IPv6と従来のIPv4の両方に対応しており、IPv4では169.254.0.0のプライベートネットワークを使用し、IPv6では標準のリンクローカルアドレッシング機能を利用します。
- 名前解決:Bonjourの名前解決は、ローカルホスト名の設定とマルチキャストDNS(mDNS)の組み合わせによって実現されています。公衆インターネットのDNS(Domain Name System)が外部のDNSサーバーに依存するのに対し、マルチキャストDNSはローカルネットワーク内で完結して動作し、ネットワーク上のすべてのBonjour対応デバイスがクエリを受信・応答できます。
- ロケーションサービス:アプリケーションへの位置情報サービスを提供するため、BonjourはmDNSの上に抽象化レイヤーを追加し、サービス名ごとに整理された、ブラウズ可能なBonjour対応アプリケーションのテーブルを維持します。
AppleはBonjourの実装において、ネットワークトラフィックが帯域幅を過剰に消費しないよう特別な配慮を行いました。特に、mDNSにはキャッシュ機能が組み込まれており、直近に要求されたリソース情報を記憶することで、無駄な通信を抑えています。
Apple製品におけるBonjourのサポート状況
Macのデスクトップおよびノート型コンピューターのOSや多くのアプリケーションはBonjourに依存しており、これらのデバイスにはデフォルトでインストール・有効化されています。Bonjourはモバイルデバイス向けのiOSおよびiPadOSにも標準搭載されており、すべてのiPad、iPhone、iPod touch、Apple TVに組み込まれています。
Mac OS XおよびmacOSを搭載するApple製コンピューターはBonjourをサポートしており、Safariウェブブラウザー、ミュージック(iTunes)、iPhotoなどのネットワークアプリケーションに埋め込まれています。
重要:Macが正常に動作するうえでBonjourは不可欠です。削除したり無効化したりしないでください。
Windows PCにおけるBonjourのサポート状況
AppleはMicrosoft Windows PC向けにBonjourの無料ダウンロード版を提供しており、Windows 10、8、7に対応しています。PCでiTunesを使用している場合は、iTunesソフトウェアに同梱されています。MacとWindows PCが同じプリンターやその他のデバイスを共有する家庭環境では、特に役立ちます。
Macとは異なり、Windows PCはBonjourがなくても正常に動作します。ただし、Bonjourを利用するアプリ(iTunesなど)をインストールしている場合、それがないと正しく動作しないことがあります。PCからBonjourを削除しても安全で、コントロールパネルの「プログラムと機能」から確認・削除できます。
補足:Windows PCのみを運用していて、Bonjourを必要とするMacやソフトウェアがない企業では、Bonjourをインストールする必要はありません。一方、PCとMacが同じネットワーク上に存在する場合は、WindowsにBonjourをインストールしておくと便利です。
アプリケーションとBonjourの連携の仕組み
通常、アプリケーションは標準的なTCP/IP呼び出しを通じてBonjourサービスを利用します。
また、「Bonjour Browser」と呼ばれるクリエイティブ・コモンズライセンスのアプリケーションも複数開発されています。デスクトップ・ノートPC用ソフトウェアやスマートフォン・タブレット用アプリとして提供されており、ネットワーク管理者や愛好家が、アクティブなネットワーク上で自身を通知しているBonjourサービスの情報を閲覧できます。
Bonjour技術は、macOSおよびiOSアプリケーションの双方に対して一連のAPI(Application Programming Interface)を提供しています。開発者の方は、Apple公式の「Bonjour for Developers」ページで詳細な情報を入手できます。
-
「ローカル エリア接続に有効なIP構成がありません」エラーの原因と解決策
インターネットにアクセスしようとした瞬間に「ローカル エリア接続に有効なIP構成がありません(Local Area Connection Doesnt Have A Valid IP Configuration)」というエラーメッセージが表示されるほど、ストレスが溜まることはありません。この問題は、主に互換性のないネットワークドライバー、誤ったネットワーク設定、あるいはルーターやモデムの不具合によって引き起こされます。場合によっては、ISP(インターネットサービスプロバイダー)側に原因があることもあります。そのため、トラブルシューティングを始める前に、まず契約しているプロバイダーに問い合わせて
-
VirtualBoxでNATネットワークを構築する方法|複数VMに個別IPを割り当てる設定ガイド
先日、VirtualBoxを使っていて興味深い問題に遭遇しました。複数の仮想マシン(VM)で小さなプライベートネットワークを構築しようとしたのです。1台をサーバーとし、残りのマシンをクライアントとしてエージェントソフトを実行し、サーバーへ結果をレポートする構成です。一見シンプルな話ですが、ここで問題が発生しました。NAT接続したすべてのマシンが、まったく同じIPアドレス「10.0.2.15」を持ってしまったのです。実際、最も基本的なVM構成——つまり各マシンが単一のNATアダプターのみを使用する場合——では、複数のマシンを同時に稼働させていても、それぞれが同一のIPアドレスを取得してしまいます