書籍概要

かんたんIT基礎講座

ゼロからわかる ネットワーク超入門〜TCP/IP基本のキホン
[改訂2版]

著者
発売日
更新日

概要

インターネットを支える基盤技術の1つである「TCP/IPプロトコル」や「ネットワークの基礎知識」についてわかりやすく解説した入門書,待望の改訂版です。普段パソコンやネットワークを利用していて,「これはどういう仕組みなんだろう」と疑問に感じるところから順に,多くの図を取り混ぜながらこれらのしくみを紐解いていきます。各章の最後には理解度を確認するための練習問題があります。独習書としてはもちろん,授業などにおけるテキスト教材としてもオススメです。

こんな方におすすめ

  • ネットワークの勉強をこれからはじめる初心者
  • ネットワークの講習や書籍で挫折してしまった方

サンプル

目次

Chapter 0 本書を読む前に

  • ネットワークの世界へようこそ
  • TCP/IPとは何だろう
  • 本書で学ぶこと
  • 本書を読み進めるための準備

Chapter 1 体験! インターネット

  • 本章で学ぶこと
  • インターネット通信,最初の一歩
  • pingコマンドの詳しい使い方
  • pingコマンドの失敗
  • 実際に試してみよう

Chapter 2 IPアドレスって何だろう

  • 本章で学ぶこと
  • コンピュータのIPアドレスを知ろう
  • IPアドレスの割り当てと自動取得
  • IPアドレスの仕組みを知ろう
  • IPにはバージョンがある

Chapter 3 ルーティングはTCP/IP通信の要

  • 本章で学ぶこと
  • ルーティングの基礎知識
  • ルーティングを体験しよう
  • 経路を設定・管理する方法を学ぼう

Chapter 4 パケットでデータを分割

  • 本章で学ぶこと
  • パケットの役割を学ぼう
  • パケットとカプセル化
  • パケットの大きさと生存期間

Chapter 5 大切な2つの技術── TCPとUDP

  • 本章で学ぶこと
  • データ保証型のTCP
  • UDPは一方通行
  • TCPとUDPの使い分け
  • ポート・ポート番号

Chapter 6 データを送る経路を調べる

  • 本章で学ぶこと
  • ICMPとping
  • ICMPで経路を調査

Chapter 7 プロトコルという約束事

  • 本章で学ぶこと
  • サーバーとクライアント
  • telnet
  • DNS
  • HTTP
  • URLに見るプロトコル
  • 実験してみよう

Chapter 8 役割を分割するレイヤー

  • 本章で学ぶこと
  • レイヤーとは
  • TCP/IPモデル
  • OSI基本参照モデル
  • 各レイヤーの役割を知る

Chapter 9 ネットワークインターフェイス層の役割

  • 本章で学ぶこと
  • データリンク層
  • 物理層
  • スイッチ

Chapter 10 総復習

  • データの流れを追ってみよう
  • 最後に

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2020年6月26日最終更新)

P.79 tracertするURL

コマンドプロンプトで「tracert www.gihyo.co.jp」と入力
コマンドプロンプトで「tracert www.dtg.jp」と入力

P.169 MACアドレスの記載例

00-30-13-6e-b6-4a
00-60-b9-6e-b6-4a

(以下2019年7月4日更新)

P.143(7-7)の図を参照している箇所

今回の例では、www.dtg.jp、ポート番号80を引数とします(図7-9)。
今回の例では、www.dtg.jp、ポート番号80を引数とします(図7-10)。

P.177(9-4-3)のルーターに関する記述

とはえ、ルーターに L2 スイッチ機能を内蔵したものもあり、現在ではこれらの差はほぼないと言って良いでしょう。
とはいえ、ルーターに L2 スイッチ機能を内蔵したものもあり、現在ではこれらの差はほぼないと言って良いでしょう。

補足情報

書籍中のわかりづらい表現が含まれていた箇所の補足や,理解を深めるための情報を追記します。

(2020年6月26日更新)

P.27 Linuxでの基数変換に関するTIPS

