2010年1月22日金曜日

イーモバイル Pocket WiFi のファイアーウォールを無効にしたら、WANからログ インできる

ほぼタイトルオンリーだが、驚いたのでエントリ。
 
 

イーモバイルの「Pocket WiFIことD25HW」 なんだけど、ルータとして所々妙な動き。
中でも驚いたのは本体設定のファイアーウォール機能を無効にしたら、WAN側の回線からHTTP管理画面が開けるところ。
 

確認したのは 2010/01/16 に契約した端末で、ソフト的にはこれ。
ファームウェアバージョン:
706.11.174.12.109sp07

 
 

これはファームウェアの改良希望だな、そっちにバインドせんでええちゅーねん。
 

ほか、うちの環境だけという奴もあるかもしれないが、現行ファームでなんか変な所。
・ファイアウォール機能をONにしたら、ipod touch からプリセットでない自前設定したPOPSサーバに接続できない。なんだろねこれ。
・余計なトラフィックを外に流さないという、IPフィルタの設定がLAN側192.168.1.0/24 のルールばっかり、0.0.0.0 でいーやん。おかげでデフォルトのIPを変えづらい。
 
したは設定次第だからいいけど、上はなあ、、Touchはトラブルシューティングしづらいなさすがに。
 

ファームウェア更新の要望窓口を探さねば・・・
管理画面開くのははイヤん。
 

2010年1月21日木曜日

Pocket WiFi のIPアドレスを変えたら色々不都合がある、メール出来なかった り。

イーモバイルのPocket WiFi(D25HW)でインターネットに接続するも、メール出来んという事態に陥ったことはありますか?
 

私はあります、原因はファイアウォールの初期設定
デフォルトのネットワーク192.168.1.0/24 からLANの設定を変える、かつファイアウォール有効ではなんとSafaliによるWEBくらいしかマトモに動作しません。
 

おかげで「ipod touch」+「Pocket WiFi」というヨドバシ黄金セットが危うく全く使えないものになる所でした。。
 
 


POPサーバにつながらない、IMAP・SMTPも無理でどうも困ってしまったので、設定を色々いじったのが原因かと思ってログインしてそれらしい個所を探してみました。
 

[caption id="attachment_1659" align="alignnone" width="300" caption="画像:Pocket Wifiの設定画面"]画像:Pocket WiFiの設定画面[/caption]
 
 

結局FireWallを切ったらPOPアクセスOKでした、細かい設定が無いのでプリセットなんでしょうが、「デフォルトのLAN『192.168.1.0/24』」←コレはいろんな環境で被りそうで嫌じゃん。。。
 

まあ仕方ないか。
 
 

pocket WiFiでメール出来んぞ?という方がいたらファイアウォール切ってみてください。
その他、あれ動かんこれ動かんというのがあったら、きっとIPアドレスをデフォルトから変更していることに起因しています、潔く戻しましょう。
 
 



追記:なんか微妙に違うような気がする、結局ファイアウォールだけのもんだいかもしれない。
続編みたいな記事が出来ている。
イーモバイル Pocket WiFi のファイアーウォールを無効にしたら、WANからログインできる

2010年1月18日月曜日

Nagiosのプラグイン、check_multiを試す

Nagiosに一風変わったプラグイン、check_multiというのがある。主に通常のプラグインのラッパーとして利用する。
 

公式これかな?
http://my-plugin.de/wiki/projects/check_multi/start
 
 

基本的にはプラグインをまとめて叩くという使い方をする、他にも幾つかあるようだが。
 

まとめて叩くと何がいいかというと、Naigosの表示画面でまとめられたり、NRPE経由で呼ぶときに監視用のセッションが1つでよくなるなど挙げられる。
詳しいコンセプトは公式サイトに図入りで説明があるので、興味があれば参照されたし。
 
 



で、リクエストのやり方とレスポンスはこんな感じ。リモート相手の時はちゃんとホストを指定しよう。
 

コマンドラインから。
./check_multi -x “command [ procs ] = check_procs”-x “command [ load ] = check_load”

 

設定ファイルから
command [ httpd ] = check_procs -C httpd
command [ crond ] = check_procs -C crond


./check_multi -f configfile

 

レスポンスの例。
OK - 12 plugins checked, 12 ok
[1] httpd PROCS OK: 9 processes with command name 'httpd'
[2] crond PROCS OK: 1 process with command name 'crond'
[3] mysqld PROCS OK: 1 process with command name 'mysqld'
[4] ntpd PROCS OK: 1 process with command name 'ntpd'
[5] sendmail PROCS OK: 2 processes with command name 'sendmail'
[6] load OK - load average: 0.22, 0.13, 0.09
[7] dev_hda DISK OK - free space: / 57922 MB (83% inode=99%);


 

