ホーム » t-saitoh の投稿 (ページ 138)

作者アーカイブ: t-saitoh

システム

最近の投稿

アーカイブ

カテゴリー

自宅内のIPv6ちょっと対応

iOS 10 の導入で、自宅サーバで IPSec の VPN サーバを動かしたいけど、 なぜかうまく動かない。光ファイバ通信の融通の利かないルータの中に、 融通の利く既存のルータの2段ルータ構造で、IPSec 関連のパケットが 落とされている可能性があったので、VPNパススルーやらIPv6パススルーを 試してみた。

ただ、IPv6パススルーを有効にすると、パソコンなどが IPv6 RA 情報を 拾って IPv6アドレスを取得する。これはいいんだけど、DNS として、 ルータを使うようになってしまう。我が家では自宅サーバ用に自宅内 DNS を動かしているので、グローバルなDNSに直接つながると、自宅内 で自宅 Web ページが見えなくなってしまう。

自宅内 IPv6 用 DHCP サーバ

そこで、IPv6用 DHCP サーバを以下のようにして動かした。

ただし、IPアドレスまで割り振りたかったが、RA 情報を使って V6アドレスをつかんでしまうので、自宅内 DNS サーバを使うように DNS サーバ情報を配るだけ。

 (( /etc/default/isc-dhcp-server ))
INTERFACESv4="eth0"
+ INTERFACESv6="eth0"
 (( /etc/dhcp/dhcpd6.conf ))
+ option dhcp6.name-servers fe80::xxxx:xxxx:xxxx:xxxx;
+ option dhcp6.domain-search "自宅のドメイン名";

PS4の動作状況をicingaで表示

HomeKit互換のhomebridgeを使っていて、PS4 の動作確認で ps4-waker というソフト が便利なことがわかったので、ちょいと別応用。

サーバ監視ソフトの icinga で使えるように、nagios 用の check_ps4 を作ってみた。 "ps4-waker search" の出力の statusLine が 200(起動中)/620(スタンバイ) で動作確認ができるけど、 running-app-name も出力に入れれば、なんのゲームが動いているかも出力できる。

#!/bin/bash
PS4WAKER="/usr/local/bin/ps4-waker"
if [ -x $PS4WAKER ]; then
ans=`$PS4WAKER search -t 50 2>/dev/null \
| /bin/sed -n "s/^  \(statusLine\|'running-app-name'\): '\(.*\)'.*$/\2/p" \
| /usr/bin/paste - -`
case "$ans" in
200* ) # Powered ON
echo "$ans"
exit 0
;;
620* ) # Standby
echo "$ans"
exit 0
;;
"" ) # No response
echo "0 Powerd off"
exit 2
;;
* ) # Another status
echo "$ans"
exit 2
;;
esac
else
exit 1
fi

homebridgeで温湿度も取れる

homebridgeが面白い。plugin 揃ってるので、 部屋の温度湿度をとれるようにしてみた。 データは、サーバに接続している温湿度センサーの usbrh 。

1609190859_180x320.PNG

usbrh のデータを、プラグイン homebridge-httptemperaturehumidity で 読み取れるようにしてみた。

<?php
header( "Content-Type: application/json; charset=utf-8" ) ;
$data = shell_exec( "/usr/local/bin/usbrh" ) ;
if ( preg_match( "/^([\d\.]+)\s([\d\.]+)$/" , $data , $match ) ) {
print "{\n\"temperature\": ".$match[1].",\n\"humidity\": ".$match[2]."\n}\n" ;
}
?>

homebridgeで家電制御

iOS 10 で HomeKit のアイコン表示されたし、Siriから家庭内の家電制御ができないかと試してみた。 HomeKit 互換でフリーの実装の homebridge があるみたいなので、 インストールし、設定を行った。

homebridge-cmd を使うと、電源のON/OFFの制御なら、コマンドラインで呼び出せる処理を 起動できる。

{
"bridge": {
"name":         "perrine",           # ホスト名?
"username":     "CC:22:3D:E3:CE:30", # 特になんでもいい。
"port":         51826,
"pin":          "031-45-154"
},
"description":      "HomeControl by Tira-2",
"accessories": [
{
"accessory": "CMD",
"name":     "テレビ",
"on_cmd":   "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=regza --transmit=power\"",
"off_cmd":  "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=regza --transmit=power\""
},
{
"accessory": "CMD",
"name":     "チューナー",
"on_cmd":   "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=catvstb --transmit=power\"",
"off_cmd":  "/usr/bin/sg dialout -c \"/usr/local/bin/Tira-2.py --remote=catvstb --transmit=power\""
}
]
}