Linuxで標準のshellであるbashでは,基数変換すなわち2進数や8進数や16進数から10進数へ非常に容易に変換ができます。左の例に習えば,プロンプトでechoコマンドに続けてたとえば $((2#10101100)) ,つまり「echo $((2#10101100)) [Enter] 」としてみると,10進数の172が表示されることでしょう。そして,16進数からなら「echo $((16#ac)) 」でも同じですね。# の左側の2や,右側の10101100を別の数字に変えてみて,その変化を見てみましょう。他にも先述の文字の頭に0や0xをつけてみて「echo $((0xac)) 」など試してみましょう。 反対に,n進数に変換するには,printfコマンドや,パイプという仕組みをつかってbcというプログラムに引き渡すという方法があります。ここに出てきた単語をヒントに検索して試してみましょう。

P.64 ネットワークの収容可能台数に関するTIPS

2048台分が収容可能でも,実際にはネットワークアドレスとブロードキャストアドレスの分を差し引くと2046台分となりますね。一般的にはさらにルーター(3章で学びます)が少なくとも1台ありますので,使える台数は合計で3台分ほどは少なくなります。

P.73 ルーターに関するTIPS

家庭用のルーターはすべてのデータをプロバイダに中継すれば良く,それですべての経路を知っていることになるので,あまりメモリや複雑な機能がなくても問題ありません。しかし,プロバイダには他のプロバイダや,クラウド事業者やコンテンツ事業者など,インターネットに接続しているあらゆるネットワークアドレスへの経路を知っていることになっているルーター,フルルートルーターが稼働しており,数千万円以上,億の単位のルーターも珍しくありません。価格も高いですが,信頼性も高く,何年も再起動を必要とせずに連続稼働します。しかし,ルーターなので家庭用の数千円クラス,小規模事務所用の数万円クラスと比較しても,違うのは性能と信頼性であって,異なるネットワークへの経路に向けてデータを中継するという基本的な機能は変わりません。

P.75 ipコマンドに関する補足

書籍中では「ip route(省略形はip r)」の利用を解説していましたが,より情報がわかりやすい「ip -d route(省略形はip -d r)」によるルーティング情報確認をおすすめします。

P.82 経路のTIPS

フルルートルーターが取り扱う経路数は拡大の一途をたどり,2019年1月で約73万,2020年5月末で約82万ほどあります。この経路数拡大の様相を経路爆発と呼び,インターネットプロバイダの間では問題視しています。
この経路爆発は最適な経路を決定するための計算資源が必要だったり,高速なメモリが多く必要で価格にも関わりますし,古い機種が扱える経路数を超えてしまって買い替えが必要になるなどの問題を引き起こしています。

P.99 WiresharkのURLの表記

https://www.wireshark.org/ でアクセスすることをおすすめします。

P.111 迷惑メール対策などを意識したポート番号変更に関するTIPSの追記

手元の端末とサーバーの間を暗号化してやり取りをする場合は995番(POP over SSL) , 465番(SMTP over SSL) ,993番(IMAP over SSL)などが多く利用されています。

P.113 Windows PowerShellで確認する場合のTIPS

Windows PowerShellで見たい場合は
「type $env:SystemRoot\system32\drivers\etc\services」としましょう。

P.119 ICMPの利用に関するTIPS

ICMPを使うコマンドにWindowsのトレースルートtracert(6-3で学びます)もあります。Linuxの場合の同じコマンドtracerouteはICMPも使えますが,標準ではUDPを使うので経路上の装置の反応が少し違うことがあります。

P.121 pingへの応答に関するTIPS

COLUMNにもあるように,Windowsパソコンも標準ではpingには応答しません。しかし,こういったpingに応答しなくとも,その装置が同じネットワーク上に存在しているかどうかは調べることができます。調べたい対象の装置のIPアドレスに向けてpingを打ち,タイムアウトしたのを見届けてから,arp -a(9-2-4で学びます)と打って,該当のIPアドレスがMACアドレス(9章で学びます)と共に出てきたら存在していることがわかります。

P.186 IPv4およびIPv6に関する付記

2020年5月でもIPv4は主力であり続けていますが,スマートフォンに代表される携帯ネットワーク機器ではIPv6も混在して使用されており,移行は徐々に進んでいると言えましょう。

商品一覧