本の虫

著者:江添亮
ブログ: http://cpplover.blogspot.jp/
メール: boostcpp@gmail.com
Twitter: https://twitter.com/EzoeRyou
GitHub: https://github.com/EzoeRyou

アマゾンの江添のほしい物リ妖怪ハウスのネット環境改善作業ストを著者に送るとブログ記事のネタになる

妖怪ハウスのネット環境改善作業

筆者が妖怪ハウスにやってきたとき、妖怪ハウスのネット環境は悲惨だった。

まず、ISP提供のモデム兼ルーターと、無線LANルーターが床に落ちている。配線も他の様々なコードとからみあって、わけがわからない状態であった。5LDKの家でLANケーブルが床を無造作にはっている。

そして、無線LANルーターが貧弱すぎて遅かったし、すぐに途切れた。有線でもやはり遅かったし、時々動かなくなることが会った。

住人の話では、「夜に特に遅くなる。0.01Mbpsしかでないときもある。誰かがP2P型のファイル共有かなにかで帯域を使っているのだろうか」ということであった。

そもそも、ISPとの契約書すらなくしていた。一体、回線がどういう契約なのかすらわからない。VDSLだろうか。光ファイバーが来ているのだろうか。それを調べようにも、機器が床に落ちて、複雑に絡み合ったコードの中に埋まり、確認ができなかった。

色々と調べた結果、回線はフレッツ光だった。いくら住人と客人で使うからと言って、200Mbpsもあれば十分なはずだ。なぜこんなに遅いのか。

その帯域というのも、それほど狭くはない。試してみれば、100Mbps以上は余裕で出る。問題は、帯域は広いのだが、なぜか帯域を観測すると波がある。数秒100Mbps以上でて、数秒落ち込むというサイクルを繰り返している。

それに、この家の住人で、P2P型ファイル共有ソフトウェアを使えるだけの十分な知識を持っていそうな人間は数人しかいない。プライベートネットワーク内におけるファイル共有はかなり発見できるが、これは、不自由なWindowsや不自由なMac OS Xがデフォルトで設定しているものにすぎない。それに、これは1Gbpsのプライベートネットワーク内で完結しているものであり、インターネット上には出て行かない。

まてよ・・・ひょっとしてルーターのせいなのだろうか。考えてみれば、ISP提供のルーターは、このようなシェアハウスの環境を想定していない。何人も住んでいて、客人も来て、それぞれに数台はコンピューターを使っていることを考えれば、ISP提供の非力なルーターが耐えられるわけがない。

それにしても、なぜこんな環境で、住人は暮らせているのだろうか。インターネットは、もはや水や電気と同じく、基本的人権に加えられるべきインフラだ。こんなに貧弱なネット環境はありえない。

仕方がないので、筆者自ら、妖怪ハウスのネット環境を強力に作り変えることにした。ルーターが確認できないほどこんがらがった電源ケーブル、LANケーブルを整理し、各部屋に送るLANケーブルも壁に固定しなければならない。また強力なネットワーク機器が必要だ。

筆者は秋葉原に行き、様々な機器を購入した。だいぶ痛い出費だったが、仕方がない。

まず、電源ケーブルを整理した。複数の電源タップに、テレビやルーター機器などの抜いてはいけないコンセントと、抜いてもいいACアダプターなどが、乱雑にささって、ゴルディアスの結び目よろしく、複雑に絡み合っている。残念ながら、ここではかの大王が取ったような画期的な手法を取ることはできない。一つ一つ結び目を解いていかなければならないのだ。

そもそも、なぜISPレンタルルーターと、無線LANルーターが、床に落ちて電源ケーブル類と絡まっているかというと、Ethernetポートのためだ。ISPレンタルモデムと無線LANルーターのポートすべてに、LANケーブルが刺さっている。元は本棚の上に設置していたそうだが、ケーブルに引っ張られて床に落ちたまま、放置されていたのだ。

Ethernetポートが足りないから、こういうことが起こるのだ。ポートがルーターにしかないから、そこに刺してしまうのだ。この問題を解決するためには、ポート数の多いスイッチングハブを使い、ルーターからケーブルを取り除く必要がある。たまたま、同居人が5ポートほどあるBUFFALOのハブを持っていたが、これをネットワークに接続すると、なぜか家中のネットワーク全体が不安定になる。壊れているのだろうか。

