おもちゃバコ

中身スカスカ♡

「図解まるわかり ネットワークのしくみ」を読んだ

こんにちは

「図解まるわかり ネットワークのしくみ」を読んだ備忘録です。


書籍

対象

  • コンピュータネットワークを全体的に学びたい初学者
  • コンピュータネットワークの要点を復習したい人

コンピュータネットワークの基本について,限られたページ数と豊富な図で一通り説明されており,挫折せずに読み進めることができると思います。
表紙やページ数だけ見ると初学者向けの解説書で内容が薄そうな印象を受けましたが,ルーティングなどの基本的な項目は一通り説明されており,読み終えた後には当初抱いていた偏見は無くなりました。

本書を読んだ後に他の参考書(マスタリングTCP/IPなど)を読み,再度本書を読むことで,効率よく知識を定着させることができると思います。
ただし,各プロトコルなどの詳細な説明が記述されている訳ではない為,ある程度の補完は必要だと感じます。


メモ

自分に足りていない知識についてまとめました。
おそらく何処か間違えていると思うので,参考にはしない方が良いです。

本書の内容とは関係ない項目も多いです。

第1章: ネットワークのきほん

コンピュータネットワークとインターネットの違いは説明できるようにしたい。
コンピュータネットワーク
 複数端末を接続する技術
 複数端末が接続されたシステム

イントラネット,LAN,WANの違いは説明できるようにしたい。
イントラネット: 組織内のネットワーク
LAN: 限られた範囲内のネットワーク
 基本的に自前で構築・管理し,端末同士を接続
WAN: 広範囲のネットワーク
 NTTなどの通信事業者が構築・管理し,LAN同士を接続

ASがいまいちよく分からない。
インターネット: 様々なコンピュータがネットワーク接続されたモノ
Autonomous System(AS): ある管理規則によって管理されているネットワーク
ISP: インターネット接続サービスを提供する事業者(プロバイダ)
 Tier1: NTTコミュニケーションズ(20240202)
 -> 分からなくなったら図1-6を見直す。

ADSLは「アナログ電話回線でデジタル信号を利用する技術」であり,アナログ信号でやり取りしている訳ではない。
-> フルネーム見れば分かる事だけど勘違いしてた。
ダイヤルアップ接続の仕組みが考えられた時点で,ADSLの仕組みは考えられてそうだよね。
回線に使用する線なども含めて,この辺の歴史について調べたい。
ダイヤルアップ接続: 電話が利用する帯域を利用(電話併用不可)
 あの変な音は音声と同じ周波数帯域を利用するから発生するらしい。
Integrated Services Digital Network(ISDN): デジタル回線
 通信速度が遅い(64kbps)
Asymmetric Digital Subscriber Line(ADSL): アナログ電話回線の空き帯域を利用
 上下で通信速度が非対称
Fiber To The Home(FTTH): 光回線(家に光ファイバを引き込むこと)
 ONUで光信号をデジタル信号に変換
 FTTBとか色々名称が変化する。

クライアントサーバ: CtoSへリクエスト,StoCへ処理結果をリプライ(非対等)
P2P: C同士でリクエスト,リプライ(対等)
 通信相手特定にSを利用する事もある。

通信プロトコル: 通信時の基本ルール

クラウドサービス: インターネット経由で事業者提供のサービスを利用
 セキュリティ,可用性に注意
オンプレミス: 自前サービス運用
 運用コストが高い

AWSはIaaS, PaaSのどちらもいけるっぽい?
IaaS: CPU,メモリなどのインフラ提供
PaaS: OS,ミドルウェアなどのプラットフォーム提供
SaaS: ソフトウェアなどのアプリ提供

第2章: ネットワークをつくるもの

ネットワーク設計についてなど。
この辺は軽く読み通した。

第3章: ネットワークの共通言語 TCP/IP

スイートポテトのスイートではない。
TCP/IP: インターネットで標準的に利用されている通信プロトコル
 TCP/IPTCPは文脈で区別しよう。
 別名: インターネットプロトコルスイート

TCP/IPOSIは無理に対応させる必要はなく,大体位の認識でいきたい。
TCP/IP階層モデル
アプリケーション層(OSI: アプセ): アプリで扱うデータ形式や処理手順
 HTTP/FTP/SMTP/POP3/IMAP4/DNS/DHCP/SNMP
トランスポート層(OSI: ト): 通信制御,信頼性の確保,アプリへのデータ振り分け
 TCP/UDP/QUIC
インターネット層(OSI: ネ): 異なるネットワーク間の通信制
 IP/ICMP/IPSec/ARP/RARP
ネットワークインタフェース層(OSI: デブ): 隣接端末間通信,データ信号への変換
 PPP/PPPoE

L2,L3,ルータの区別がしっかり理解できていなかった。
ルータ動作はこちらがとても分かりやすかったです。
www.infraexpert.com
L2スイッチ: LAN間,MACアドレス参照
 1. 受信イーサネットフレームから送信元MACアドレスをアドレステーブルに学習
 2. 送信先MACアドレスがアドレステーブルに存在する場合,そこへ送信
 3. 送信先MACアドレスがアドレステーブルに存在しない場合,受信ポートを除く全ポートへ転送
ルータ: WANとLAN,ソフト,異なるネットワーク間のデータ中継を行う。
 1. 受信パケットから送信ネットワークを確認
 2. ルーティングテーブルから転送先ネットワークを確認
 3. MACアドレスを書き換えて転送
L3スイッチ: WANとLAN,ハード,ルータとL2スイッチの機能を持つ
 1. 同一ネットワーク -> L2スイッチ動作
 2. 異なるネットワーク -> ルータ動作

