ゼロからわかるネットワーク超入門
TCP/IP基本のキホン

Introduction of introduction for networking from zero, basic of basic TCP/IP , by SHIBATA Akira
作成 2010/04/24
更新 2010/07/31

サポートペイジ

表紙イメージ

ようこそ♪当ペイジへおいでくださった。 当ペイジは「ゼロからわかる ネットワーク超入門 〜TCP/IP基本のキホン 」のサポートペイジだ。

推敲と校正を重ねたつもりだが、当方の誤解やわかりにくい表現などで補完が必要な情報について記述したい。 また、発見したら当方(help@eva.gr.jp)へ知らせてくれるとありがたい。

読んで、気に入ったら周りの人にもすすめてくれるとありがたい。 今すぐ買いたい場合には amazon へのリンク「ゼロからわかる ネットワーク超入門 〜TCP/IP基本のキホン」 からも購入できる。

→学校・法人一括購入ご検討の皆様へ

現時点で発見されている問題点等

誤りや、こういうことに言及して欲しいなどのリクエスト、感想や意見を待っている。

正誤表 (初版対象)

現時点で、特になし (2010/07/31)

改善希望 (初版対象)

もし、改善(改版)できたら入れたい説明等。表現の改良等を含め、改善したい内容。 改善後というのは、希望や見直しをしてイイワケとしての当方なりに考えてみた「あるべき状態」だ。

場所内容(改善前)内容(改善後)他・備考
p.3 はじめに 10行目から本書では、TCP/IPの技術を約3回、繰り返し学習していきます。…本書では、各章でTCP/IPの技術を本書全体の中で切り口を変えて約3回、繰り返して学習していきます。… 
p.14 欄外 TIPsTCP/IP(Transmission Control Protocol / Internet Protocol)はアルファベットをそのまま読みます。ただし、通常はTCPとIPの間のスラッシュ「/」を発音しません。書くときにはスラッシュ「/」を忘れないようにしましょう。 
p.18 TCP/IP とは 1 行目からTCP/IPは、コンピュータ同士が…TCP/IP ( Transmission Control Protocol/Internet Protocol) は、コンピュータ同士が…そもそも論として書き忘れていた
p.34 欄外 TIPs (2) に見られる各用語(バイト数、バイト数、 TTL 、ラウンドトリップタイム等)は後ほど解説します。  
p.103,104 の図左のコンピュータが A で、右のコンピュータが B説明がないため、わかりにくい
巻末?かどこかに欲しい次に読む本や、参考になる本を知りたい未解決 → 検討中コラムなどで表現できれば入れたい

問答 (初版対象)

質問を送ってきてくれた方がいたので、回答を抜粋し本編の補足をする。

Mac OS で ipconfig /all の代わり

【問】コマンドプロンプトの代わりにMacのターミナルを使っています。 ipconfigを実行すると次のようになります。 どうすればちゃんとIPアドレスを表示することができるようになるでしょうか。

【答】「 /sbin/ifconfig -a 」 ということでどうでしょうか? ひょっとすると前のほうが不要で、「 ifconfig -a 」だけでもいいかも しれません。

【問】下のような結果が得られました。 この中を見てみると、inet 192.168.145.84 netmask 0xfffffe00 broadcast 192.168.145.255と書いてある行があるのですが、 inet が自分のIPアドレスなのでしょうか?

$ /sbin/ifconfig -a
lo0: flags=8049 mtu 16384
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
	inet 127.0.0.1 netmask 0xff000000 
	inet6 ::1 prefixlen 128 
gif0: flags=8010 mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863 mtu 1500
	inet6 fe80::223:dfff:fea9:8182%en0 prefixlen 64 scopeid 0x4 
	inet 192.168.145.84 netmask 0xfffffe00 broadcast 192.168.145.255
	ether 00:23:df:a9:81:82 
	media: autoselect (100baseTX ) status: active
	supported media: none autoselect 10baseT/UTP  10baseT/UTP  10baseT/UTP  10baseT/UTP  100baseTX  100baseTX  100baseTX  100baseTX  1000baseT  1000baseT  1000baseT 
en1: flags=8863 mtu 1500
	ether 00:23:6c:91:aa:d5 
	media: autoselect () status: inactive
	supported media: autoselect

【答】見ているところは良いです。 あとは解釈ですね。 inet 192.168.145.84 netmask 0xfffffe00 broadcast 192.168.145.255 自身の IP アドレスは 192.168.145.84 です。

netmask は先頭に 0x とついているところから 16 進数で あることがわかります。(プログラミング等でのお約束) 関数電卓等で二桁づつ変換すると

16 進数 : ff ff fe 00
10 進数 : 255 255 254 0
2 進数 : 11111111 11111111 11111110 00000000
という風に変換すると、本の解説の中を読んで理解できる 状態になるのではないかと期待します。

なお、ネットワーク関連の表記の仕方は、多少バリエーションが あれども、最終的に表していることは同じなので、一旦わかって しまえばどの装置が表しているモノでもだいたいわかるように なります。

NAPT の仕組み

【問】 61 ページにある NAPT の仕組みに関してですが、図では送信元Aと送信元Bのポート番号がどちらも2011と書いてありますが、その下の本文には「Aのコンピューターは発信ポート2051番で、Bは2052番」と書いてあります。 これはなぜでしょうか?

【答】1. 送信元 A と送信元 B のポート番号が同じだとしても、

NAPT 機能を持ったルータを通すことで

2. あたかもルータが一台のパソコンであり、ポート 2051 と ポート 2052 を使ってサーバにアクセスしているかのように 振舞う仕組み

それを NAPT と呼びます。

ですから、サーバから見ればポート 2051 で発信して 情報を要求している装置と、ポート 2052 で発信して情報を 要求している装置は一つにみえ、それぞれに対して情報を 提供します。

NAPT 機能を使って、ルータはポート 2051 で要求した情報に 対する応答は送信元 A に返し、ポート 2052 で要求した情報に 対する応答は送信元 B に返します。 送信元 A の代理で発信したパケットと、送信元 B の代理で 発信したパケットを同じポートから送信すると混乱して区別が つかなくなるので、違うポートから発信します。 ここで送信元のアドレスを、ルータはそれぞれ違うポートとして 変換して送信することになります。

ネットワーク( Network ) の送信元の IP アドレス( Address )の 違いをポート( Port ) に変換( Translation )すること、 すなわち Network Address Port Translation = NAPT という 技術です。

結びに

思いつくところを追加してみたいと思う。


Memorandum about Linux and Network | ほかのジャンルを見てみる | サイトマップ

免責

beacon

当方(SHIBATA Akira)は, 本サイトをご利用の際に起きるかもしれない不利益に対し, 一切責任を負いません.