Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
詳解TCP/IP 勉強会 3章 IP インターネットプロトコル
Search
on
March 20, 2017
190
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
詳解TCP/IP 勉強会 3章 IP インターネットプロトコル
on
March 20, 2017
More Decks by on
See All by on
詳解TCP/IP 勉強会 11章 UDP ユーザ・データグラム・プロトコル
on
1
250
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Technical Leadership for Architectural Decision Making
baasie
3
400
Prompt Engineering for Job Search
mfonobong
0
340
30 Presentation Tips
portentint
PRO
1
320
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Why Our Code Smells
bkeepers
PRO
340
58k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
210
Code Reviewing Like a Champion
maltzj
528
40k
Transcript
IP : イ ン タ ー ネ ッ ト プロ
トコ ル o n
⽬次 • 3.1 イントロダクション • 3.2 IPヘッダ • 3.3 IPルーティング
• 3.4 サブネット・アドレッシング • 3.5 サブネット・マスク • 3.6 特殊なケースのIPアドレス • 3.7 サブネットの例 • 3.8 ipconfigコマンド • 3.9 netstatコマンド • 3.10 IPの未来 • 3.11 まとめ
イントロダクション • IPとは – TCP/IPプロトコル内の主⼒ – コネクションレス – 信頼性がない •
本章では – IPヘッダのフィールド – IPルーティング – コマンド(ipconfig , netstat)
IPヘッダ • IPヘッダとは – 20バイト(オプションを除く) • ネットワーク・バイト・ オーダー – ビッグ・エンディアン
– リトル・エンディアン
IPヘッダ ヘッダ⻑ IPヘッダ⾃体の⻑さ。 単位は4オクテット(32ビット) 例:オプションなし→5 4x5=20オクテット
IPヘッダ TOS 8ビットから構成 ビット 意味 012 優先度 3 最⼤限の遅延 4
最⼤限のスルー プット 5 最⼤限の信頼性 6 最⼩限の経費 (3-6) 最⼤限のセキュリ ティ 7 未使⽤
IPヘッダ 全データ⻑ IPデータグラムの全⻑
IPヘッダ 識別⼦ 同⼀ホストによるデータグラム の識別
IPヘッダ TTL データグラムがパスできるルー ターの制限 ルーティング・ループに閉じ込 められることを防ぐ
IPヘッダ プロトコル IPヘッダの次のヘッダのプロト コルを⽰す
IPヘッダ ヘッダ・チェックサム IPヘッダが壊れていないことを 保証する
IPヘッダ 送信元IPアドレス 宛先IPアドレス そのまま
IPヘッダ オプション ・セキュリティラベル ・ソースルート ・ルートレコード ・タイムスタンプ 可変⻑なので空きに0を詰める
IPルーティング • 宛先がダイレクトにつながっている(PtoP)、または共有ネットワーク上 にある →直接転送 • そうでない →デフォルトのルーターに転送 • ホストとルーターが同⼀のルーティング・アルゴリズムを利⽤可
• データグラムを受け取る →ブロードキャスト・アドレスがチェック →Y:指定のプロトコル・モジュールに送信 N:⑴パケットを転送 ⑵破棄
IPルーティング • ルーティング・テーブルのエントリ – ホスト・アドレスかネットワーク・アドレス – ネクスト・ホップ・ルーター – フラグ –
ネットワーク・インターフェース
IPルーティング • ホップ・バイ・ホップ – ルーターが知っているのは次のルーターのIPアドレス • IPルーティングの動作 – 完全な宛先IPアドレスと適合するエントリを探す→送る
IPルーティング • 例 – 同⼀のEthernetにデータグラムを送る場合 – Bsdi → sun •
⼿順 – ルーティング・テーブル を検索 →同⼀のEthernet上である ことが判明 →リンク・ヘッダ付与 →送信
IPルーティング • 例 – 異なるネットワーク上にデータグラムを 送る場合 – bsdi → ftp.uu.net(192.48.969)
• ⼿順 – bsdi:デフォルト – sun:デフォルト – netb:デフォルト • Ethernetアドレス取得のためにARPを使⽤ – gateway:デフォルト
サブネット・アドレッシング • IPアドレス→ネットワークIDとホストID ホストID→サブネットIDとホストID • 理由:単⼀のネットワークに接続されるホストがそこまで(215-2とか)多 くない • 利点:外部ルーターにネットワーク組織の詳細を隠す
サブネット・アドレッシング • N:サブネットの番号 • 利点2:ルーティング・ テーブルのサイズを⼩さ くする – 140.252.xx.xxというホストに アクセスしたい
→140.252.104.1へのパスを知っ ているだけでよい
サブネット・マスク • サブネットIDとホストIDの境界を⽰す • ネットワークIDとサブネットID→1 ホストID→0
サブネット・マスク • 例 • ①は同じネットワーク、違うサブネット • ②は 同じネットワーク、同じサブネット • ③は違うネットワーク(クラスC)
ネットワークID サブネットID ホストID ホスト・アド レス 140.252.1.1 140 252 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 サブネット・ マスク 255.255.255.1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 宛先IPアドレ ス ①140.252.4.5 140 252 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 ②140.252.1.22 140 252 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 0 ③192.43.252.6 192 43 252 6
特殊なケースのIPアドレス 例えばBOOTPなどホスト⾃⾝がIPアドレスを決定 するときの初期化⼿続きの⼀部
サブネットの例 • サブネット13にEthernet、ポイント・ツー・ポイント接続の2つがある • サブネット番号を増やさないとこれ以上ホストが接続できない →解決策:サブネットIDの拡張 – サブネットIDを8→11 ホストIDを8→5
サブネットの例 • サブネットIDを8→11 ホストIDを8→5 ポイント・ツー・ポイントに010 Ethernetに001
サブネットの例 Ethetnetのサブネット と 最後の5ビット(全部1だから31) を組み合わせ →140.252.13.32 + 31 = 140.252.13.63
ifconfigコマンド • コンピュータが指定されているネットワークの状態を知るコマンド • Le0:Ethernet • Sl0:SLIP • Lo0:ループバックアドレス、127.0.0.1 圧縮SLIPを⾏うためのコンフィグレー
ション・オプション
ifconfigコマンド 4.4BSDフラグ インターフェースが⾃分⾃⾝ への送信を認識できないとき に指定
ifconfigコマンド
ifconfigコマンド
netstatコマンド • netstatコマンド – システムのインターフェースに関する情報の提供 – -i インターフェース情報を出⼒ – -n
ホスト名の代わりにIPアドレスを出⼒ MTU ⼊⼒パケット数 エラー数 出⼒パケット数 エラー数 衝突の数 現在の出⼒キューのサイズ
IPの未来 • 問題 – クラスBのアドレスの枯渇(古い?) – 32ビットIPアドレスが妥当で無くなる – ルーティング構造が階層的ではなくフラット •
解決 – SIP(Simple Internet Protocol) – PIP – TUBA(TCP and Bigger Addresses) – TP/IX • 上記3つは現⾏のTCP、UDPを⽤いる • IPv6が使⽤されるようになった
まとめ • IPヘッダ • IPルーティング – ルーティング・テーブル – エントリの優先順位 •
サブネット・マスク • インターフェースやネットワークを知るためのコマンド – netstat、ifconfig • 未来の話