秋葉原で色々と探した挙句、筆者はNETGEAR GS116v2 16ポート ギガビットノンインテリジェントスイッチ (省電力製品) GS116-200JPS (本体ライフタイム保証)日本電気 AtermWG600HP PA-WG600HPを買った。

特に選択に意味はない。BUFFALOという安かろう悪かろうの粗悪な製品を避けたかったからだ。

さて、もともと、ルーターからLANケーブルを排除する目的で、Netgearの16ポートのスイッチングハブを導入し、ISPレンタルルーターへの接続を一本にしたところ、なんと、ネットワークの不安定さが、だいぶ解消されてしまった。なるほど、ISPレンタルの貧弱ルーターのEthernetポートをすべて埋めると、負荷がかかりすぎてしまうのかもしれない。それにしても、スイッチングハブというのは、実は意外と高度なことをしているのだな。いままで、スイッチングハブの存在を侮っていた。単にLANケーブルを分割する程度の認識しか持っていなかった。今回買った、このNetgearの製品は、ノンインテ入りジェントという名称が入っているが、どうやらこれは、同社の他の製品に比べればノンインテリジェントという意味らしい。さらに高価なスイッチングハブには、ハブ自体にQoS機能などがあり、ハブにログインして設定できるのだという。

さて、そして、今までの56Mbpsでしかリンクできない貧弱なBaffaloNECの無線LANルーターを、NECのルーターで置き換えた、このNECのルーターの設定UIはとてもクソで、初回ログインはクソみたいなわけのわからない、しかもまともに設定できずに使い物にならない、そもそもまともに設定して突破することもできない、自称簡単設定UIを表示し、しかもその設定を済ませなければ詳細な設定UIにアクセスできないとあって、非常に難渋した。幸い、このNECのクソUIのルーターに詳しい知人が、一度ログインしたまま、もう一度ログインすると、通常の詳細設定UIが表示されるという助言をもらったので、なんとか、この自称簡単設定UIを突破することができた。いったい何なのだ、このクソUIは。

しかも、詳細設定のUIも、設定の保存と設定の摘要が分かれているという、これまた訳のわからないクソUIだった。いったい、どこのバカがこんなクソUIを設計したのだ。

さて、NECのルーターのUIは、本当に本当にとてもとても排泄物だった。最初、設定のために、ルーターモードにしたNECのAtermとコンピューターをLANケーブルでつないで、ルーターにログインし、望みどおりに設定してからアクセスポイントモードにして、そのあとに妖怪ハウスのネットワークに接続した。すると、なぜか設定が反映されていない。いったいこれはどういうことだ。再びルーターモードに戻すが、やはり設定されている。APモードにすると設定されない。もしやこれは・・・

なんと、このNECのクソ無線LANルーターは、ルーターモードとAPモードで、設定が独立しているのであった。いったいどこのトチ狂ったバカが、どんな薬物を摂取したら、こんな設計になるのだ。根本的に腐っている。

さて、設定に関して、とても糞だったNECの無線LANルーターだが、とりあえず無線LANとしては、そこそこの仕事をしてくれた。ただし、いずれは業務用のいい無線LAN APを導入したい。

さて、Netgearのスイッチングハブと、NECの無線LANルーター(APモード)を導入したところ、妖怪ハウスのネット環境は、なんとかなりマシになってしまった。なるほど、スイッチングハブは侮れないのだな。そして、無線LANも、安物を使うべきではないのだな。

しかし、まだダメだ。まだ満足できない。まだ遅い。どうも、DNS検索が遅いように思う。このISPレンタルルーターがDNSキャッシュサーバーとして動いているようだが、遅すぎてキャッシュの役割を果たしていない。むしろ逆に遅くなっている。そして、TCPコネクションを張るのにも、やや時間がかかっているように思われる。やはり、根本的に、このISPレンタルルーターは非力なのだ。DNSサーバーはこちらで設定することもできるが、住人全てにその設定ができるわけではない。

やはりここは、強力なルーターを導入しなければならない。100台規模の機器を余裕でさばけるような強力なルーターがほしい。しかし、そのような強力なルーターはなかなかに高価だ。さてどうしよう。

なんと、そのルーターが無料で手に入った。なんとも親切な人が、余っているからと、新品同様の YAMAHAのRTX810を送ってくれたのだ。RTX810だと。それはちょっとした中小企業に導入して会社内のネットワークをそれひとつでさばけるような強力なルーターではないのか。そんないいものを。

