softehter VPNを使いエアコンが動きました(実際は部屋の中から)

2020年1月14日

ついにsoftetherでVPNができ外からエアコンの起動できました。

  1. **Webiopiに関してはここに ラズパイに関してはここに忘備録を記しています。
  2. **ラズパイでエアコンの信号を記録しラズパイにWebiopiサーバーをインストールしエアコンに信号を送信しています

以下softetherVPNの忘備録としてわかったことを記しておこうと思います。

VPNはvirtual private networkの略で社内(家庭)LANとかいう言葉を聞きますが、社内(家庭)LANと外に持ち出したパソコンが安全に通信できるような経路をつくることです

Softetherは社内(家庭)LANのどれか一つのパソコンにインストールし 持ち出したパソコンあるいは別の社内(家庭)LANから安全に通信できるようにするアプリケーションでsoftether VPN serverです

自宅はWimax wifiルーターというものでインターネットにつながっています。固定ライン、固定電話は5年ぐらい前に辞めています

パソコンにはUSBタイプのwifiアダプターが刺さっておりLANケーブルでは繋がっていません。

今回の設定でわかったこと

Wimax Wifiルーター(W04)はポート開放の設定をしても全然動かない。これはサービスしている会社の仕様で説明書を読まないと気づかない。 月96円払えばポート開放と固定IPアドレスがもらえるようだが僕のWimaxは2次販売のためポート開放の設定をしてもそのサービスが受けられない。

最初にsoftetherのマニュアル通りに設定したがVPNが自宅につながらないのは①のせいと確信した。→サービスの悪さに呆れた

softetherはそういった問題のある場合も考慮して

VPN Azure クラウドサービスというものをやっており

この仕組みで自宅のパソコンにVPN接続できた。

さすがに接続できた時はうれしかった。

ウエッブのエアコンのボタンも押せて動きました

昨日です。

※VPSを借りてそこにsoftether VPN severを立て

自宅にsoftether VPN bridgeを入れカスケード接続で同じような流れでVPNアクセスもできる方法があることが後でわかりました。

ノートパソコン(windows)はSSTPというWindowsのVPN用のプロトコルがありAzureのサーバーにはこのプロトコルで接続する。

AndroidのスマートホンではSSTP接続を提供するclientアプリケーション(SSTP VPN Client)が必要ということがわかりました。

翌日、思い切って試しました。SSTP VPN clientは有料(900円でアプリの値段としてはえらい高いなと感じましたが、評価はよいです)でしたが購入したかいはありました AzureにあっさりVPN接続しスマホよりエアコンのボタンが押せました!⑥での直接のVPN接続を考えていましたが毎月の余分な支払いをするよりはこちらの方がよかったです。しかし⑥を試してみたい気もあります。

Softetherの図で一番わかりやすかった図がこの図でネットより拝借してきましたが

ここが一番わかりにくいところだけどsoftether VPN severは仮想のLANネットワークを持っており、その仮想ネットワークと実際の社内(家庭)LANとをつなげること(ローカルブリッジ)によって、外出先でノートパソコンを自宅のネットワークにつなげることができる。

図の右側のイメージ、この図も何のことやら最初はわからなかった。

このローカルブリッジではまったのがWifiアダプタ。

僕のパソコンにはマザーボードのLAN端子(物理LANカード)とUSBのWifiアダプタがついている。

ローカルブリッジで物理LANカードは使えるがWifiアダプターでは使えないと公式ページのQ&Aに

書いてありました。

仮想ネットワークとWifiアダプターをブリッジすると簡単なのにと普通は思いませんか?

それ以前に仮想ネットワークがイメージできなかった。

確かに、Softetherのローカルブリッジの設定のブリッジ先のEthernetデバイスの選択

のところにWifiアダプターは現れてなかった。現れた物理LANカードと仮想HUBをロー

カルブリッジするとWifiアダプターにつながっている他のデバイスとのVPN通信はできました。

LAN端子にはケーブルがつながっていないのでなんか妙な感じですが。

