2006年 07月 08日

ネットワークがわかってない。

低レベルな層が全然わかってない。TCP/IP 以下は特に全然わかってない。とりあえず TCP/IP と、ルーター・ハブ・ブリッジがそれぞれどう働くかを完全に理解したい。

  • イーサネット (何か今使ってる何か・物理層とデータリンク層レベルの話らしい)
  • CSMA/CD (ホストが増えると効率が悪くなるやつ)
  • セグメント
  • サブネットマスク (IP)
  • デフォルトゲートウェイ (IP. 困ったときに送る方向?とかなんとか。ゲートウェイって何。牛?)
  • 半二重・全二重 (全二重の場合は CSMA/DA は関係ない)
  • コリジョンドメイン
  • ブロードキャストドメイン
MAC アドレス
物理層の識別アドレス
フレーム
物理層の通信単位
パケット
IP における通信単位
ブロードキャスト
ある範囲に一括送信する
ユニキャスト
あなただけに。

さて最終的に自分でルータ (ハブ) を二段以上の構成にして、ネットワークを組めるようになることを目標にして理解をしたい。必要なことは、ネットワーク設定の項目 (IP アドレス, サブネットマスク, デフォルトゲートウェイ) を理解して自由に設定できること。


まずイーサネット基本。物理層・データリンク層の規格。基本的に送るデータは同じイーサネット内の全てのホストに配送される。ホスト側が自分宛でないデータを破棄する。結構ゴリ押しみたいな仕様なんだなぁ。でもって、この仕様の場合、データの衝突が起きて通信が阻害されるので、コリジョン回避のための方法が定義されており、それが CSMA/CD である。なるほど。

あーそうか、100Base とかっていうのはイーサネットの用語なのか。

「セグメント」は物理的な区分けのようだ。イーサネットでは通信の効率を保つため?に、物理的な長さで一つのイーサネットの大きさを規定していて、ハブの段数も制限があるみたいだ。

異なるセグメントをつなぐにはルーターが必要

純粋な「ルーター」はポートを二つしかもっていないっていうけど、なんで物理的に繋ぐところが二個なのにいくつもコンピュータが繋げるのか不思議だった。分かる人はたぶんこの「不思議さ」が理解できないと思う。なんかこう、何かの魔法で、必要なパケットはいつのまにか必要なホストにだけ届くと考えていた。でもそれが実はゴリ押しで全部に配送するってことを知ったので、ちょっとそれを理解できたかもしれない。

ハブは物理的にポートに送られてきた信号を増幅したり波形を直したりして、他の全ポートに送信する。例えばそれはあるポートにルータが繋がれているかどうかなんて知ったこっちゃなく、全部平等?なんだね。

といっても、それじゃちょっと効率が悪いから、MAC アドレスで振り分けてあげるハブがスイッチングハブ (ブリッジ)、でいいのかな。ブリッジは接続されたホストが発信した MAC アドレスを学習して、他のホストにブロードキャストし、他のホストはその MAC アドレスへ送信し、ブリッジは学習したポートに向けてフレームを送信する。もし知らない MAC アドレスがあて先だったら、普通に (?) 全てのポートに送信する。

これでハブとブリッジについてのすごく基本的な部分はわかったのかな。


さてルーターとか、デフォルトゲートウェイとかをちゃんと理解したい。ルーターは IP とかと同じレイヤーの話で、物理的な (電気信号がとかいう) 話はない、というのでいいのかな。と、思いきや、物理層のアドレスである MAC アドレスは扱うようだ。ふーむ。

  • ローカルルータとリモートルータの違いって何よ
  • WAN って何よ
  • 「ルーティング」って結局何よ

ローカルルータとリモートルータの違いは LAN と LAN を繋ぐかと、LAN と WAN とを繋ぐかっていうこと。らしいけど、どういう意味かわからない。

WAN って LAN とって、違うのは大きさだけだと思っているけど、それでいいのかな。

だとすると、リモートルータはただたんに大きいほうと小さいほうを区別する、ってだけだよなぁ。