ネットワークインタフェース層: 同一ネットワーク間のデータ転送
 PPP: 2転換を直接接続してデータ通信するプロトコル
 PPPoE: イーサネットでPPPを利用するプロトコル
  VDSLの契約時になんか見た記憶がある。

ICMP=pingという認識は改めたい。
インターネット層: 異なるネットワーク間のデータ転送
 IP: インターネット上でホストを特定するプロトコル
 ICMP: エラーなどの通信状態を確認するプロトコル
  ICMPエコー要求/応答: pingのこと
  ICMPリダイレクト: ゲートウェイの変更通知
    tracertはICMP/UDPのどちらかが重要
    traceroute【コマンド】とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
 IPSec: IPパケット単位でデータ改ざんなどを防止するプロトコル
 ARP: IPアドレスからMACアドレスを取得するプロトコル
 RARP: 逆ARP

pingにポート番号を指定する意味はない(当たり前)
トランスポート層: プロセス間のデータ通信を行う。
 TCP: 信頼性の高い通信プロトコル
 UDP: シンプルだが信頼性は保証しないプロトコル
 QUIC: TCPUDPを良いとこどりっぽい通信プロトコル
  UDP上で色々やっているらしい
  UDPで443ポートらしい...?スゴイネ。

アプリケーション層: 人間用にデータ処理
 HTTP: 80/TCP,基本的に暗号化せずに通信を行う。
  HTTP/1.1: 単体リクエスト(工夫次第)
  HTTP/2: 複数リクエス
 FTP: 20,21/TCP,ファイル転送
 TELNET: 23/TCP,遠隔操作を行う。
  暗号化機能がないのであまり利用されない
  シンプルなので閉じたネットワークなら便利。
  一時期話題になった。
  社団法人の電子公告が「Telnet」で行われる珍事発生、早速「Tera Term」で読んでみる - やじうまの杜 - 窓の杜
 SMTP: 25/TCP,メール転送を行う。
  OP25B: 外部への25/TCPへの通信をブロック(踏み台防止)
  IP25B: 外部からの25/TCPへの通信をブロック
  サブミッションポート: 587/TCP,送信専用ポート。
 POP3: 110/TCP,メール受信を行う。
  基本的にローカルで管理
 IMAP4: 143/TCP,メール受信を行う。
  基本的にメールサーバ側で管理
 DNS: 53/TCP,53/UDPIPアドレスドメイン名の管理を行う。
 SNMP: ネットワーク上の様々な端末の監視・制御を行う。
  161/UDPSNMPエージェント
  162/UDPSNMPマネージャ(トラップ)

ユニキャストIPアドレス: 一般的な意味でのIPアドレス
ブロードキャストIPアドレス: ネットワーク内の全端末に送信するIPアドレス
 リミテッドブロードキャスト
 ディレクテッドブロードキャスト
マルチキャストIPアドレス: ネットワーク内の複数端末に送信するIPアドレス
 224.0.0.0 ~ 239.255.255.255

サブネット: 1つのネットワークを論理的に複数に分割したネットワーク

NAT: グローバルIPアドレスとプライベートIPアドレスを変換
NAPT: ポート番号も含めて変換する事で複数端末対応

ウェルノウンポート: 0~1023,有名プロトコル用の予約済みポート
登録済みポート: 1024~49151,IANAが登録したりするポート
ダイナミックポート: 49152~65535,お好きにどうぞポート

第4章: WEBサイトを見るしくみ

結構メモったんだけど,書き写すのがダルくなってきたから大事なとこだけ。

URN: 資源を一意に識別する名前
URL: 資源の位置
URI: URNとURIの両方の特性を含む事が可能な文字列
 URL,URNはURIの部分集合

めっちゃわかりやすい。
www.cman.jp URL: http s://www.example.com:443/res/index.html
スキーム: httpsWEBブラウザがWEBサーバにアクセスする時のプロトコル
ホスト: www,サーバの識別
ドメイン: example.comIPアドレスに対応付けられた名前
FQDN: www.example.com,完全修飾ドメイン
ポート: 443
ディレクト: /res/
ファイル: index.html

以下の3つは全部違う挙動をする。(-debugオプション)
nslookup google.com
nslookup www.google.com
nslookup www.google.com.

第5章: イーサネット無線LAN

MACアドレス: ネットワークインタフェース識別用アドレス
 OUI(ベンダ識別): 24bit
 シリアル番号: 24bit

第6章: ルーティング

デフォルトルート: 全ネットワークを表現したもので,ルート集約の究極系
 結果的にルーティングテーブルに無い宛先の転送先となる。
 あくまで全IPアドレスに一致するという意味が大事。
デフォルトゲートウェイ: デフォルトルートの転送先(ネクストホップ)のIPアドレス
ネクストホップ: 転送先のL3スイッチ,ルータ

VLAN: L2スイッチで複数LANを構築する仕組み
 1台のL2スイッチを仮想的に2台以上として利用する。
 ネットワークを分割するだけなので,L3機器が必要。
ポートVLAN: L2スイッチのポートにVLANを設定
タグVLAN: イーサネットフレームにVLAN情報を付与
 ポートをVLAN毎に仮想的に分割する。

第7章: ネットワークのセキュリティ技術

デジタル署名とデジタル証明書の発行手順について見直ししたい。


感想

思った以上にコンピュータネットワークについて理解できておらず, 今まで「わかったつもり」で過ごしていた事を認識できて良かったです。


ノートにまとめた内容を書き写していたんだけど,3章の後半から面倒になって適当になった。
まあ,ノートにまとめた内容は記憶できたような気がするし問題ないか。