Bakulog

獏の夢日記的な何か。

VPNを使って遠隔地のPepperに接続する

「知ってりゃ瞬殺」系の話題なんで記事化するのに引け目を感じますが。

本記事では遠隔地のPepperと通信して何かする方法として、仮想プライベートネットワーク(VPN)で実現する一例を紹介します。

以下の手順を踏むと、遠隔地のPepperに対してローカル接続時とほぼ同じように接続できるようになります。

1.Pepperと同じLAN内にVPNサーバ役PCを配置(Windowsが無難、MacでもOK) 2. 遠隔地で使うクライアントPCも別に用意 3. VPN Azureのこのページを見てサーバ役PCをセットアップ 4. クライアントPCから接続

一言でいうと「VPN Azure使おう」というだけです。この方法はマウスでポチポチすれば完了するため、簡単さがメリットと言えます。

しかし利用にあたっては注意が3点あります。

第一に、これは当然ですが、ローカル接続より遅いです。私の自宅からアトリエ秋葉原への接続で試した1所では、指示が最大で1秒くらい遅れるケースがあったようでした。遅れの原因のひとつには無償ツールだけでシステムを組んでる事が挙げられます。Softetherが出している有償版のソフトを適用するとパフォーマンス改善するかもしれません。

第二に、Pythonの対話環境における観察事項としてタイムアウトが妙に早いです。例えば対話環境で以下を実行して

import qi
s = qi.Session()
s.connect("xxx.xxx.xxx.xxx")

これでPepperに接続できますが、この状態で1分くらい放置すると接続が切れてしまいます。原因は良く分かってません。

第三に、この方法ではBonjourの機能が使えないようです。これによって以下のような制限がかかります。

import qi

s = qi.Session()
#NG
#s.connect("pepper.local")
#OK
s.connect("192.168.1.12")

なんかVPN Azure側の設定直したらうまく動くんですかね…?

本記事は以上です。なんか面白い使い方を思いついたらぜひ面白く使ってみてください。


  1. アトリエ秋葉原にて了承いただいて試させていただきました。この場を借りてお礼申し上げます。