2012年2月18日土曜日

家庭用LAN機器に、実際何台まで接続できるのか。とその解決法

中小企業だと家庭用のLAN機器を使うことが多いはず。
理論上は250台位まで接続できる(IPアドレス的な意味で)が、
実際、何台まで接続できるのか。
リンク
まずはbuffaloの公式QA
[アンサーID: 326]
1台の無線親機に対して、無線パソコンは何台まで接続できますか。
公開 2010年08月18日 10:57 AM | 更新 2011年09月29日 11:51 AM
http://buffalo.custhelp.com/app/answers/detail/a_id/326/related/1/session/L2F2LzEvdGltZS8xMzI5NTc0MDU0L3NpZC9BaXpHTl9Raw%3D%3D
ご利用の環境により異なりますが、以下を目安にご利用ください。

1台の無線親機に対して、無線パソコンは10台程度を目安にお使いください。
ネットワークに負荷のかかる環境では、10台以下でご使用することをお勧めします。
yahoo!知恵袋
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1314493273

・バッファローの「WZR2-G300N」で10台を越えたあたりでたまに落ちるようになる。
・もう一台余っていた「WZR2-G300N」を追加。ブリッジ接続(ルータ機能なし)して台数を分散。15~20台使用(合計)で1日一回くらい落ちる。