さて、どうやってこのルーターを導入すればいいのだろうか。ISPレンタルルーターをよく観察したところ、どうやら、モデムとルーターの一体型に思われたこの機器は、内部で二つに分かれているようだ。モデム部分からUNIという名称でEthernetポートがあり、そこにルーター部分からLANケーブルがつながっている。これを差し替えれば、ISPレンタルの貧弱ルーターを使わないということが可能だ。

ただし問題は、電話が使えなくなるということだ。ある住人は、仕事上、自宅にFAXを置かなければならないため、難しい問題だ。なぜFAXを必要とするかというと、旧態依然の保守的でクソみたいな裁判所が、いまだにFAXを使い続けるからだ。日本の裁判所は、FAXのような平文で送信する信頼できない通信方法ではなく、電子署名と暗号化による暗号理論的に適切な通信方法に、今すぐ移行しなければならない。すでに行政の多くは、移行している。裁判所がそれをしないのは甚だしい怠慢である。

さて、それはともかく、せっかくYAMAHAのRTX810があるのだから、試験的に導入を試みた。これが・・・なかなか難渋した。

RTX810は、HTTPサーバーとして機能して、ブラウザー上から操作する簡単なUIを提供している。このUIは、NECのクソUIよりは、いくらかマシであったが、やはり使いづらい。

RTX810は、telnet/ssh/シリアルポートから接続して、直接文字列でコマンドを送信することで、設定することもできる。ただし、これがあまりよろしくない。

まず、まともなシェルがない。そして、文字コードが忌々しきシフトJISである。しかも、勝手に行数を区切って--more--的な表示をする(ただし、シフトJISで日本語なので、よくわからない)

わざわざシフトJISロケールを生成して、ターミナルからシフトJISを扱うのも面倒だ。とりあえずteeコマンドでファイルに吐き出してみたが、ド素人丸出しである。iconvで変換すればいいのではないかとおもったが、どうやらiconvは入力をバッファしてしまうらしく、動かない。入力をバッファせずに文字コード変換を行うソフトウェアに、nkf -uがある。これでようやく、出力の意味がわかった。しかし、なぜ日本語なのだ。なぜシフトJISなのだ。YAMAHAの顧客は不自由なWindows利用者だけなのか。どんなに小規模なネットワークであっても、管理者がWindows利用者というのは考えられないのだが。

あとで知ったことだが、RTX810では、以下のコマンドを使うと、まともな出力になるということが判明した。これがデフォルトになっているべきである。

console character ascii
console columns 200
console lines infinity

忘れずにsaveしておこう。

さて、設定は終わり、実際にISPレンタル機器のUNIに接続してみたが、どうも動かない。いや、厳密に言うと動く。ISPとのPPPoEは通り、もちろんインターネットにつながっているのだが、なぜかDNSの設定がうまくいっていないようだ。それも、DHCPでDNSサーバーのIPアドレスを通知するところがうまくいっていない。なぜだろうか。

この問題は、ついに、なぜ動かなかったのかわからなかった。何度か試行錯誤するうちに、いつのまにか動くようになった。おそらく、最初はadministratorコマンドをうち忘れていたのではないかと思う。

さて、RTX810の初期設定では、DHCPで割り当てるIPアドレスは、192.168.100.xとなっている。住人の中に、わかりにくいから192.168.1.xから割り当ててくれと言う人間がいたので、dhcp scopeを設定した。設定したところ、どうやら間違えてしまったようで、RTX810のDHCP機能が動かなくなってしまった。dhcp scopeの設定方法を、もう少し学ばなければならない。第一、ネットマスクなる用語の意味を、正確に把握していない。

DHCPが動かないだけなのだから、DHCPにたよらずに、自前でIPアドレスを主張すればよかったのだが、早急に復旧させる必要があるため、そこには思い至らなかった。

RTX810は、RS-232cポートを持っており、シリアルケーブルで接続することでログインすることもできる。あいにくと、私のラップトップに、そのような古典的なポートは存在しない。今や、シリアルポートといえばUSBやSATAのたぐいを言うのであって、RS-232cではない。住人の一人に、シリアルポートのついた昔のラップトップを所有している人がいたが、残念ながら、ケーブルがない。