ユニキャストの場合を考えると、MAC アドレスがルータ自身のもので (イーサネット的にはルータ向けの通信) IP アドレス自身のものではない (IP 的にはルータなんてどうでもいい) 場合、ルータさんは IP をルーティングテーブルで検索してどこに送信するか決定する。送信するときには MAC をそっちの方向にあるネットワークのルータに書き換える。この MAC アドレスは、ARP テーブルとかいうのに学習しておく? ブリッジの学習と同じなのかな。つまり、MAC を学習していない場合はそっちのネットワークにブロードキャスト?


ルーティングテーブル云々はちゃんと IP を理解しないとだめみたいだ。ルーティングテーブルに保存される情報は「あて先ネットワークとマスク、隣接ルーターの IP アドレス、送出インターフェイス」らしい。これらがなぜ必要か、どういう場合に必要かを理解したい。

疲れた。@2006-07-08T23:01:12+09:00 90分で集中力終了


続き。IPv4 - Wikipediaのルーティングの部分や、イーサネットとルーティングとかを読んでみた。

後者の記事のおかげでサブネットについて分かってきたかもしれない。あるサブネットに所属するホストは全て同じセグメント内にいないといけないとかなんとか。当たり前といえば当たり前か。同一セグメント内の全てのホストを一括して扱うためにサブネットがある?みたいな。

でもまだ実際にサブネットを設定するさいどうすればいいかがわかっていない。ルータも含めて同じセグメント内のサブネットは同じにしないといけない、というのは経験的にもわかる。じゃあ、ルータにルータを繋いで、さらにサブネットを分割するとき、どう設定するか、ということがわかってない。ついでに、ブロードバンドルータをローカルルータとして使用する場合どうすればいいかもよくわからない。

現在うちのネットワークは、WAN からルータが DHCP でアドレスをもらって、ルータの4ポートハブ (思うのだけれど、ルータポートも含めれば5ポートなんだよね?) に自宅のPCが全て有線で繋がっている。LAN 側のルータの IP は 192.168.0.1 で、サブネットマスクは 255.255.255.0 になってる。いくつかの PC は DHCP で設定され、いくつかの PC は固定 IP になってる (つまりこのルータでは DHCP 鯖が立ってる)。ここにルータをもう一つ使って、ネットワークを構築し、このルータの下にぶらさげたい (少し制限されたネットワークを構築したい)。

二段目のルータの IP はどう設定すればいいんだろう。今試せないので考えるだけで書くと、WAN 側の IP は 192.168.0.254/24 とかにして、LAN 側の IP を 192.168.10.1 にして、二段目のルータの DHCP を有効にする。とかだとうまくいく気がするけど、わからないし、なんか変な気がする。サブネットを分割してるわけじゃなくて、NAT * NAT になってる?

ぐぐろう。

落ち着いて見直す。


イーサネットだからコリジョンが発生するというわけじゃない。全二重ならばコリジョンは発生しない。全二重は送信側と受信側が別々に同時に通信できるから、受け取るぶんはずっと受け取っていられるし、送るぶんはずっと送っていられる。ref. 全二重通信と半二重通信 - The all-round Dictionary of Network Terms


セグメント=コリジョンドメイン。セグメントを繋ぐのはルーターでなくて、ブリッジでもいい。ブリッジはは必要なフレームを振り分けるので、コリジョンドメインは拡大させない。ハブ (not スイッチングハブ) は単純に増幅するだけなのでコリジョンドメインが拡張される。

ブロードキャストドメインは、ブロードキャストフレームが届く範囲。ブリッジはブロードキャストフレームを同じネットワーク内 (すなわちブロードキャストドメイン内) に転送するので、ブリッジはブロードキャストドメインを分割しない。ルータはブロードキャストフレームを転送しないので、ブロードキャストドメインを分割する機器と説明される。

ref. ネットワークエンジニアを目指して・イーサネット技術:コリジョンドメインとブロードキャストドメイン


  • 無線 LAN を導入するときどうするか。無線接続のノート PC から、一段目の固定 IP のホストは見えてほしい。でもセグメントは分けたい (samba 共有は見えなくしたい)。一段目に無線 LAN アダプタを繋げば普通に見える? つまり無線 LAN ルータではなく、ルーティングは一段目にまかせる

ネットワーク続き

なんでネットワークに接続するクライアント PC に IP を設定すると、それがそのネットワークで使えるようになるんだろうって疑問だったんだけど、そもそも「クライアント」とかいう考えたが間違っていた。

