ルーター/CTUを自動で再起動

実家のサーバーに時々外から繋げなくなるため、ルーター/CTUあたりを疑っていたのですが、どうもCTUが時々固まるようです。

IoTの時代なんだから遠隔で楽々ACコントロールできるはず!と思ったのですが、どれもこれもそれなりに値が張る物ばかり・・・

そもそもサーバーがあるんだからそこからコントロールすればいいや!ということで考えてみました。

ネットを漂っていると、巷には電源連動タップなるものが存在するようです。

しかもその中にはUSBの電流を検出するタイプのものがあるとか。

これはUSBポートの電流を制御できれば行けるはず!と言うことで探してみると

ありました。

AC Power Control by USB Hub

そのものずばりです。

情報が古いので色々試してみます。

まず、hub-ctrlをダウンロードし、ビルドします。

hub-ctrl -vを実行してみます。

上の INFO: individual power switching

の部分が個々のポートの電力制御が可能かどうかを示しています。

今回使用したサーバーのマザーボード搭載のhubがどうやら対応してるようなので、そのまま使ってみることとします。

さて、次に用意するのがAC連動タップです。僕はこれを使いました。

先ほどのhubのポートにタップのUSBを指して、試してみます。

今回はCTU/ルーターを刺した状態でテストしたので、自動復帰するテストを行いました。

結果をワクワクしながら待ったのですが、待てど暮らせど変化がありません。

調べてみたところ、どうもマザーボード搭載のhub(Intel Root Hub)は表示上は電源管理に対応しているものの、実際には対応していないようです。

仕方ないので、実績が有ると思われるハブを購入しました。

これを繋いで先ほどのテストを行ったところ、無事にon/offできました。

さて、次にipアドレスを取得出来ない場合に自動で再起動するスクリプトを書きます。

これをcronで回して、完成(のはず)です。15/03/12 ifの構文を修正

実際にはリセットを掛けた後にddnsの更新や通知メールの送付などを加えています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です