しかたがないので、スイッチの同時押しで、RTX810を初期化した。

初期化後、再び一から設定を始めたが、もうすっかり慣れたと見えて、こんどは短時間で設定できた。

ただし、初期化したことは正解であった。RTX810を譲ってくれた人を疑うわけではないが、やはり念の為に、初期化をしておくべきだろう。

さて、RTX810を試験的に導入した結果だが、完全に世界が変わった。ネットワーク内の遅延が劇的に改善され、実に快適で強力なネット環境が構築された。いつか人を集めて、各人ごとに持てるだけのコンピューターを持ってきてもらい、妖怪ハウスネット環境のストレステストを行いたいものだ。ただし、それには、もっと強力な業務用の無線LAN APも必要となるだろう。

なるほど、ネットワークの構築作業というのは、意外と楽しい。ハードウェアや構成を変更すると、パフォーマンスが劇的に変わるというのは、とても楽しい。いままで、ネットワーク管理者というのは、つまらなそうな職業だと思っていたが、なかなかどうして、やりがいのある仕事だ。いままであまりよろしくなかったネットワークのパフォーマンスを大幅に向上させた時の快感はたまらないものがある。自宅で中小企業に入れるレベルの機器を使って、数十台規模のネットワークを構築できる経験ができるというのは恵まれているといえるだろう。

とりあえず、今はISP提供のレンタルルーターを使っている。住人にFAXを使う人がいる以上、難しい問題だ。ネットワークに負荷がかかると予想されるとき(客を大勢呼んだ時とか)に、RTX810に差し替えるつもりだ。ただし、いずれは、RTX810に置き換えたい。

電話の問題は、二回線引けばいいのだが、残念ながら、その住人にはそれほど金がない。ただし、裁判所がセキュリティ的にどうしようもないFAXを使い続ける以上、やはり専用の線をひくべきではあるのだが。いや、むしろまともな暗号理論の知識がない裁判所が変わるべきなのだ。裁判所、お前はクソだから改善しろ。数学的に証明された手法を否定して、平文で送る(しかも受け取り側の電話というのは、普通は人が張り付いておらず放置されているので、誰に読まれるかわからない)クソみたいなセキュリティがザルのFAXを、即刻廃止しろ。裁判所はクソだ。

妖怪ハウスの配線とネット環境は改善された。もうLANケーブルが床をはうことはない。もう貧弱な無線LANに悩まされることはない。トイレの中にまで無線LANが届くので、トイレにも作業用に電源タップを配置した。

まだ妖怪ハウスに改善すべきところは多々あるが、また後ほど、改善作業を終わらせてから記事を書く。

他にも欲しい、高価なネットワーク機器はある。またそれ以外にも欲しいものがある。レトロゲームのソフトや本体や周辺機器を揃えたい。これらは不自由なコンピューターではあるが、どうしても昔の思い出は捨てがたいのだ。現在、ファミコン、スーパーファミコン、ニンテンドー64、ゲームキューブ、PS2、PS3がある。ただし、PS2とPS3は新しすぎるのでレトロゲームの定義には当てはまらない。

もし、読者の中に、レトロゲームのソフトや周辺機器を妖怪ハウスに寄贈したい人がいれば、大歓迎だ。いつでもゲームをやりに遊びに来て欲しい。いまのところ、以下のものが欲しい。

ファミコン、スーパーファミコン、ニンテンドー64、ゲームキューブのソフト。クソゲーも歓迎する。スペランカーや元祖西遊記スーパーモンキー大冒険のような有名なクソゲーもある。また、ファミコンのディスクシステムもあるので、ディスクシステム用のソフトも欲しい。

スーパーファミコンのコントローラー(あと2本)とマルチタップ

ニンテンドー64のコントローラー(あと3本)、コントローラパック(いくつでも)

ゲームキューブのコントローラー(あと3本)、ゲームボーイプレイヤー(中古市場で手に入れるには、本体ごと購入する必要があり、高価)

ゲームボーイ、ゲームボーイポケット、ゲームボーイカラー、ゲームボーイアドバンスの本体と周辺機器とソフト(私が50分以内にRTAできるキャッスルヴァニア 〜暁月の円舞曲〜が特に欲しい。現在、中古市場価格が高止まりしていて、高価)

その他のレトロゲーム本体とソフト