ルーターは「使う」のではなく「作る」もの?
毎日メールのやりとりをしたり、ゲームをしたり、動画を見たり、インターネットはだれもが使うものとなりました。しかし、意外と仕組みについてはよく理解できていなかったりします。もちろん、インターネットの仕組みについて解説した本を読めば「通信データが“パケット”という単位で、さまざまなネットワーク機器によって中継されて、世界が結ばれている」などと書いてあったりします。ただ、「なんとなくわかった」感じにはなれても、イマイチ実感が湧かなかったり。
そこでできたのが『ルーター自作でわかるパケットの流れ ~ソースコードで体感するネットワークのしくみ』という本。本書の特徴は、Linux上で「プログラムとして」パケットキャプチャ、ブリッジ、ルーターを作りながら、“パケットの気持ち”を理解していけることです。「え、ルーターって、売っているものを使うだけじゃないの?」と思うかもしれませんが、Linuxにはネットワークインターフェースからデータを受信したり、送信したりすることができるような仕組みが用意されています。それを利用できれば、自由にパケットを操ることができ、普通のブリッジやルーターにはない機能を追加することもできてしまうのです。
実際に手を動かしてみるとわかることがある
「使う」分にはうろ覚えでもなんとかなりますが、「作る」となるとごまかしがききません。著者の小俣光之さんは次のようにおっしゃっています。
「その気になればすぐに作って動かして試してみることができるのが、ソフトウェアの最大の魅力です。ネットワークの難しい理屈や幅広い知識を身につけるよりも、まずは作って動かしてみると様子が具体的に見えてきます」
仕組みが体に沁みて理解できれば、障害が発生した時に問題を切り分けるのもうまくなるでしょう。
ぜひ、ブリッジやルーターを自作して、実際にパケットを中継しながらイーサネットの理解を深めてみてください。
そしてこの本のTwitterで以下のハッシュタグをつけて感想をつぶやいていただければ幸いです。著者の小俣さんのアカウントは@mkomataです。
#router_jisaku
皆様の感想をお待ちしています!