基本的に全て P2P なんだよなぁ。分かっていたつもりで分かってなかった。今まではルータがサーバー、PC がクライアント、みたいなモデルを考えてた。確かに DHCP を使う場合の多くではこの関係は成立するけど、ふと DHCP 使うのをやめて、手動設定をしたとき、「ルータにはこの IP を登録しなくていいんだろうか」と疑問に思ってしまう。実際には、IP を使う機器は全て自分の IP をネットワーク上にブロードキャストするからそんなことをしなくていい。ルータもそのブロードキャストを受け取っている一つの機器にすぎない。

ということを ARP の説明を読んで理解した。

2006年 07月 07日

ルータを新しくした

L2スイッチ機能搭載ブロードバンドルータ NetGenesis SuperOPT100E

あんまり熱くならない。前まで、そこらに TCP セッションを張っては切り張っては切りをしまくるとかやってる (torrent とか) とそれ自体にダウンロード速度が出ていなくても、他まで巻き込んでかなり遅くなっていたけれど、それが改善されたっぽい。

しかし今日になって LAN が切れまくる現象が発生し、ひたすら原因究明するはめになった。原因は DHCP の設定 (先頭 IP アドレス) が何故かちゃんと反映されず (192.168.0.5/24 とかにしても 3 を割り振る)、ネットワーク上で IP アドレスが競合していたからっぽい。固定 IP を大きめ (192.168.0.250 以上) に設定し、DHCP 割り当て個数を減らした (253 -> 240) 。

IP が競合してても ubuntu たんは警告してくれないようだ?


何はともあれありがとう><


引越しに際する課題

  • サブネットわけるとかして自分のファイル共有を家族のとわける。
2006年 07月 04日

ひかり電話が不安だ

ひかり電話 (VoIP) 契約時レンタルするルータの性能が不安なのでいろいろ調べ中。

適当に検索してみると 価格.com の書き込みで VOIPルーターのスループットが遅いので、別途ルーターを使用する事はけっこう多いですね。 とかあったりする。この例がうまく通れば特に問題なさそう?

まともっぽいルータを回線終端装置とつないで (一段目) 、その下にレンタルする VoIP ルータをぶら下げる (二段) 形になる。PC は一段目にぶらさげ、VoIP ルータには VoIP 以外のことをさせない (端末扱い)。うまくいくのか不安だ。不明点: PPPoE の設定はどうするのか。一段目にも VoIP ルータにも設定が必要? やってみないとわからない。しかも PPPoE って使ったことなくて分からない。今 (Y!BB) は PPPoE じゃないんだよなぁ。


あと VoIP の使用する帯域とかも調べよう。

2006年 06月 28日

あーあーあー

どうも XML 書くのが面倒くさくなってきた。もう全部 Trac wiki 記法で書きたい。


やっぱバックエンドに svn を使った日記とか CMS が欲しい。バージョン管理システムを既存のを使えば、どこでもチェックアウトしコンテンツ書き換えられる感じに。


なーんも考えてない。英語キーボードを試してみたい。ノートPC (たぶん MacBook) が欲しいので15万ぐらい溜める。すげぇ長い。やだなぁ。はやく欲しいなぁ。明日地震がくるかもよ。かもよ。明日死ぬかもよ。やりのこしたことはない? あるよ。あるけど実現できないよ。あるけど実現できないよ。可愛い女の子と青春したかった、なんて叶わないことさ。

ここ数日なぜか中年とすっ飛ばして、このまま老人になって、ああ、みたいなこと考えて、だめだなぁと思った。中年になったって、どうせ、ごちゃごちゃ言ったって、ぎりぎりになった未来の俺はぎりぎりでどうにかするんだろうし、それが詰まらないことでも、どうせ死なないんだろうなぁって。全部やめたい、とか今も思ってるのに結局続けているわけで、なんなのよと、思わないでもない。何なのよなんてわかってはいると思うけど。

最後の砦、みたいなのがいつも必要だと思う。今はまだぎりぎりあるけれど、そのうち無くなることは分かりきっている。もうない人も世の中にはいっぱいいる。


