- 複数のWi-Fiルーターを使ってる環境で、iPhoneのAirPrintが「プリンターが見つかりません」エラーになる問題がありました。原因はルーターのプライバシーセパレーター機能でした。
- 家庭内で別の部屋から無線で印刷をしたいなら、各ルーターのこの機能を無効にするのも選択肢です。
発生した問題
広い一軒家でBUFFALO WXR-11000XE12を複数台使用し、アクセスポイントモードで運用していました。各ルーターはLANケーブルで接続され、一つの大きなネットワークを形成しています。
しかし、iPhoneからAirPrint対応プリンターに印刷する際、奇妙な現象が発生しました。プリンターと同じ部屋のWi-Fiルーターに接続した場合は問題なく印刷できます。ところが、プリンターと違う部屋のWi-Fiルーターに接続すると「プリンターが見つかりません」というエラーが表示されます。
AirPrintの仕組みを理解する
この問題を解決するため、まずAirPrintがどのような仕組みでプリンターを発見するか確認しましょう。
IPアドレスとMACアドレス
iPhoneはネットワーク内でプリンターの「住所」を探します。AirPrintではプリンターの発見にIPアドレスを使用します1。MACアドレス(機器固有の識別番号)ではありません。IPアドレスは、ネットワーク上での機器の住所のような役割を果たします。
mDNSとマルチキャスト通信
AirPrintでは、プリンターのIPアドレスをmDNS(マルチキャストDNS)という技術で発見します2。
mDNSは、プリンタ側が自分の存在をネットワーク内に周知する仕組みで、マルチキャスト通信という特殊な通信方式を使用します3。この通信は、一対多数の通信を効率的に行う方法です。テレビの電波のように、一つの送信源から複数の受信者に同時に情報を届けるのです。
プライバシーセパレーター機能の影響
調査の結果、BUFFALO WXR-11000XE12のプライバシーセパレーター機能が問題の原因であることが判明しました4。
プライバシーセパレーター機能とは
プライバシーセパレーター機能は、Wi-Fiルーターに同時に無線接続している端末同士のアクセスを禁止する機能です5。カフェや店舗などで利用者のセキュリティを保護するために使用されます。
この機能が有効になると、同じWi-Fiネットワークに接続していても、機器同士が「お互いを見ることができない」状態になります。まるで、同じ建物にいるのに壁で仕切られているような状況です。
複数Wi-Fiルーター環境でマルチキャスト通信の制限
LANと無線ネットワーク(アクセスポイントモード)
Wi-Fiルーターをアクセスポイントモードで使用すると、ルーター機能は停止します。すると、それぞれWi-Fiルーターにつながった機器は、一つのLAN(ローカル・エリア・ネットワーク)を構成します。
しかし、各アクセスポイントは独立した無線ネットワークを作成します。そのため、マルチキャスト通信が他のアクセスポイントに届かない可能性があります。
多くのWi-Fi機器では、セキュリティ上の理由でマルチキャスト通信を他のネットワークセグメントに転送しません。これは、不正なアクセスを防ぐための仕組みです。しかし、この制限がAirPrintの動作を妨げます。
Windows PCの接続との違い
興味深いことに、プライバシーセパレーター機能があっても、ノートパソコンから別のWi-Fiにつないだプリンタには印刷できました。同じ複数Wi-Fiルーター環境でも、WindowsPCからの印刷は問題なく動作するのに、iPhoneのAirPrintだけが「プリンターが見つかりません」エラーになるのです。
これは、Windowsの印刷プロトコル WSD(Web Services for Devices)では、IPアドレスの探し方が違うからです。WSDは初期設定時にプリンターのIPアドレスを直接記録し、その後はそのIPアドレスに直接通信します。つまり、毎回プリンターを「探す」必要がありません。
一方、AirPrintは印刷のたびにmDNSでプリンターの存在確認を行います。そのため、マルチキャスト通信の制限の影響を受けやすいです。
問題の本質
ネットワーク構成の影響
複数のアクセスポイントを使用した環境では、各アクセスポイントが独立した無線ネットワークセグメントを形成します。プライバシーセパレーター機能が有効な場合、異なるアクセスポイントに接続した機器間のmDNS通信が阻害されます。
iPhoneが発するプリンター発見のためのマルチキャスト信号が、異なるアクセスポイントに接続されたプリンターまで届かないのです。これは、異なる部屋で話しかけても声が聞こえないのと似ています。
同じアクセスポイントでの成功理由
プリンターと同じアクセスポイントに接続した場合、mDNS通信が同一の無線ネットワークセグメント内で完結します。この場合、プライバシーセパレーター機能の制限を受けずに通信が可能になります。
解決方法
プライバシーセパレーター機能の無効化
最も直接的な解決方法は、各WXR-11000XE12のプライバシーセパレーター機能を無効にすることです。この設定変更により、異なるアクセスポイント間でもmDNS通信が可能になります。
設定変更は、ブラウザで各機器の管理画面(通常は192.168.11.1)にアクセスして行います。プライバシーセパレーター設定を「無効」に変更することで、AirPrintが正常に動作するようになります。
設定変更時の注意点
プライバシーセパレーター機能を無効にする際は、ネットワークのセキュリティ要件を考慮する必要があります。家庭環境では問題ありませんが、店舗や事務所などでは他の手段でセキュリティを確保することが重要です。
技術的背景の整理
この問題は、Wi-Fi機器側の設定が原因であり、iPhone側の設定では解決できません。AirPrint機能自体は正常に動作しており、ネットワークレベルでの制約が問題となっています。
mDNSプロトコルの特性上、マルチキャスト通信の制限は避けられない課題です。メッシュWi-Fiシステムの導入や、すべての機器を単一のアクセスポイントに接続することも代替解決策として考えられます。
まとめ
複数Wi-Fiルーター環境でのAirPrint問題は、プライバシーセパレーター機能によるmDNS通信の制限が主な原因です。BUFFALO WXR-11000XE12をアクセスポイントモードで使用する場合、この機能を無効化することで問題を解決できます。AirPrintはIPアドレスベースのmDNSプロトコルを使用するため、マルチキャスト通信の制約が直接的に影響します。
- AirPrintはIPP(Internet Printing Protocol)というTCP/IPベースのプロトコルを使用しており、プリンターとの通信にはIPアドレスが必要です。MACアドレスは物理層での識別に使用されますが、AirPrintの機器発見プロセスでは使用されません。 – AirPrint – Wikipedia
- mDNSは、RFC 6762で標準化されたプロトコルで、ローカルネットワーク内でDNSサーバーを必要とせずに名前解決を行う技術です。Appleの「Bonjour」やLinuxの「Avahi」として実装されています。 – マルチキャストDNS – Wikipedia
- マルチキャスト通信では、IPv4の場合は224.0.0.251、IPv6の場合はff02::fbという専用のIPアドレスを使用します。このアドレスは「リンクローカル」と呼ばれ、ルーターを越えて転送されない特性があります。 – 【図解】初心者にも分かるマルチキャストの仕組み
- プライバシーセパレーター機能は、メーカーによって「APアイソレーション」「クライアント分離」「ネットワーク分離機能」「AP隔離機能」など様々な名称で呼ばれています。基本的な動作は同じで、無線LAN接続した機器同士の通信を制限する機能です。 – プライバシーセパレーター機能とは何ですか | バッファロー
- この機能は主に公衆無線LANサービスや店舗でのWi-Fi提供時に、利用者間のプライバシー保護とセキュリティ向上を目的として使用されます。家庭環境では、マルウェア感染した端末からの横展開攻撃を防ぐ効果もあります。 – 不要な通信をストップ、覚えておきたいWi-Fiルーターのセキュリティ機能