テストしてみたが、NRPE経由でもちゃんと動いた。
通知内容にもどのプラグインがどういう状態か載ってくるので心配ない。
 

ちなみにActionURLなど使って、NagiosのUIに統合出来るようになっているがそこまでやる事はないので、プラグインをコンパイルしたらそれだけ拾って使ってみてます。
 

結構いい感じだ。
 

2010年1月8日金曜日

VMware ESXi4 内にさらに仮想環境を構築するならスイッチはプロミスキャスモ ードで

仮想化を色々試しているなか、VMware ESXi4をベースにして、それ上に構築したVMにもハイパーバイザを入れるという環境を作ったときのメモ。
 

まあ載っけたのはXenなんですが、ちょっとマシンがたらなかったので無茶をしてるね。
狭い区画の中で、よりコマ切れにされたリソースを使って活動。。なんとも日本的な環境になったと思うわけで。
 
 

それはさておき、当然ネットワークは VMware ESXi4の仮想スイッチを通ってさらに中のXenへーとつながるわけだが、そのまま繋いだのでは孫に当たるVMが外部と通信できないみたい、。
対策として仮想スイッチのプロミスキャスモード(日本語版管理ツールでは無差別モード)を有効にすることで通信出来た。
 


理由について多分こうかなというのを図にしてみた。
 
[caption id="attachment_1655" align="alignnone" width="407" caption="画像:親子孫VM"]画像:親子孫VM[/caption]
 
 

いじるのは1の所にある仮想スイッチ、ここがプロミスキャスでないと既知のアダプタ2まではブリッジしてくれるが、知らない相手の3のアダプタ宛はブリッジしないってことだろうか。
スイッチと言いつつも多少通常のL2とは動作が違う、まあ設定としては妥当かも。
 

こうなるとMACアドレステーブルとか気になる所だな、まさか全部フラッディングするわけでもあるまいて。
学習・・・するのかな?
 
 


しかしプロミスキャスモードの日本語訳って「無差別モード」なのな。
スイッチのプロパティ開いたときに正直困惑したね、動作からしてプロミスキャスモードだとは分かったけど、なんか物騒じゃないか(^^;)
 
…と思ったが一応Googleで検索したら無差別の方が多いのな。。
いやあ、プロミスキャス(promiscuous)でいいと思うよ。いざ何かで英語版という時に困るし。
 

2010年1月7日木曜日

Windows上でcactiのpollerにspineを使うときのspine.conf

メモエントリ
 
 

WindowsでIIS+php+MySQLでCactiをセットアップして、pollerにspineを使おうとしてもデフォルトでは駄目。
 

spine.conf を見ると接続先 MySQLサーバ(host)の指定がlocalhostとなっており、そのままだとspineの仕様でunixソケットがないよといわれてこけるのだ。
 
 

127.0.0.1に変えるとよい。
 

2010年1月6日水曜日

Cactiでグラフが出ない -やたら長いOIDだとグラフ作成に失敗する-

CentOS5.4にyumでCactiを入れまして、Windowsサーバのネットワークトラフィック状況をグラフにしようとしたんだ。
 

しかし特に何も考えずにそのまま使おうとすると、SNMPクエリでOIDの一部をインデックス扱いするもののうち、その一部が255文字を超えるものはグラフ化出来ないので少々調べてみた。
 

ちなみにどういう場合に該当するかというと詳しい内容は省くが結構ある。
WindowsServer2003だと、NICのQoSを有効にしたらフレンドリ名が「(NICの名前)+パケットスケジューラ ミニポート」となる、この日本語がやたら曲者。
 
WindowsServer2008ではQoSを有効にしても英字で文字列が追加されたりと良くなっているが、もNIC周りをちょっといじればすぐフレンドリ名が長くなる。
突然「ローカル エリア接続 - 仮想ネットワーク」とかいうフレンドリ名が出来たりと余計になかなか。。。
 
 

結果、それがOctetStringでIOD一部として使われるとあっという間に長いOIDが完成。
 

SNMP Informantを使ったときにはそれがそのままインターフェイスの識別符号になるため困ってくるのだ。
せめて物理アドレスなりをインデックスにさせてくれればよいものを、SNMP Informantは最小限しかMIBを定義していない。
 

まあこんな感じになっちゃうのよね。
SNMP Informantでは networkInterfaceTable 以下のNetInstance(.1.3.6.1.4.1.9600.1.1.3.1.1) に続くOctetStringを各インターフェイスのインデックスとして使う。
 

「Microsoft Loopback Adapter」 ならこう。
 
netInstance.26.77.105.99.114.111.115.111.102.116.32.76.111.111.112.98.97.99.107.32.65.100.97.112.116.101.114
最初の26で文字数、後はASCIIなり。cacti用にインデックスとして扱える部分は77以降、94桁だね。
 

