突然印刷できなくなる
- プリンターが「オフライン」と表示される
- 印刷がスプールされたまま停止する
- スリープや再起動後、プリンターが認識されなくなる
設定を見直しても改善せず、 PC とプリンターの通信は途切れたまま。プリンター設定を作り直せば一時的に復旧しますが、しばらく使っていると再び「オフライン」になってしまいます。
なお、ネット上で同様のトラブルを調べても、多くのメーカーサイトや FAQ では「プリンターやパソコンの再起動」や「ドライバーの再インストール」など、一般的な対処法のみが案内されているケースが目立ちます。一時的に解消することはあるものの、再発を繰り返すケースが多く、本質的な解決にはつながっていないと感じました。
USB 接続で印刷は可能に
対処として、一旦 USB ケーブルでプリンターを接続してみたところ、すぐに印刷が可能になりました。その後、数時間~数日様子を見ましたが、プリンターが「オフライン」になることはありません。この結果から、プリンター本体やドライバーの問題ではなく、ネットワーク接続そのものに原因があると分かりました。
原因の特定
WSD ポートの存在
あらためて、無線接続での設定を調べたところ、プリンターの接続には WSD(Web Services on Devices)ポートが使われていることが判明しました。 WSD は Windows がネットワーク上の機器を自動検出・構成するために採用している仕組みで、プリンターやスキャナーなどが自動的に追加される際によく使われます。
しかし、この WSD ポートが不安定な無線環境では通信エラーや認識失敗の原因となることがあり、今回の「オフライン問題」の根本的な原因だったと考えられます。
なお、 USB 接続の場合には WSD ポートは使用されません。 USB で直接接続されたプリンターはUSB001
などのローカルポートとして扱われます。 WSD を使用していない USB 接続では問題が発生しないことが、 WSD ポートが原因である明確な根拠となります。
最終解決
WSD を使わず手動でポート設定
問題の根本である WSD ポートを使わず、次のように手動で設定を行いました。
- プリンターの IP アドレスを確認(固定 IP とする)
- Windows 側で Standard TCP/IP ポートを新規に作成
- WSD ポートのチェックを外し、手動で作成したポートに切り替え
この設定により、無線接続でも安定して印刷できるようになり、再起動やスリープ後でも問題なしとなりました。
- WSD ポートは便利だが、無線環境では不安定になりやすい
- USB 接続はトラブル切り分けに非常に有効
- 最も確実なのはIP 固定+TCP/IP ポートの手動設定
WSD の仕組みと注意点
WSD(Web Services on Devices)は Microsoft が提唱するネットワーク機器の自動検出と自動構成を目的とするプロトコル群です。以下の技術的構成を持っています:
WS-Discovery:ローカルネットワーク上で機器が自ら存在をブロードキャストするプロトコル(UDP マルチキャスト)
SOAP:サービス内容やコマンド情報を XML ベースでやり取りするためのプロトコル
DPWS(Devices Profile for Web Services):小規模デバイス向けの軽量な Web サービス仕様
Windows Vista 以降の OS に標準搭載され、プリンターやスキャナーといった機器が「私はこういうサービスを提供しています」とネットワークに通知し、 PC 側がそれを検知してポートやドライバの設定を自動で行う仕組みを実現します。
WSD のメリット
- 接続が簡単(ケーブル接続せずとも自動でプリンターが追加される)
- ドライバのインストールも最小限で済む
- 複数の PC から共通プリンターを自動で利用できる
WSD の問題点
- 無線 LAN では通信が不安定になりやすい(特に 2.4GHz 帯や混雑したネットワーク)
- プリンターの IP アドレスが変わると認識できなくなる場合がある
- WSD ポートが無効になっていても、スリープ復帰や再起動時に Windows が自動で再構成し、通信不良を引き起こすことがある
実際の現場での対応傾向
プリンターメーカーや業務現場では、 WSD 接続をあえて避け、静的 IP アドレス+TCP/IP ポートの手動設定を推奨するケースも多く、とくに業務用レーザープリンターなどでは標準の手法とされています。
この記事が役に立ったら「いいね」!