« MacをAirPrintサーバー化 | トップページ | Qi対応モバイルバッテリー比較(ドコモ対パナソニック) »

2012年1月27日 (金)

外出先でAirPrintに挑戦




これまでの歩み。
VPN経由でiPhoneからMacの画面共有を使う
MacをVPN経由でスリープから復帰させる
MacをL2TP/IPsecのVPNサーバー化、テザリング接続のMacBook AirからVPN接続
システムログを監視する
MacをAirPrintサーバー化

iPhoneからVPNで自宅ネットワークにアクセス出来るようになったし、AirPrintでPDF化することも出来るようになった。そこで当初からの目標かつ最後の難関「VPNを経由してAirPrintで出力」に挑戦したみた…が結果は惨敗。

事前に調べてみたところでは成功事例は無く元々難しいと覚悟はしていたのだが、駄目なら駄目でも自分で確認しておきたかったので(無謀にも)チャレンジ。

AirPrintはIPPというHTTPの拡張プロトコルを用いているのだが、AirPrintではこれをBonjourの上で動作させている。そしてこのBonjourがVPNを越えることが出来ない。
MacのBonjourはプライベートアドレスをルーター越しにブロードキャストしないというのを遵守している。VPNもセキュリティの観点からLAN内のブロードキャストを通さない仕様となっている。AirPrint自体が「同一ネットワーク上のプリンタ」ではなく、「同一無線LAN上のプリンタ」となっている点も何か仕掛けがしてありそうな気がする。

VPN Activatorの開発者もWide Area Bonjourを実装させてみたところ、iOSデバイスのプリントリストに表示させるところまでは出来たものの、印刷は出来ていない(Wide Area Bonjourは機器をグローバルIPとして検出する仕組みらしいが、実際のプリンタはプライベートIPでありこれが印刷不可の原因となっているとのこと。iOSのAirPrintがグローバルIP宛の印刷をリジェクトするのかもしれない)。
VPN ActivatoreのAdvance設定にWide Area Bonjour用のボタンがあるが、現在のバージョン(0.4.4)ではボタンそのものが無効になっている。

とにかく、色々試してはみたのだが現時点ではAirPrint(iPhone)でプリンタを検出することすら出来なかった。

AirPrintサービスをルーター越し(VPN越し)に検出できないのでiOSデバイス上でルーティングなどを設定することが出来れば何とかなりそうなのだが、現在のiOSにはその機能は解放されていないのでこれも不可。

数回に渡りVPNを設定したりWOLを設定したりAirPrintサーバーを設定したのは、この「外出先のiPhoneでSafariの画面を家のMacにPDFで保存」をしてみたかったため。
VNC接続による画面共有はオマケでやってみただけで、必要なファイルはDropboxやPogoplugに格納している現状では使う機会はほとんど無いだろう。

最後に、唯一外出先でAirPrintに成功した例。

簡単な話だ。Bonjourが同一LAN上のAirPrintには接続出来るということは、テザリング接続中のMacBook AirをAirPrintサーバーにすれば良いということ。そうすれば、iPhoneでプリントを選択するとリストにMacBook Air上のAirPrintプリンタが表示され、印刷(PDF化)もすることが出来る。
もっとも、テザリング中のMacBook AirがあるのであればMac上のSafariで操作してそこから直接PDFで保存すればいいので、現実的には全くの無意味。

(完)





 
 

|

« MacをAirPrintサーバー化 | トップページ | Qi対応モバイルバッテリー比較(ドコモ対パナソニック) »

internet」カテゴリの記事

iPad」カテゴリの記事

iPhone」カテゴリの記事

Mac」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/579837/53831021

この記事へのトラックバック一覧です: 外出先でAirPrintに挑戦:

« MacをAirPrintサーバー化 | トップページ | Qi対応モバイルバッテリー比較(ドコモ対パナソニック) »