これ以降のOID、netBytesTotalPerSec とかでは末尾の文字列を参照しつつ、「Microsoft Loopback Adapter」 のものだと識別するわけだが。
 
 

これが「ローカル エリア接続* 2」(だと思う) ならこう。
netInstance.31.4294967267.4294967171.4294967213.4294967267.4294967171.4294967228.4294967267.4294967170.4294967211.4294967267.4294967171.4294967211.32.4294967267.4294967170.4294967208.4294967267.4294967171.4294967210.4294967267.4294967170.4294967202.4294967270.4294967182.4294967205.4294967271.4294967222.4294967194.42.32.50
 
インデックス用には300桁もいるじゃねーかよ!!
 
 


さてここらでCactiのグラフについて。
 

冒頭で説明した環境ではインデックス部になぜか 255桁しか入りません。つまり「New graph」作成の段階で桁が落ちちゃう。
これではそれ以降のSNMPクエリが出来ない(指定したOID+桁落ちしたインデックス用の数字でクエリ=UNKNOWN)ので、まったく値がrrdに突っ込めない。
 
 

これをインデックス扱いして使うにはMySQLでCactiテーブルの改造が必要だったのでその個所をメモっておく。
 
 

まずは[poller_item] のarg1,arg2,arg3。
ここのarg1にインデックスを入れるようになってるんだけど、これがTEXT型なのに255文字で切れている、切れたOIDが入っていたので多分ここだ。
細かい理由は調べてない、UTF8だからとかバッファ容量の関係とかそういう理由かな。。
MySQLのTEXT型の説明を少し見たけどややこしいのでよくわからん。
 

とりあえず全部varchar(512) に変えてみたら、グラフの設定はきっちりできた。
 
 

これ以降はどこをやればいいかはっきり調べてないが一応触った個所を。[poller_item]を最後に気付いたので、それまで結構いじってしまった。
もしかしたら後はまったくいじらなくてもいいかもしれないが、[data_local] ,[poller_reindex]あたりは怪しいかな。
 


  • [data_local] の [snmp_index] が varchar(255) だったので512にした。


  • [graph_local] の [snmp_index] が varchar(255) だったので512にした。


  • [host_snmp_cache] の[snmp_index] が varchar(255) だったので512にした..かったけどキーだったのでUTF8のままでは1024バイトの制限を超えちゃう。
    しかたないのでUTF8を諦めラテンにした。


  • [poller_reindex] の[arg1] が varchar(255) だったのでラテンで512。




 

とりあえずこれだけやればOKだった。
どれが必要かはちょっと精査してないが、もしも同じ悩みを持った人がいたら参考にしてちょ。
 
 

それにしてもMySQLのTEXT型は定義がややこしいな。
 

2010年1月5日火曜日

MySQLを救う!...ってどういうことになんだろう?

OracleがSun Microsystemsを買収します。去就が注目されるMySQLですが、相手がOracleというRMSDBの大御所だからなのか、MySQLを救えという呼びかけがあるようです。
 
 

MySQLを救え! ≫ 請願書への署名
 

サイトでは嘆願書に署名をするよう促しており、署名することで下記の事を支持することになる。
 

MySQLに関連する将来の技術革新を保障し、MySQL を主な競争力として保護すること

 
 

で、自分の立ち位置というのを3つのパターンから選択できるようになっている。
 

  • MySQL は、GPL のもとでその開発を続けることのできる適切な第三者へ放棄しなければならない。


  • オラクル社は、クライアントのライブラリとともに MySQLを使用するアプリケーション(全プログラミング言語について)に対し、またプラグインおよびlibmysqldに対し、リンク例外を約束しなければならない。 MySQLそのものはGPL のもとでライセンスされた状態に留まる。

  • オラクル社は、アプリケーションや派生バージョン(フォーク)の開発者がコードに関して柔軟性を保つことができるよう、MySQLの過去と未来の全バージョン(2012年 12 月まで)を、アパッチ ソフトウェア ライセンス 2.0または類似の寛容なライセンスのもとでリリースしなければならない。


 
 

……正直なところよくわかりません。これまでのSunの姿勢は是するもので、Oracleは否定されるべきって事なのかな。
 
 

しかしOracleに渡すとMySQL死ぬんか?
発表によるとなんか逆のように見えるが。。。
 




 

GPLによるMySQL組み込みのエンジンのソース公開要求を撤廃するし、APIを使うだけでもコマーシャルライセンスいるという体制も撤廃。
そしてSun時代より巨額の開発費を投じ、GPL版やその他のリリースも継続するという。
どの点で不満なんだろうか...?ごめん全然わからん。
 
 



こういう運動に対し、
『嘆願するより自分でMySQL買えばいいやん』それこそ募金でもして。
とか、
 