なるほど妥当な線である。
僕が昔やってみたところ、PLANNEX社製のルータで、20台を超えると、ぶつぶつ切れるようになった(ルータがハングアップしだした)。
yahoo知恵袋の人はブリッジ接続で台数を増やしているが、ブリッジ接続を(恐らく)WDS(リピータ機能)で増やしている可能性が高いので、あまりお勧めしない。buffaloによると、どうもWDSはルータに負荷をかけているようなのである(リンク

では、どうすればこの壁を越えられるのか。

まず負荷の内容を考えてみる。
ルータがやっていることは何か。
dhcpでpcに対し、IPアドレスを配布し、DNSで名前解決、そこからインターネットにつないで、得られたデータを要求したpcに戻す。

要は、dhcpサーバ、ネームサーバ(ゲートウェイサーバ)、プロキシサーバ(キャッシュサーバ)の3つをアウトソーシングしてやればいいのだ。

これで僕の構築した環境は現在、有線無線を含めて100台程度のpcをぶら下げても落ちない仕組みになっている。
これらサーバ群は、ATOMを使った低スペックマシンで構成され(メモリは積んでいるけどね)、電気代も大したことはない。
core i3なら十分1台に集約できるだろう。

こんな便利なことも無料で出来る。そう、Linuxならね。

まずは、dhcpサーバを立てることをお勧めする。Linux初心者でも凄く簡単に立てることが出来る。
そしてこれだけでも、驚くほど接続台数が増える。

無線LANでのTIPSとしては、有線からアクセスポイントモードで無線を飛ばす。
buffaloだと、有線LANのIPアドレスを適当に変え、無線LAN設定でSSID関連を設定するだけでいとも簡単にアクセスポイントを増やせる。
ただ、どうしてもインターネットと繋がっているルータ部分の負荷を上記のように取り除かないと、結局根っこのルータが落ちるので注意。

うちの環境は、
民生(家庭用)ルータ-ゲートウェイサーバ(プロキシ込み)-ハブ-dhcpやらアクセスポイントやらクライアントpcやら
という構成。

参考になれば。

2012年2月4日土曜日

mondo rescueのレストア。ソフトウェアRAIDのバックアップから仮想環境に復元する

菌XP_SP1の...なページである

を参考に頑張る、と。
ページは
http://www.bondoffamily-net.com/~kinta-chan/techknow/Linux/mondo/mondorestore.html

画像付きで詳細に説明してくれている。

もしもの時用に、文章のみ引用させて貰います(引用にしては長い・・・か・・・)。
画像付きの方が分かりやすいので、同じ事を考えている人は上記URLに。

僕の所での注意点は、HDDのroot(0,3)とかを編集するのを忘れた(大抵0か1)。
そして何が悪かったのか(適当にしたのが原因だろうけど)、
No root device found
sleeping foever
と出て起動しなかった・・・ので、ubuntuのlivecdでデータをサルベージしましたとさ・・・。


因みに、今回分かったことは、mondorescueでバックアップしたisoの中に、
archivesディレクトリがあり、そこに圧縮された各ファイルが入っている。
元のパーミッションがゆるいものは、解凍すれば中身が分かる。
rootの持ち物とかだと、末尾にzがついて、中身が化けていました。

--------------------------------
仮想環境にリストアする場合は、まず、仮想環境を作り、"CD/DVDドライブ"にはバックアップしたISOイメージを指定したあとで仮想環境を開始させます。
実環境に戻す場合は、まず、BIOSでDVDドライブ(またはCDドライブ)から起動するように設定します。

起動したら、"boot:"プロンプトで"expert[enter]"を入力します。
viで"/tmp/mountlist.txt"を編集します。

1~3行目の先頭を変更します。

/dev/md0 ⇒ /dev/sda1
/dev/md1 ⇒ /dev/sda2
/dev/md2 ⇒ /dev/sda3

1~3行目の最後のuuid(8桁-4桁-4桁-12桁の文字列)を削除します。文字列は環境によって違います。
4行目以降をすべて削除します。
できあがりは下の画面のようになります。

編集が終わったら、[esc]キーを押して、":wq[enter]"で保存します。
"mondorestore[enter]"と入力して、リストアプログラムを起動します。

"Interactively"に移動して"[enter]"を押します。
バックアップしたメディアの種類に移動して"[enter]"を押します。この例ではバックアップはDVDに作成しています。
下の画面の"/dev/sda2"のところに表示されている、"Size (MB)"の数値と各マウントポイントの対応をメモしてください。

この例では、"dev/sda1~3"の3つのパーティションが存在します。この3つのパーティションサイズの合計がメモしたサイズを超えないように配分する必要があります。ここでは、以下のように配分しています。
旧デバイス(パーティション)名 新デバイス(パーティション)名 マウントポイント サイズ
/dev/md0 /dev/sda1 /boot 512MB
/dev/md1 /dev/sda2 swap 4096MB
/dev/md2 /dev/sda3 / 257536MB
まず、一番上にある、"/dev/sda3"のところに移動し、"[enter]"を押します。
"Size (MB)"のところに移動し、"257536"を入力します。
"OK"のところにカーソルを移動させ、"[enter]"を押します。

最初の画面に戻りますので、入力した内容を確認します。
同じ要領で"/dev/sda1"のパーティションサイズを設定します。

同じ要領で"/dev/sda2"のパーティションサイズを設定します。

すべてのパーティションサイズの設定が終わったら、設定内容をもう1度確認します。
設定内容に間違いがなければ、"[tab]"を押して、"OK"のところにカーソルを移動させ、"[enter]"を押します。
確認の画面が3つ表示されますので、すべて"Yes"を指定して"[enter]"を押します。


リストアが始まります。
途中でメディアの差し替え指示が表示される場合がありますので、表示されたら、指示に従ってメディアを入れ替えます。
仮想環境の場合は、、、、、まだ、試していません、、

この画面は"Yes"を選んで"[enter]"を押します。
この画面は"Yes"を選んで"[enter]"を押します。
この画面は"OK"を選んで"[enter]"を押します。
シェル画面が表示されます。
viで"/etc/fstab"を編集します。
10、12、14行目の先頭にあるuuidを先ほどメモしたマウントポイントの対応に従って、"/dev/sda1~3"に変更します。

できあがりは下の画面のようになります。先頭が"#"になっているところに、"/dev/md0~2"の記載が残っていますが、コメント行なので気にする必要はありません。

編集が終わったら、[esc]キーを押して、":wq[enter]"で保存します。
viで"/etc/mtab"を編集します。
1行目の"/dev/md2"、12行目の"/dev/md0"の2ケ所を、先ほどメモしたマウントポイントの対応に従って、"/dev/sda1~3"に変更します。この例では、1行目"/dev/md2→/dev/sda3"、12行目"/dev/md0→/dev/sda1"になります。

できあがりは下の画面のようになります。

編集が終わったら、[esc]キーを押して、":wq[enter]"で保存します。
"/etc/raidtab"を"/etc/raidtab.old"等にリネームします。
"/etc/mdadm"を"/etc/mdadm.old"等にリネームします。
"mkinitramfs"を実行してイメージを再作成します。なお、仮想環境の場合は、やらなくても特に不具合はないみたいですが、、、
参考文献やmondorescueのメッセージでは、"mkinitrdを使用せよ"となっていますが、ubuntuにはこのコマンドはありません。
"grub-install"を実行してgrubを再インストールします。
"grub-mkconfig"を実行して、grub.cfgを再作成します。ubuntuでは、この作業をやらないと正常に起動できませんでした。
"exit[enter]"を入力してシェルから抜けます。
この画面は"Yes"を選んで"[enter]"を押します。
入力フィールドに"/dev/sda"が入っていることを確認し、"OK"を選んで"[enter]"を押します。
この画面は"OK"を選んで"[enter]"を押します。
viが起動され、"/etc/fstab"の編集状態になりますが、先程編集済ですので、[esc]キーを押して":q[enter]"で終わります。
viが起動され、"/etc/mtab"の編集状態になりますが、先程編集済ですので、[esc]キーを押して":q[enter]"で終わります。
viが起動され、"/boot/grub/grub.cfg"の編集状態になりますが、先程編集済ですので、[esc]キーを押して":q[enter]"で終わります。
viが起動され、"/boot/grub/device.map"の編集状態になりますが、このファイルは不要ですので、、[esc]キーを押して":q[enter]"で終わります。
この画面は"Yes"を選んで"[enter]"を押します。
下の画面が表示されたら完了です。

バックアップのメディアをドライブから抜き(稼働環境では仮想マシンのハードウェア設定にある、CD/DVDを物理ドライブに変更してから)、リブートします。これで正常にubuntuが起動します。