参考記事だと、制御には insteon+ を使うとの記事が多かったけど、 homebridge を起動して制御させようとするが、機器を認識してくれない。

username とかを色々と試してみたけどダメだったけど、insteon+ を使わずに、 基本の HomeKit アプリを起動したら、あっさり認識。

1609181126_180x320.PNG
1609181126-1_180x320.PNG

一筆啓上の作品

1609162043_283x640.JPG

ps4-wake

homebridge のことをしらべていたら、PS4 をネットワーク経由で スタンバイ状態から ON/OFF できる、node.js を使った ps4-waker という ソフトがあるみたい。

でも、node.js はまだ良くわからない所もあるので、ちょいと探すと、 "ps4-wake" というソフトも見つかる。 C言語ベースで、導入も簡単そう。

 ((インストール))
$ git clone git://github.com/dsokoloski/ps4-wake/
$ cd ps4-wake
$ make
$ sudo cp ps4-wake /usr/local/bin
 ((使い方))
$ ps4-wake -vP -B  # 同一ネットワーク内のPS4を探す
Device found: PS4-YYY [PS4/XXXXXXXXXXXX]: Standby
$ ps4-wake -vW <USER-CREDENTIAL> -H XXX.XXX.XXX.XXX # 指定IP

見つけたPS4の"USER-CREDENTIAL"をつけて、ps4-wake を呼び出せば いいのだが、その書き方が違うのか、PS4が起動しない。

といっても、合宿所の宿直でVPN接続で自宅のPS4を触っているので、 本当に起動しているのかいないのかが不明なので、今日はココまで。

homebridgeのメモ

iOS 10 に切り替えると、"HomeKit" のアイコンが増える。 家庭内のライトやテレビといった機器のON/OFF制御などが できる機能。

で、調べてみたけど、海外ではそれなりの機器が出ている ようだけど、AmazonやAppleで調べてみても、 電球型のHomeKit対応ライトと言った程度で、便利さを 感じるようなものが出ていない。

我が家では、Tira2 という赤外線リモコンで、家電制御など を使っているので、Siri に「テレビをつけて」をやってみたいと 考えてしまう。

調べてみると、"homebridge"という互換ソフトが出ているみたい。 node.js をベースにしたソフトらしい。

ということで、ひとまず node.js とかを入れてみた。

((node.jsのインストール))
$ sudo aptitude install nodejs npm
$ sudo ln -sf /usr/bin/nodejs /usr/bin/node
((homebridgeのインストール))
$ sudo npm install -g homebridge
((コマンドラインベースの命令を呼び出すモジュール))
$ sudo npm install -g homebridge-cmd
or
$ sudo npm install -g homebridge-cmdswitch2

でも、node.js のことをさっぱり解っていないので、 あとの作業用に、ココまでをメモ。

https://datahotel.io/archives/725

君に決めた…‼︎

1609140732_750x750.jpg

早々にiOS10に…。

1609140723_750x1334.PNG

BoWに開発環境とLaTeXをインストール

Bash on Windows を使ってインストールをしていたら、 開発環境が入っていない。Visual Studio があるけど、 gcc とかは入れておこう。

開発環境

 (( パッケージ更新 ))
$ sudo aptitude upgrade ; sudo aptitude safe-upgrade
 (( 開発環境 ))
$ sudo aptitude install gcc g++ make automake bison flex
$ sudo aptitude install perl ruby python

LaTeX環境

今までは LaTeX を使いたいときは、データをDropboxにおいて、 Linux サーバに入って platex + divpdfmx を行い、 Windows 環境で PDF の確認を行っていた。 しかし、Dropbox の同期のタイムラグがちょっと不便だった。

BoW のパッケージを見ていたら、普通に texlive があるので、 cjk-latex をインストール。

 (( latex ))
$ sudo aptitude install cjk-latex texlive-lang-cjk texlive-binaries

これで、Windows 環境だけで LaTeX のコンパイルができるようになった。 Windows 環境用の LaTeX は出てはいるけど、セッティングが面倒だった。 でも Ubuntu が動くんだから、一発でインストール完了。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト

メタ情報