Draft IEEE802.11n と HUB 部分の全ポート GiGa インターフェースと言うのにあこがれて BB ルータを新調してみた。
同じようなものに去年の暮れに NEC から Aterm WR8500N が出たのだけど、これがずっと欲しいなぁ。と思っていた。しかし、Corega から CG-WLBARGNH と言うのが出たので、どっちにしようかと悩んでいるうちに、値段に負けて CG-WLBARGNH を買ってしまった。送料込で大体 9,500yen 位。
さて、自宅に届いて早速利用したのだけど、まぁ、サクサク動く。有線 GiGa ポートに接続した PC から RBB のスピード計測 で確認すると 70Mbps 位出るのでまぁ、速いなぁ。とは思った。
無線 LAN のほうは Draft IEEE802.11n 対応なんだけど、NotePC が IEEE802.11g にしか対応していないのでこれで試すと 13Mbps 位。おぉ。無線 LAN で 10Mbps 越えたんだ。とちょっと感激。
んならば MacBook 2GHz の Leopard で接続して確認するべ。と思い試したらなんとっ!! 700kbps しか出ない。これはひどいなぁ・・。まぁ、僕は MacBook にディスプレーとキーボードをつけて、本体はふたを閉じてまな板立てに立てて使っているのでアンテナが本体と干渉してこれくらいしか出ないのだろう。と安易な気持ちでいた。
なんせ、MacBook には GiGa ポートが付いているので、デスクトップ機のように使っている現状では無線 LAN を使う必要が無いので;-)。
さて、僕の家にはサーバがあるのだけど、BB ルータからポートフォワードしてサーバに転送するのだが、CG-WLBARGNH は 10 個しか転送できない。ダメダこらー・・。
更に悪いことにサーバは GiGa NIC を持っている、FreeBSD で言う所の if_re で BB ルータに接続しているのだけど、これが定期的に link Down/Up を繰り返すようになってしまった・・。せっかく GiGa ポート搭載の BB ルータを購入したのに頻繁に Down/Up が発生したら全然ダメじゃん・・。
以前利用していた BB ルータはそんなことは無かったので、相性問題かもしれないけど、 CG-WLBARGNH が悪さしているのかもしれない。GiGa ポートへの省電力機能って何よ?オン/オフはメニューで設定できないのかしら?
この辺りで、「ムムムちょっと動作おかしいぞ。」と思えてきたので、再度 MacBook を引っ張り出してきて、今度はちゃんとフタを明けて、キーボードもディスプレーも外して、由緒正しい NotePC の形で Draft IEEE802.11n を試してみた。
が・・。接続できない・・。Leopard は「タイムアウトしました。」と表示され、BB ルータ側のログも「認証 OK よん。」と表示されている。認証は wep で MAC アドレスフィルターをしているのだけど、 MAC アドレスフィルターを無効にして接続しようとしても Leopard は一向に接続できない。
しかし、他の NotePC や iPod Touch は IEEE802.11g で何の問題も無く接続できている・・。
あぁ・・。もうイヤになった・・。やっぱ NEC のにしておけば良かった・・。などと思い始める。でもって買ってきた CG-WLBARGNH の箱を見るとなにやらキャンペーンをやっている。
http://corega.jp/cp/005/
「つながらなかったらコレガが直接 “返金・返品” 受け付けます。」ってのをやっているではないかっ!! これはラッキー。と言うことで、早急に送り返したのでした。現在はコレガからの返事待ちです。
さて、ここでもう一度再確認してみましょう。
・今まで BB ルータに(100Mbpsだけど)接続していたサーバを CG-WLBARGNH に接続するようにしたら Link の Up/Down が頻発するようになり、サーバの運用に支障が出てきた。なお、Down タイムは 2,3 秒だが、NIC の復旧時間はもっとかかるため、実質一分程度 LinkDown 状態となる。
・ IEEE802.11g 対応の NotePC や iPod Touch は無線 LAN に接続でき、10Mbps 程度の速度が出るが、Draft IEEE802.11n の MacBook 2G は速度が出ない、もしくは全く接続できない状態しか体験できなかったので、CG-WLBARGNH の仕様にうたわれている Draft IEEE802.11n の恩恵がまるで受けられない。
以上の理由により、今回のキャンペーンに申し込んだのですが、この判断は妥当?
#Corega 買う時点で間違っているよ。って解答は却下;-)。本当は Cisco Catalyst 3560-E 辺りが欲しいんだから。自宅にはオーバースペックなんだけどねぇ;-P。
デーモン・サーバ・ネットワーク
FreeBSD で Csico VPN。
iPod Touch で Cisco VPN やって、それだけで満足しているのもまた変な話でして。FreeBSD でもきっちりと Cisco VPN を使えるようにしましょう。
まぁ、iPod Touch で Cisco VPN の所でも書いたのだけど、Cisco ルータ側をいじる権限は僕には無いので何を利用しているのか全然解らないのです。ただ、単にアカウント情報をもらっただけ。
Windows 用のクライアントはあるみたいですが、今回は FreeBSD でやります。
それらしい ports は無いかしら?とか調べていたら /usr/ports/security/vpnc と言うのがありました。早速 make してインストールして起動してみましょう。あぁ。インストールのオプションはフルオプションつけたほうが良いかもしれません。認証のためのオプションだと思うのですけどねぇ。
/usr/local/etc/vpnc.conf に設定ファイルがあるのでこちらにアカウント情報を記述します。設定内容は書きませんが;-)。設定寺の問題点と言うか、難儀した所。 IKE Authmode hybrid と言う設定があると Cisco 側と無事に接続できないみたいです。なので、この行をコメントアウトしました。Cisco ルータとの認証にまつわる設定だと思うのだけどねぇ。この行があるとうまく接続できませんでした。
そして、VPNなんてのはずっと接続しておく必要は無いので、必要な時のみデーモンを起動するだけで十分でしょ。となるので、/usr/local/etc/rc.d/vpnc onestart とかして起動します。なんか、簡単に Cisco に接続してアドレスが降って来てしまいました(^^;;。
VPN が成功すると tun0 インターフェースが生えて来ます。ここに網内の IPv4 アドレスが付加されました。それにしても DNS が降ってこないのでやはり /etc/hosts に必要なホスト名は記述する必要はありますが、まぁ、いとも簡単に利用できてめでたしめでたし。と言う感じでしょうか;-)。
あー。一点。 /usr/local/etc/rc.d/vpnc onestop とかして vpncd を停止させるんだけど、tun0 が削除されないです。この後、もう一回 vpncd を起動すると tun1 を利用するようになってしまいます。なので、デーモンを停止した後は ifconfig tun0 destroy して、インターフェースを削除したほうが良いですねぇ。
if_bge ってすごいねぇ。
ちょっとワケ有って二台の PC の間の速度計測などをしてみた。投入した PC は HP DL320G5p。OS は FreeBSD/amd64 7.0-RELEASE と FreeBSD/amd64 6.3-RELEASE。
DL320G5p は Broadcom の BCM5715C 10/100/100 PCIe Ethernet Controller が付いている。 if_bge ドライバで認識します。
この二台のサーバ間のトラフィックを計測する。と言うのが今回の検証。検証ツールとしては ports/net/pchar を使用。 pathchar もあるのだけど、こいつは amd64 では make できないのである。
と、言うことで行った検証は以下の通り。
1. 二台のサーバをクロスケーブルで接続し、その間を pchar で調べる。
2. 二台のサーバの間に Cisco1812J を設置し、サーバ間を pchar で調べる。
と、言うことで早速 pchar の結果を見ることにしてみましょう。
まずは 1. の結果から。
|
クロスケーブルで接続した場合 1.2Gbps の速度が出ているとこが伺えます。 NIC がすごいのか、はたまた if_bge のデバイスドライバがすごいのか。驚きの速度です。まぁ、うのみにはしていないのですけどね(^^;;。
続いて 2. の試験結果です。
|
Cisco1812J は 100Mbps のポートなので 1G はでないとしても半分の 50Mbps も出ていないと言う結果になりました・・。
サーバ側でのクロスケーブル接続って重要なんだなぁ。と解った瞬間なのでした・・。まぁ、pchar の値が的確な数値ではないとしても 1812J、もう少しがんばれー。と、声援を送りたくなるのも事実ですが;-P。
次回は 3750 を投入した値が掲載できれば良いな。と思ったりもしていますが;-)。
DSS-6.0.3 サーバは FreeBSD で動いています。
ports-current を追いかけていたら DSS が 6.0.3 になっていた。
過去のこのブログでも「動画配信。」と「DSS-5.5.4 の使い方。」と、二回ほど取り上げてきた。今回はその三回目で最新版についてお届けして参りましょう。
まずは、実際にストリーミングをご覧ください。既に YS-11 のストリーミングは無いので新しいのを用意しました。どこの線路が解るかしら?コメントに路線名を書いていただいても結構です;-)。
-> 電車からの風景 -> rtsp://qtss.icmpv6.org/train.sdp
この動画は大体二ヶ月位は配信できるように頑張ってみます。
さてと。ここに用意したサンプルのストリーミングですが、現在、MacOSX の QuickTime7 でしか、素直に再生できません。 WindowsXP 上の QuickTime でも再生できません。
コンテンツ自体は デジタルカメラで撮ったものを QuickTime7.5 の Pro でストリーミング用に変換したものです。Video Codec は H264。 Audio Codec は AAC と言う、標準的なもので、それぞれ ffmpeg と faad で再生はできるはずです。
FreeBSD 上の mplayer で再生を試みましたが、とあるオプションを指定しなければ見ることができませんでした。mplayer をお使いの方はコマンドラインから以下を実行してみてください。
|
“-fps” と言うオプションと -rtsp-stream-over-tcp と、言うオプションを付加しなければ再生できない。と、言うことが解りました。このオプションをつけると無事に再生できるようになります。
そもそも、RTP って UDP だったかなぁ?オプション的には TCP で流すぜぃ。って雰囲気っぽいんだけど・・。
DSS-5.4 ではこれらのオプションが無くとも再生できていたので DSS が 6.0.3 になってから色々と変わったのだろうとは思うのですが、まだ調査していません。暇をみつけて色々確認してみたいと思います。
ちなみに、コンテンツのほうは特に指定はありません。けど、DSS サーバの設定にもこれといったものは無いのです・・。余計な設定が無い(できない)というのはいかにも Apple らしいのですけど;-)。
最後にですが、DSS-6.0.3 の日本語メッセージを「ここ」に置いておきます。
最新版の DSS-6.0.3 ですが、もう少し調査が必要なことだけは確かです。
後、僕は Windows ユーザではないので Windows 上の QuickTime でどうして再生できないのかを深く追うことはしないと思います。あしからずご了承ください。
fon を設置してみた。
今、fon は LiveDoor と提携したのでバーゲンセールをやっている。
http://www.tsukumo.co.jp/fon/
IEEE802.11g/b の無線 AP が 1,000yen で買えるのでこれは買わない手はありません。僕は結局二個買いました。一個は自宅で、もう一個は移動時に iPod Touch のために使うことにしました。
本当は PCI GW-MF54G2 を買おうとしたのだけど流通していないし、売っていたとしても定価(6,980yen)でしか売っていないのでやめました。
と、言うことで fon の利用方法ですが、まず、何はともあれユーザ登録します。そうするとその時のユーザ ID とパスワードで他の人が設置した fon を利用することができるようになります。
さて、FON ソーシャルルーター La Fonera (ラ・フォネラ) ですが、僕は DHCP が動作しているネットワークに接続しました。そこで解ったことですが、
・FON_ で始まる SSID はみんなで利用できる 192.168.182.0/24 のネットワーク
・MyPlace で始まる SSID は自宅用のネットワークで 192.168.10.0/24 のネットワーク
と、言う、二つのネットワークが現れます。default Gateway は多分 DHCP で所得したアドレスになります。ただ、これは僕の家の場合だけかも知れませんけど。
なので、FON 自体は二つのネットワークをルーティングしていると言うことになりそうですね。それで自宅で利用する側の MyPlace 側はセキュリティが保たれている。
ちなみに FON_ で始まるネットワークはウェブ認証です。MyPlace で始まるネットワークは機器の裏にあるシリアル番号を WPA キーとして入力することによりログインできます。
さてと。これで僕は旅の時は FON と iPod Touch を持っていけばいつでもどこでもネットワークに接続できる環境ができるようになりました;-)。
ちなみに 1,000yen セールは 4/6 までです。
imap4-SSL サーバ構築。
JailBreak をやめた iPod に「ソフトウェアアップグレード」したら SSH トンネルが使えないので imap4 を SSL 化する必要がでてきた。
と、言うことで自宅のサーバを imap4-SSL に対応にしてみた。
うちで動作しているサーバは FreeBSD の 6 系 STABLE で ports は 最新の ports-current を追いかけている。動作しているメール環境は sendmail+procmail と courier-imap。つまり、Maildir 形式を利用していることになります。
メールの送信はこの際やめておこう(つまり sendmail の SSL 化は止めておこうと言う意味です(^^;)。iPod Touch でもメールの送信が可能で SMTP サーバを設定する項目はあるのだけど、無線アクセスポイントを利用したときにメールを送信する可能性が有るのかと言えば、あんまりない・・。メールの送信は携帯でやることにしよう(^^;;。
と、言うことで imap4 サーバと pop3 サーバのみを SSL 化することにした。
さてと courier-imap を SSL 対応するのだけど、あまりにも簡単なので驚いた。sendmail+procmail で Maildir 形式に対応した後 ports から courier-imap をインストールするんだけど、courier-authlib と courier-authlib-base も合わせてインストールされます。
全部で以下がインストールされます。courier-imap ってどっかのバージョンで認証方法ががらっと変わったので設定方法も思いっきり変わりました。今回は courier-imap-4.3.0 についてです。
courier-authlib-0.60.2
courier-authlib-base-0.60.2
courier-imap-4.3.0,2
ふつーの imapd と pop3d は現在ではもう既に動いているのですが、インストールは ports を make install しただけで動き出します。すごいっ!! そして Maildir 形式にするには procmail もインストールして /usr/local/etc/procmailrc は以下のように一行だけ書く必要がるんだけど・・。
|
けど、そーすると sendmail.cf も procmail に対応する必要があるなぁ。/etc/mail/freebsd.mc に以下の行を追加して、/etc/mail で make を実行すれば新しい sendmail.cf と submit.cf ができますので、これで sendmail は MDA に procmail を利用して Maildir に配達てくれるようになるでしょう。
|
make install したらすぐに使える courier-imap だけど imapd の設定は一ヶ所だけ直しました。Thunderbird を使っているとセッションが足りないとか言われるので同一 IP から受け付ける imap のセッション数を増やす必要があります。以下の設定にすれば大丈夫。
|
続いて imap-SSL と pop3d の設定についてですが、こぉれもちょー簡単。結局なぁんもやること無く動き出してしまった。と、言うのは語弊があるんだけど /usr/local/etc/courier-imap/ の下の imapd.cnf と pop3d.cnf を書いてあげる必要があります。これは SSL の証明書を記述するファイルです。自分のサーバに合ったものに書き直してあげましょう。
二つのファイルが準備できたら後は以下のコマンドを実行します。
|
上記コマンドを実行すると /usr/local/share/courier-imap/ 内に imapd.pem と pop3d.pem と言う証明書が作成されます。後は /usr/local/etc/rc.d/ にある courier-imap-imapd-ssl.sh と courier-imap-pop3d-ssl.sh を実行して起動するだけ。あ、当然、/etc/rc.conf は編集してね;-)。
iPod Touch で接続する前に、まず Thunderbird などで SSL 接続できるか、また、証明書の塩梅を確認してみるのが良いでしょう。非常に簡単に iPod Touch 対応の imap-SSL サーバができてしまいました;-)。
と、言うことで認証のことを書くのを忘れてしました(^^;;。courier-imap の認証部分は courier-authlib がやってくれています。僕はメールを受信するユーザを作成しているので認証は /etc/passwd でやることになります。認証の設定は /usr/local/etc/authlib/authdaemonrc でやるのですが、/etc/passwd で認証するのであればどこも変更する必要はありません。
ただ、/etc/passwd の方ではメールを受信するだけのユーザの場合は shell の設定は /sbin/nologin にしておいたほうが安心でしょう。後は /etc/mail/alias を上手に使うと言う感じですかねぇ。
net-snmp-5.3.2 と /etc/hosts.allow。
FreeBSD の ports を cvsup したら net-mgmt/net-snmp が 5.3.1_7 から 5.3.2 になった。
snmpd を再起動して、リモートのマシンもしくは localhost から snmpwalk で接続しても REFUSED され、接続できなくなってしまった。 cat /var/log/snmpd.log してみると接続してくれない状態が良く解るのであるが大体以下のログを出力している。
|
ちなみに、 /etc/hosts.allow の設定は 5.3.1_7 の時からしていたのと変更はない。snmpd : ALL : allow はコメントアウトして、snmpd : ALL : deny を付けている。後はアクセスを許可するネットワークやホスト、ドメイン名を allow している設定をしている。
でもって 5.3.2 にした途端に接続できなくなってしまった・・。何回か試行錯誤を繰り返した結果、以下の行を記述すれば接続できることを発見。
|
しかし、なぜに NULL アドレスを設定せねばならんのじゃ? snmpd が IP アドレスを正しく取れていないバクであることは明白であるような気がしてならない・・。とほほ・・。
かくして、自宅サーバは SNMP の取得が復活したでした。ふぅ。
iPod Touch のメールを ssh トンネルで。
前回のブログで iPod Touch を JailBreack したと書いた。でもってメールソフトは iPhone のファームから抜いて iPodTouch にインストールした。
メールソフトも利用できて大変嬉しいのだけど、うちのメールサーバは ssl に対応していないので POP もしくは IMAP4 の時に生パスワードが流れてしまう。
iPod Touch の性格上、野良 AP (そこいらに落ちているアクセスポイントのこと)を利用する場合も多々有るわけで、そう言うのを利用するとアクセスポイントを置いた人が tcpdump を仕掛けていないとも限らないし、ポートスキャンしてくるかもしれない。なので、POP/IMAP4 の時は是非とも暗号化して利用したいものです。
幸い、JailBreack した iPod Touch には ssh が入っているのでこれを利用して POP サーバ、もしくは IMAP4 サーバに ssh トンネルを掘ることが可能です。
と、言うことで簡単に ssh トンネルを掘るスクリプトを書いてみました。利用方法は以下の通り。
1. POP/IMAP4 サーバ上に自分のアカウントが存在し ssh ログインできること。
2. メールのアカウント設定で POP/IMAP4 サーバではなく localhost に接続するようにすること。
3. ターミナルから stun.sh が実行できること。
これだけです。まぁ、1. はちょっと敷居が高いかも。けど、それがクリアできれば特に問題は無いでしょう。以下の URL からダウンロードできます。
http://www.icmpv6.org/Prog/MacOSX/stun.sh
利用方法ですが、以下の通り。
1. コマンドオプションは三つ。s(start) t(stop) c(check)。
2. s オプションで Mail を kill してから ssh トンネルを掘りますが、接続できた時はパスフレーズを聞いて来るので入力。
3. t オプションで Mail と ssh トンネルのプロセスを殺します。
4. c オプションで Mail と ssh のプロセス番号を表示します。
注意点としては、ssh トンネルを掘る前に Mail が起動していると POP/IMAP4 サーバに接続できません。なので、s オプションの時に Mail を kill しています。c オプションで ssh プロセスの番号が Mail より若いことを確認します。
後、一回スリープしたら ssh セッションが切れるので毎回 t して s してあげる必要があります。
こんな所でしょうか。ダウンロードしたら stun.sh の上の環境変数にサーバ名とユーザ名を指定してください。default で localhost の port:143 を使うようにしています。
もしダウンロードした人がいたらコメントなど頂ければと思います。
ADSL増速。しかし・・。
うちの家は ADSL の固定 IPv4+IPv6 の /48 (IIJmio)と マンションタイプの B フレッツのマルチホームである。
最近、自宅のサーバのウェブサーバにアクセスが増えてきたので ADSL 側を 12Mbps から 47Mbps のフレッツ・モアIII と言うのに変えてみました。
しかし、モアIIIは品質悪いなぁ。ブツブツ切れまくりなんだけど・・。NTT 側でなんちゃらって機器を変えてもらったのだけどそれでも直らない。しょーがないので今までのに戻そうかなぁ・・。
ちなみに自宅のサーバは mpd で PPPoE して それを ipnat して自宅 LAN はプライベートアドレスで利用している。更にこのサーバは NIC がもう一枚刺さっていて、DHCP で マンションタイプの B フレッツのグローバルアドレスが付いているのだけど、IIJmio 側から入ってきたパケットはそっち出ていって(こっちが default route)、Bフレッツ側のパケットははやり Bフレ側に流さなければならないのでポリシールーティングが必要なのである・・。
こーいうことは絵が無いと、文章だけではまったく解らない。と言うことはよおーく知っているんだけどね(^^;;。
それにしても ADSL をなんとかしないとなぁ・・。
いっそのこと IPv6 を捨ててしまえば、IIJmio からさくらに乗換えて値段はうんとさがるし、FreeBSD での PPPoE やめてフツーの BB ルータでどうにでもなるので、やはりそう考えると、IPv6 は不要なものなのかなぁ・・。
MacOSX に sendmail-8.14.1 をインストール。
僕は Core2Duo な MacBook を持っているんだけど、以前から MacOSX で納得のいってなかったのは、 MTA が IPv6 に対応していないこと。そー。MacOSX では Postfix が default で入っているのだけど、こいつが IPv6 に対応していないX-(。
なので最近は、FreeBSD の sendmail のバージョンがアップする度に MacOSX に sednamil をインストールしている。今回はそのインストール方法についてまとめて掲載してみよう。まぁ、一種の自分の忘却録みたいなモンだけどね(^^;;。
僕の手元には FreeBSD があるので MacOSX に最新版の sendmail をインストールするときには FreeBSD が必須となっています。以下、MacOSX に sendmail をインストールするときに必要なもの。
1. FreeBSD の /etc/mail 配下一式。FreeBSD STABLE などから tar で固めて持ってきましょう;-)。
2. /usr/ports/mail/sendmail/files/site.config.m4 と site.config.m4.ipv6
IPv6 対応にする sendmail にするためには以下のコマンドを打って site.config.m4 を作成すれば良いでしょう。
|
3. sendmail-8.14.1 のソースコード。
さぁ。準備は整いましたか?では続いて sendmail の build と行ってみましょうか。
1. MacOSX 上で sendmail のソースを展開します。
2. Build スクリプトを実行します。大体以下のような感じ。os と rel は uname -a コマンドを実行し、自分の MacOSX のバージョンに合わせます。
|
次に build が終わったらインストールしますがその前にディレクトリを掘って上げます。なお、Build install では mail.local をインストールしてくれないのでこれだけは手でインストールします。また、sendmail.cf を作成するために cf ディレクトリを /usr/share/sendmail/ 配下にコピーします。
|
以上で sendmail のインストールは完了です。
FreeBSD から /etc/mail 配下を持って来ているのでそれをそのまま MacOSX に展開します。/etc/mail 配下では bsdmake とたたくと m4 マクロから sendmail.cf を作成してくれることでしょう。
しかし、これだけでは sendmail が動作しないのが MacOSX です。sendmail が正しく動作するために環境を整える必要があります。
まずは NetInfo マネージャで sendmail が動作するユーザを登録します。これは FreeBSD の /etc/passwd、group ファイルと同じでいいでしょう。 以下の二つを NetInfo マネージャ から users と groups に登録します。
|
|
次に各種ディレクトリの整合性を取ります。sendmail 用のディレクトリを作成します。また、sendmail は自分が参照するディレクトリが 775 だと動かないのでそれを直してあげる必要があります。裏を返すと MacOSX は全然安全では無い OS。と言うことですね・・X-(。
|
さてと・・。最後の三つの chmod でディレクトリのバーミッションを変更していますが、これやると、一般ユーザから NetInfo マネージャが動作しなくなります(ユーザ情報の登録・変更などができなくなります)。怖いですねぇ・・。しかし、775 になっている OS はそーそー使いたくないものです。この際だから 755 に変更してしまいましょう。
NetInfo マネージャが使えなくなると困るので、ログイン画面から root でログインできるようにします。NetInfo マネージャで root にパスパードを設定してあげれば良いです。そうすれば、NetInfo マネージャを使いたい場合は、いつでも root でログインして利用することができます。
以上で sendmail のインストールは完了です。後はスタートアップスクリプトを書くだけです。まぁ、あれなんですけど、/etc/hostconfig から起動するようにしましょうかね。以下の行を /etc/hostconfig に書きます。
|
でもって起動スクリプトSendmail を用意しました。これを /Library/StartupItems/ に展開すれば、起動時に sendmail が起動するようになるでしょう。
さて、これで以上ですが、あなたも MacOSX で IPv6 な MTU の世界をお楽しみください;-)。