この原因を調べていて、以下のことがわかった。

物理的LANに接続されている社内(家庭)LANのWifiのDHCPサーバーを使いたければsecureNAT

を有効にせずとも物理LAN端子に実際にルーターをつなげばよく、

VPNアドレスは192.168.100.〇が割り振られました。僕の環境では、Wimax Wfiルーターをクレードル

というものにつけ(下の写真参照)

LANケーブルでパソコンのLAN端子に接続、secureNATを有効にせずともVPN接続

できました。上の図の 家の中のネットワーク みたいな状況。

クレードルをつけたWifiルーターはwifiも機能している。この状態でsecureNATを有効にするとアドレスは

VPNアドレス192. 168.30.〇が割り振られ、

secureNATの仮想DHCPサーバーがVPNアドレスを割り振っている。

逆にsecureNATを有効にして、最初の妙に感じたLAN端子に何もLANケーブルが刺さっていない

状態にしてVPN接続すると、VPN接続できVPNアドレス192. 168.30.〇が割り振られました。

上の図の 家の中のネットワークは Wifi接続でLAN端子には何も刺さっていません。

この場合はsecureNATを有効にして secureNATの仮想DHCPサーバーがアドレスを割り振っている。

この場合でもパソコンの物理LANカードとのローカルブリッジは必要ということです。

再度wifiの環境を説明すると

図の左の家庭内ネットワークが、僕の場合は物理ハブを

含めてWifiルーター(W04)であり、中央のRaspberry Piはwindows10パソコン。パソコンの物理LANカードには何もケーブルはつながっていない。

ノートパソコンで外出先からVPN接続をする場合、

まず物理LANカードでインターネットに接続し

、次にVPN接続を行う。2段階で接続する感じ。

スマホやWifiノートパソコンの場合も同じでLTEやWifiでインターネットに接続し

次にVPN接続をする。トンネルをはるという言い方をするようです。

外出先でVPN接続をするとVPNのIPアドレスはグローバルIP(インターネット接続に必要)ではなく、192.168.〇.〇なるプライベートIPアドレスとなる。外出先で社内LANに接続している感じです。

Wimaxルーターの代わりに自宅に余っているWifiルーター(NTT docomoのL04D)に格安SIMのdata通信を入れて同じことをすればAzureを経ずに直接接続できるので高速に通信できると思う。たぶん、L04Dならポート開放したらちゃんと直接にVPN接続できると思う。

この場合はL04D用のクレードルがないのでLANケーブル接続はできずsecureNATを有効にして仮想DHCPサーバーを使わないといけない。

追加:Webiopiのインストール時に

「Do you want to access WebIOPi over Internet?」[Y/N]と聞かれるのですがこれは多分、上記のVPNをできるようにするサービスだと想像します。Webiopiのインストールで、ここをYesとしてインストールを進めている記事は日本語ではみあたらないです。このサービスはすでに終了しているとネットで見つけました。

ところで

obnizは同じようなことを実現するスタートアップのデバイスですが、このデバイスには少し関心があるので

リンクを残しておきます。僕の今までの設定を全くする必要がないデバイスです

こちらのモジュールESP8266にも関心があるのでリンクを残しておきます。

値段の安さには驚きです。ここGearBestでの購入がよさげです。

このNodeMCUというのがいろいろと使えそうです

最初にパソコンとMicroUSBで接続して

Arduino IDEでプログラムを書きArduino IDEでアップロード  wifi接続して

MicroUSBケーブルを外し

MicroUSBで電源供給

この流れでいろいろとできそうです。

楽しみが膨らみます。

次はDCモーターとサーボモーターの制御(webiopi遠隔制御も)これはヨットの帆の向きに使えるか....

追記(2019年6月9日):

ここまでいろいろと試してきましたが、現在は

Wifi機能付き家電は販売されだしており

Wifi機能付きエアコン あるいは AIスピーカー対応(Alexa)エアコンなどが販売せれているようです。

外出先からエアコンをオンオフをできるのは大変便利なようです!