teleportで共有がうまくいかない:不具合と解消法

同一ネットワーク上の複数Macで一セットのキーボード・マウス(またはトラックパッド)を共有して使えるteleport

telrport

母艦となるMacとモバイル用のMacbookAirなど複数Macを使い分けている人には、作業効率の向上に役立つフリーソフトの一つである。

使い方は簡単で、全てのMacにteleportをインストールし、操作側で被制御側のウインドウをちょこちょこっといじるだけで制御ができるようになる。

interface

しかし最近、このMac間の同期がうまくいかなくなった。

同じ悩みを抱えている人は多いらしく、キャッシュを削除するなどで回復することもあるようだか、僕の環境ではうまくいかなかった。

今回、新たな解決法を試したところ、ひとまず無事に機能するようになったので、その手法をここで紹介する。

  

初めに

当環境では、MacBookAirとMacMiniの双方にteleportをインストールし、MacBookAir(クライアント)のキーボードとトラックパットを用いてMacMini(ホスト)の操作を行っていた。初めは何の問題もなく使えていたのだが、あるときを境に、遠隔操作が機能しなくなってしまった。

環境

  • MacMini (Late2012):操作される側(ホスト)
    • OS X 10.9 Marvericks
    • IP: 192.168.11.2
  • MacBookAir (Mid2011):操作する側(クライアント)
    • OS X 10.9 Marvericks
    • IP: 192.168.11.3
  • teleport 1.1.3

f:id:usskaji:20131201004417p:plain

なお、いずれもWiFiで家庭内LANに接続している。

具体的な不具合の状況: 一方向のみ制御系の共有が機能していない。

teleportの設定画面において、双方のMacの存在は認識されており、MacBookAirからMacMiniへの接続を試みる(ウインドウを並べる)ことはできる。しかし、カーソルがMac間をまたいで移動することはできない。

interface

この状況の特徴として、

  • 設定画面に現れるホストウインドウの壁紙が一致していない
  • 逆にMacMiniからMacBookAirの接続を試みると正常に機能する
  • MacMini(操作される側)のコンソールには次のようなメッセージが現れている
    • teleportd[000]: could not determine which host has IP 192.168.11.3, will use encrypted connection by default
    • teleportd[000]: Got NULL identity from delegate <TPConnectionsManager: 0x610000227d20>

対応1. キャッシュの削除:効果なし

joker8phoenix(id:joker1110)さんの記事によると、teleportのキャッシュを削除することで問題が解決する場合があるらしい。

実行してみたが、当環境では問題の改善が見られなかった。

対応2. 証明書の作成:問題が解消

サポート掲示板にある書き込みを見てみたところ、証明書の作成で通信を暗号化することで接続できるようになることがわかった。

そこで当環境で実行した手順を紹介する。

  1. MacMini(ホスト:操作される側)のteleportの設定画面において、Enable encryptionにチェックを入れる。 f:id:usskaji:20131201004417p:plain
  2. 当環境では適当な証明書が存在しないため、「証明書を作成しますか?」といった選択肢が現れる。ここで証明書を作成する("Launch the Assistant"を選択する)。
  3. 作成する証明書は、デフォルトではおそらく"s/mime(email)"となっているはずである。これを"コード署名"とし、"デフォルトを無効化"は無効のまま続行し、証明書を作成する。作成される場所はキーチェーン:ログインの自分の証明書となっているはずである。 f:id:usskaji:20131201011220p:plain
  4. teleportの設定画面に戻る。証明書を作成した段階でも、"Enable encryption"は無効のままになっているはずである。そこで、改めてチェックボックスにチェックする。
  5. 再び証明書作成の問い掛けがあるが、左上の×もしくはCancelを選択してボックスを閉じる。
  6. "Enable encryption"はいまだ無効のままになっているはずである。そこで、改めてチェックボックスにチェックする。
  7. もしかしたら、また証明書作成の問い掛けがあったかもしれない。それも再びキャンセルする。
  8. "Enable encryption"はいまだ無効のままになっているはずである。そこで、改めてチェックボックスにチェックする。すると、今度は証明書作成の問い掛けも無く、チェックされる。
  9. 以上1〜8をMacBookAr(操作する側)においても実行し、"Enable encryption"を有効にする。
  10. 最後にこれらMacのLayoutを設定する。当環境では何度か接続の承認を求められ、常に許可を選択することで、無事に機能するようになった。 f:id:usskaji:20131201011246p:plain

最後に

現在は正常に機能しているが、復帰は一時的なもので、再度不具合に見舞われるかもしれない。また、この解決法は非公式の手順のため、ほかに正式な対処法が存在するかもしれない。そのときには改めて紹介しようとおもう。

不具合さえ乗り越えれば、teleportは生産性に向上に多いに役に立つ。Display Padを使ってiPadをMacBookAirの外部モニタにしつつ、teleportでMacMiniの制御をもできるようになるので、是非活用していただきたい。   


本ページには、Amazon.co.jpアソシエイト・プログラムによるリンクが含まれております。