他人を見下してると、見下されてるほうは絶対わかるものだ。だから「見下さない振り」じゃなくて、見下さないことを心がけるんだよ。本当はそんな人はいないのだから!

そんな無意識の自信過剰をまわりは感じる。「ぶっちゃけそんなに自分は頭よくないよ」って何をぶっちゃけているのだろうかとか、そういう。そして見て見ぬふり。しないように意識しないと

まず間違いなく、自分以下の理解力の人はいない。いない。伝わらないなぁってときは、まず間違いなく自分の説明が悪く、まれにそもそも思考レイヤーの差のせいで話が通じないことがあるぐらい。思考レイヤーの違う人とは話していても結局意味がないから、できるだけ話さないように。思考レイヤーの違いは、思考方法の回路が違うから、理解力がどうとかで比べられない。あうか、あわないか、それだけだと思う。

何かが起きたなら、原因があるはず。でもどうしてか理不尽さを感じることがある。例えばちっぽけだけれど、歩きタバコしてる人の後ろを歩いたとき。なんで自分が被害をうけているんだろうと思う。例えばちっぽけだけれど、こんな無駄に長い日記を書いていること。なんで自分はこんなもの書かなければならない情況にいるんだろうと思う。もっと大きく。病気・事故、何に繋がっているんだろう。

携帯電話の「電話」機能が好きじゃない。携帯電話なのに電話機能が好きじゃないとか無駄さが溢れているけど、特にかかってくるのがあんまり好きじゃない。その場の、目の前にいる人間との会話に、半強制的に割り込みをかける感じが好きじゃない。だからあんまりとらない。あんまりかかってこないけど。メールでいいじゃん。メールもこないけど。

それに、そもそも電話が好きじゃない。電話で話すのは気持ち悪い。理由は知らない。考えても無駄だと思う。どうせ理由なんて、殆どこじつけなんだし。上のも、無駄。無駄。


授業とかで Flash を強制されたり、「Flash はこんなに素晴らしい!」みたいな話を聴くたび、Flash のことが嫌いになっていくんだよね。

Flash を何かに置き換えてもいい。Java とか (やってないけど)、VB とか (やってないけど)、ユーザーインターフェイス設計とか (やってないけど)

やっぱり Flash はにがてだ

Flash が苦手なのはもう仕方ない気がしてきた。開発環境もそうだし、雰囲気もそうだし、みたいな……コンテンツとしては悪くはないと思う。でもアプリケーションみたいになってくるとちょっと気持ち悪くて耐えられない。そしてひっぱられてコンテンツもうまく作れない。楽しくない。


Flash のユーザの主導権をにぎるやりかたは、全然消えていない (消そうとしてない?)。ユーザは「こうしないといけない」って Flash アプリケーションに暗に言われる。強制されるのはいつも気分が悪い。その「デザイン」に気付けない Flash アプリケーションは優秀かもしれないけど、デザインに気付いてしまったら、また「操られている」感じが不快だ。どっちにしろ Flash が今のようなユーザにフックを許さないような構造な限り、フックしたい人には不快感を与え続けると思う。

かっこよく動いてるアプリケーションを使ってる俺はオシャレなんだぜ、みたいな、そういう雰囲気、そこで止まってしまう感じ、そんなのもなんかちょっとだめな原因かもしれない。モテ系。

かっこよく動いて、デフォルトのデザインも気持ちいいけど、さらに自分の手をそこに加えたい。そういうことができて欲しい。押し付けがましいのを排除したい。目立たないデザイン。表にでないところが綺麗になっていて欲しい。あなたの自由にしていいですよってことができて欲しい。ほんとに


なんかネガティブなことが多すぎる。もっといいこと考えないとなぁ。いいこと。大学行くと嫌なことばっかり入ってくるなぁ……

2006年 06月 22日

フィードの登録数

LDR でのメインフィード (RSS) の購読数が100を超えてた。

なんとなくメインのフィードが100いくのが区切りな気がしてたので書いてみる。


Atom は 23, RSS は 102。Bloglines は 100 いってない。

2006年 06月 17日

IP がわからん

学校のテストでみごとに0点だったのでちゃんと頭に入れるよ!!

