ホーム » コンピュータ (ページ 53)
「コンピュータ」カテゴリーアーカイブ
自宅内の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 。
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 アプリを起動したら、あっさり認識。
|
|
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 のことをさっぱり解っていないので、 あとの作業用に、ココまでをメモ。
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 が動くんだから、一発でインストール完了。
iPhone7が発表されて…
iPhone7が発表されて、 ちょうどお兄ちゃんの携帯更新(私のおさがりからの2年)と、 妹の携帯デビュー(まだ先だけど)も含めて、飛びつくか思案中。
Felica対応は、私自身がiPhone6なので様々なカードを持ち歩く状態で 大歓迎(だからこそ欲しい)。 でも、Lightning変換が必要なイヤホンはダサいし (そんなにイヤホン使わない癖に…)、 子供2人の携帯も考えると、Apple Watch Series2 も考える。
ただ、Apple Watch もゴチャゴチャやりたい時には すぐに携帯触るほうなので、どこまで活用するのかも考え物。
まあ、こういう買物は、悩んでいる時が一番楽しいんだけどね。
お兄ちゃんのおさがり携帯の更新
お兄ちゃんに「おさがりiPhone5から更新したい?」って聞いたら、 まだ使えてるし大丈夫だってさ。 「 iOS 10 ではサポート対象でまだ1年は使えると思うけど、 2年後までは怪しい。」と説明しておいた。 大学進学決まったらお祝いで機種変かな。
妹ちゃんの携帯デビュー案
妹ちゃんに聞いたら「おさがりでもいいけど 自由にカスタマイズしていい?」って聞いてきた。 どうもトップ画面とかを好きなキャラクタに変更したいみたい。
うーむ、iPhoneはAndroidほど、デスクトップアプリを変更なんてで きないし、壁紙ぐらいしか変えられんぞ…。 今もAndroidタブレットだし、iPhoneじゃなくって Android で 携帯デビュー希望かな。
SPF(メール送信者認証)
職場で立てたサーバで、gmail などに送ったメールが spam 扱い などをされたので、DKIM の設定を試しているけど、 なかなか設定が面倒。
ふと、自宅サーバでも、メールの送信者認証を試そうとした。 そこで、mydns.jp によるドメイン名の DNS レコードを確認していたら、 特に DNS の設定をしていないけど、mydns.jp 側で SPF の情報を 出してくれているみたい。
$ dig @8.8.8.8 txt tsaitoh.net tsaitoh.net. 299 IN TXT
“v=spf1 +ip4:xxx.xxx.xxx.xxx a:auth.gate-on.net a mx -all”
であれば、gmail 宛てのメールで spf が pass しているかと調べたら、
Authentication-Results: mx.google.com;
spf=fail (google.com: domain of xxxxxxxx@tsaitoh.net
does not designate zzz.zzz.zzz.zzz as permitted sender)
smtp.mailfrom=xxxxxxxx@tsaitoh.net
Received: from
scan03-mds.s.noc.itscom.net
(scan03-md.ns.itscom.net [175.177.155.124]) :
メールヘッダには、上記のように記録されていて、 spf 認証に失敗している。 メールの経路に itscom.net というのが入っているので何かと思ったが、 プロバイダにしている丹南CATV関係。
よくよく考えたら、自宅サーバからメールを出すときには、 OP25B(公式メールサーバ以外は、25番ポートをブロック)されている(いた) ので、postfix の transport を設定し、smtp.ttn.ne.jp 経由でメールを 出していた。 このため、tsaitoh.net のメールが、itscom.net から 出ているので怪しいので 「spf=fail」となっている。
ただ、先日学生相手の情報セキュリティの説明を自宅を例に説明していたら、 OP25B でブロックされていないのを 見つけていた。 (たぶん、光ファイバ接続の nextr 導入で制限が外れているのだろう)
ただし、丹南CATVが OP25B を復活させる可能性もあるので、 icinga にて、丹南CATV以外のメールサーバと SMTP で繋がるかチェックを加えておいた。
ということで、postfix の transport の設定を、直接メールを出すように 直したら、無事に spf=pass となった。(^_^;
Received-SPF: pass (google.com: domain of xxxxxxxx@tsaitoh.net
designates xxx.xxxx.xxx.xxx as permitted sender)
client-ip=xxx.xxx.xxx.xxx;
メール受信時のチェック
せっかく、送信時のSPF認証が通ったし、受信時にSPF確認しようと思ったけど、 postgray を導入していて、特に spam の負荷も問題にならない状態なので、 (設定面倒だし)、そのままにしておこう。