背景を理解してない不勉強というのを承知で詮索すると、「俺たちのMySQLが金満主義のOracleなんかに~!! イヤイヤ!良くならないに決まってるぜ!」っていうようにも見えるよね。
などと思ってしまう私はオープンソースの思想を理解してないんだね、きっと。
 

2010年1月4日月曜日

「Microsoft Web Platform Installer」を使ってWindowsにWordpressをインスト ール

検証用の WindowsServer2008 に Wordpressを入れてみようと思ったのです。テンプレート制作用ね。
 

FastCGIにphpを入れてー Mysqlを入れてー と手順を考えていたのだが、「Microsoft Web Platform Installer」 を見たらWordpressがラインナップされていた。
 
[caption id="attachment_1638" align="alignnone" width="758" caption="画像:WPI2.0アプリ選択画面"]画像:WPI2.0アプリ選択画面[/caption]
 
 

ちょっと興味があったので使用してみることに、どうなるんだろうか。
 


依存関係でインストールするソフトの一覧が表示される。
 
[caption id="attachment_1639" align="alignnone" width="700" caption="画像:Wordpress依存関係1"]画像:Wordpress依存関係1[/caption]
[caption id="attachment_1640" align="alignnone" width="700" caption="画像:Wordpress依存関係2"]画像:Wordpress依存関係2[/caption]
 

おお、MySQLがある。Rewriteとかもいるなあ。
ちなみにWindowsの状態は、CGIを有効にしたIIS7を入れただけでかなり素だ。
 
 


その後必要パッケージのダウンロートとインストールがはじまる。
 
mysqlがインストールされるのでroot@localhostのパスワードを聞いてくれる、なかなか気が利いているね。
 
[caption id="attachment_1641" align="alignnone" width="700" caption="画像:Mysqlインストールの設定"]画像:Mysqlインストールの設定[/caption]
 
 
そしてしばらく待つと。。。
 
[caption id="attachment_1642" align="alignnone" width="700" caption="画像:インストール中・・・"]画像:インストール中・・・[/caption]
 
 

Wordpressのインストール設定が始まった!
 
[caption id="attachment_1643" align="alignnone" width="700" caption="画像:Wordpress固有設定1"]画像:Wordpress固有設定1[/caption]
[caption id="attachment_1644" align="alignnone" width="700" caption="画像:Wordpress固有設定2"]画像:Wordpress固有設定2[/caption]
 
 

意外とスゴい、初期設定に必要なことは一通り聞いてきて、丁寧に作られているなあと思う。ここではさすがに色々入力する必要があるのでちゃんとやろう。
SQLServer2008も入れてるんだが、さすがにDB選択のリストにはないな(^^
 
 

で、完了と。
 
[caption id="attachment_1645" align="alignnone" width="700" caption="画像:WPI2.0完了画面"]画像:WPI2.0完了画面[/caption]
 
 


IEでwordpressにアクセスすると初期画面。
 
[caption id="attachment_1646" align="alignnone" width="763" caption="画像:Wordpress初回アクセス"]画像:Wordpress初回アクセス[/caption]
 
 

ブログを表示したらちゃんとされる。
 
[caption id="attachment_1647" align="alignnone" width="779" caption="画像:ブログ表示"]画像:ブログ表示[/caption]
 
 

実に楽ちんだ、、phpもmysqlも特に何も考えることなく導入されてしまった。
これは世話焼きすぎだろうに。。。と思う反面、WEBアプリなんてこうあるべきだよねーという気もする。
 

ほかにもjoomla!やXOOPSCubeLegacy(なんとホダ塾ディストリビューション)などをはじめ、wikiなんかも自動でインストール可能な様子。
アップグレードとかはどうすんだろとか気になる点もあるが、「Microsoft Web Platform Installer」は凄いな。
 
 
 

ついでにrewriteモジュールの存在をチェック。
 
[caption id="attachment_1648" align="alignnone" width="609" caption="画像:Rewriteモジュール確認"]画像:Rewriteモジュール確認[/caption]
 
 

ちゃんといるね、web.configに設定をすることでWordpress側で指定するパーマリンクの変更も出来ることを確認した。
 

つうかwordpress側もIISで動いていることを判断するんだなあ、パーマリンクの変更画面でちゃんとweb.configを指定して、なおかつXMLを表示してくれる。
 
[caption id="attachment_1649" align="alignnone" width="820" caption="画像:パーマリンク変更画面、rewrite指定"]画像:パーマリンク変更画面、rewrite指定[/caption]
 
 

ちょっと目を離すと進歩している、油断できんなあ。
 
と思いつつ、素のwindowsだったので「web.config」ファイルを作成したつもりが「web.config.txt(※拡張子表示なし)」というテキストファイルが作成されて『あれ、Rewrite動かん。。??』とか思ってしまった。
Serverの拡張子(=ファイル名の一部を) デフォルトで隠してどーすんのよと。そっちは感心できない。