何がわからないってことを明確にしとこう。

  • サブネット
  • ネットワーク部・ホスト部っていうのがなぜ存在するのかがわからない。
  • ネットワークアドレスっていうのは実際どういう風に使うのか
  • サブネットをどう設定するとネットワークアドレスがどうなるのか。
  • ネットワークの設定とかででてくるサブネットマスクには実際どういう設定をするのよ。

IP をそもそも理解していないようです。

さてそこで #XSLT で訊き (今現在既に理解の範疇を超えた話をしている (わらい)) つつ @IT:連載 基礎から学ぶWindowsネットワーク 第7回 1.IPアドレスとは とか読みつつ疑問を解決していく。


TCP/IPでは、ネットワーク全体をフラットな1つのネットワークとして扱うのではなく、いくつかの小さなネットワークの集合体として扱うことになっている。

そもそもこの辺で躓いていた。グローバルIPとプライベートIPっていうのはあるけど、グローバルIP の中では全部フラットだと思ってた。グローバルIPの中でも階層があるんだなぁと。無駄なトラフィックを減らすため (同じネットワーク内の通信は同じネットワーク内で完結するように) らしい。


  • ネットワークアドレスを求めるにはネットマスクと AND 演算。AND だから分かりきった部分のオクテット (サブネット26bitだったら上の3つ (24bit分)) はそのまま書いていい。
2006年 05月 28日

del.icio.us の color: (colorScheme) で遊ぶ

ちょっと前に流行っていたみたいで、NULL::colors とうまく連携できないかなぁと思っていたんだけどうまくいかなかった (なんなんだ)

で、もうちょっと小さい NULL::colors が欲しいなぁ、とそれとは別に思っていたので NULL::colors*del.icio.us を作った。canvas 版のやつなので Fx のみ。

使い方はフィーリングってことにして、これだけだと del.icio.us に投稿済みの色を読み込むのが面倒くさいので、del-the-color-scheme.user.js という GreaseMonkey を作った。save this の横に NULL::colors へのリンクを出す。

  • 順番を変えたりとかできない
  • 12色以上読み込めない
  • ハッシュから読み込んだとき、前回までの色が上書きされる

気分的には「del.icio.us でいい配色みっけたー -> でも一部が気に入らん -> これ開いて書き換える -> send でブックマーク」と使いたい。が、しかし、はてブがメインなので割りとどうでもいい。


del.icio.us の color: って面白いんだけど、色の値とかがコピペしにくいとか、微妙に使いにくい。

2006年 05月 27日

デスクトップバトン

デスクトップ

魔王 より。メインのほうを答えます。サブは前のときとあんまり変わっていません (ただしマシン自体は ノートからSC430 になり、xfce ではなく Gnome になってる。って全然違う気がしてきた)。

まっさらだと寂しいので作業中っぽい感じにしてあります。見えてない部分のデスクトップはなんもないです。

【1】あなたのデスクトップを晒して、一言どうぞ。
  • フォルダ開きすぎ (少ないほう)
  • mixi のコード (謎) がまだあった
【2】OSは何?
Windows XP Professional, サブは ubuntu Linux です。
【3】これはあなた個人のパソコン?職場や家族共有のパソコン?
こじんよう。
【4】この壁紙は何?どこで手に入れた?
壁紙って殆ど見ないのにリソースを食っている感じが気に食わないのであんまり設定しないです。たまにヘッドフォン娘だったり、ハマってる唄の歌詞をダラーって書いたりする。
【5】壁紙は頻繁に変える?
一年に一回ぐらい設定したくなる季節があったりなかったりする。
【6】デスクトップのアイコンの数はいくつ?
4個。
【7】ファイルやショートカットがゴチャゴチャしているデスクトップ、許せる?
あんまり見ないから気にしない。
【8】何かこだわりはある?
作業できればいいよ。タスクマネージャは常駐
【9】今回、このバトンが回ってきてからこっそりとデスクトップを整理した?
した。ファイル名からしてアレなのを削除した。というか「した」って言ったらこっそりじゃない気がする。
【10】最後に『この人のデスクトップを覗きたい』という5人
あるふぁギーク (笑) のみなさん (笑) 。

学校のグループワークで一緒の人のデスクトップがアイコンで矢印を作っていてかっこいいと思った。