SlideShare ist ein Scribd-Unternehmen logo
1 von 59
Downloaden Sie, um offline zu lesen
で・ね・と
#qpstudy 2015.06
自己紹介
http://2015.techfesta.jp/p/program.html#immutable_infrastructure
まさかの宣伝からスタート
July Tech Festa 2015 (7/26[Sun]) お待ちしてます
本日の目的
• ボクたちは
どこから来て、ドコへ行くのか
• どうして、そこへ
向かうのか
なぜ、Internetできるのか
どうしてWebサイトのことを
ホームページとか、Internet
とか言ってしまうんだろう
劇団QP寸劇のおさらいです
qpstudy
2013.07(http://www.zusaar.com/event/885004)
http://oshiire.to/archives/4667
URLとはなにか
• http://oshiire.to/archives/4667
スキーム ホスト名 パス名
特定機能の指示語
接続先サーバ名
(ファイルやディレクトリの)パス
欲しいもののありかを示す
ホスト名→IPアドレス
Web Browser
oshiire.to
IPアドレスを知る
Domain Name System
このホストのアドレスは?
61.206.116.71
Domain Name System
賢者が分からないときは...
Web Browser
oshiire.to
神様に聞く
13神
Root Server
所属が分からん
oshiire.to
61.206.116.71
216.74.32.100
神様はここにいる
IPアドレスって?
16進数 D 2 E 1 E 6 5 2
2進数 1101 0010 1110 0001 1110 0110 0101 0010
10進数 210 225 230 82. . .
こんなやつで、所在が分かる
ここまでの反省
• サーバの宛先は分かった
しかし、
そこまで
どうやって繋がるのか
• 彼らは
IPアドレスで何を知り
どこへ向かうのか
ネットワークとはなにか
ネットワークがつながるには
何が必要で、
ボクには何が足りないのか
ネットワークに必要な機能
1. 信号変換
2. エラー制御
3. 経路選択
4. 信頼性
5. 経路制御
6. 効率・整形
7. データを正しく相手に送ること
ネットワークプロトコル
ネットワークに必要な機能を満たすために
通信規約とはなんだ
大 人の約束
OSI の 7階層とはなんだ
階層名 ひとこと
アプリケーション層 通信サービスの規定
プレゼンテーション層 データの表現規定
セッション層 通信の開始から終了の手順
トランスポート層 End to End の通信管理
ネットワーク層 通信経路の選択
データリンク層 直接接続の機器間のやりとり
フィジカル(物理)層 コネクタや信号変換の規定
実は
階層名 機能との紐付け
アプリケーション層 正確無比なデータの送受信
プレゼンテーション層 効率・整形 (圧縮,データ変換)
セッション層 経路制御 (セッションの維持,解放)
トランスポート層 信頼性 (接続確立,再送制御,順序制御)
ネットワーク層 経路選択 (最適経路の探索)
データリンク層 エラー制御 (輻輳制御,フロー制御)
フィジカル(物理)層 信号変換
TCP/IP
オレが生まれたときに
うまれた
TCP/IP was born in May,1974
TCP/IPの特徴・特色
業 界 標 準
OSI 7階層と TCP/IPの階層
フィジカル(物理)層
データリンク層
ネットワーク層
トランスポート層
セッション層
プレゼンテーション層
アプリケーション層
ハードウェア(UTP・STP)
インタフェイス(Ethernet・PPP)
インターネット (IP)
トランスポート(TCP・UDP)
アプリケーション
(HTTP・FTP・DNS・SMTP)
OSI 参照モデル TCP/IP
LANとかWANとはなんだ
The Internet
WAN
WAN
WAN
WAN
LAN
LAN
LAN
LAN
LAN
LAN
LAN
LAN
LAN
LAN
LANって
WANって
回
線
事
業
者
回線事業者
ネットワーク機器のご紹介
唐突だけど
リピータ
リピータ
Web Browser Web Server
減衰した波形を増幅する
ICONはCISCOの趣味で、ボクの趣味ではありません
ブリッジ
相手を特定して送受信できる
Web Browser
ブリッジ
Web Server Web Server Web Server Web Server
ルータ
ネットワーク間の通信を制御する
あとで詳しく
ルータ
ゲートウェイ
異なる通信規約同士の接続
ゲートウェイ
無線TCP/IP IPX/SPX
どのようにたどり着くのか
彼は
ながされ
そこにたどりつく
OSI vs TCP/IPふたたび
フィジカル(物理)層
データリンク層
ネットワーク層
トランスポート層
セッション層
プレゼンテーション層
アプリケーション層
ハードウェア(UTP・STP)
インタフェイス(Ethernet・PPP)
インターネット (IP)
TCP
HTTP・FTP
OSI 参照モデル TCP/IP
SNMP
UDP
L4:TCP (Transmission Control Protocol)
相 手を補足
セグメントA
セッションって何だ
セグメントB
セグメントC
セグメントDルータ
ルータ ルータ
ルータ
ルータ
ルータ
セ
ッ
シ
ョ
ン
TCPフレーム
状態遷移?
フラグはへし折られるもの
フラグ 概要
SYN  (SYNchronize) 「おい、俺だ」
ACK  (ACKnowledgement) 「了解」
PSH  (PuSH) 「今からデータを送る」
URG  (URGent) 「おい、俺は今急いでる」
FIN  (FIN) 「オーバー」
RST  (ReSeT) 「や、やつだ!  うわぁぁあああ」 (ツーツー)
L4:UDP (User Datagram Protocol)
相 手へ投擲
セッションレスだと・・・?
セグメントA
セグメントB
セグメントC
セグメントDルータ
ルータ ルータ
ルータ
ルータ
ルータ
UDPフレーム
アプリをどうやって区別するか
110/tcp (pop3)
80/tcp (www/http)
53/udp (dns/domain)
25/tcp (smtp)
23/tcp (telnet)
22/tcp (ssh)
L3:IP (Internet Protocol)
相 手の特定
IPアドレス再び
16進数 D 2 E 1 E 6 5 2
2進数 1101 0010 1110 0001 1110 0110 0101 0010
10進数 210 225 230 82. . .
これで何が分かるのか
サブネット ≒ セグメント
16進数 D 2 E 1 E 6 5 2
2進数 1101 0010 1110 0001 1110 0110 0101 0010
10進数 210 225 230 82. . .
210.225.230.82/24 = ?
ネットワークアドレス ホスト
アドレス
セグメントの範囲を特定する
IPフレーム (IPv4)
V6は?
セグメント
そもそもセグメントって?
別セグメントへ
バカハブ スイッチ
Default Gatewayって
設定させられるよね?
セグメントA セグメントB セグメントC
自セグメント
? ? ?
困ったときに行くとこはどこ?
ルーティング
セグメントA セグメントB セグメントC
210.225.230.0/24192.168.100.0/24172.16.12.0/16
それはドコなのか、を解消する
静的ルーティング
セグメントA セグメントB セグメントC
210.225.230.0/24192.168.100.0/24172.16.12.0/16
172.16.12.0/16
192.168.100.0/24
210.225.230.0/24
すべて手動で定義
動的ルーティング
セグメントA セグメントB セグメントC
210.225.230.0/24192.168.100.0/24172.16.12.0/16
ルータA ルータB ルータC
ルータたちが勝手に決める
ルーティングまとめ
静的 動的
設定 × ○
障害切替 ×
(別対策必須) ○
障害対応 ○ ×
管理 ○ ×
評価 Intra/Extranet Internet
L2:DLC (Data Link Control)
隣 人と会話
IPだけでは特定できない
当たりはつけたが、
どいつや...
お前は誰だ
こっちなの?
それとも、こっち?
物理的な接続との結び付けが必須
MACアドレス
7 6 5 4 3 2 1 0
G/L I/G
40 6c 8f 3e 6c 00
上位3バイトはIEEEが管理 下位3バイトはベンダーが管理
I/G
0 Individual Address (ユニキャストアドレス)
1 Group Address (マルチキャストアドレス)
G/L
0 Global Address
1 Local Address
Ethernetフレーム
よく分かる で・ね・と のまとめ
• TCP/IP は業界標準の通信規約
• IPアドレスで相手を限定する
• TCPで相手を補足する
• UDPで相手に投げつけて逃げる
• MACで真犯人を特定する
ご清聴
ありがとうございました
何か質問は?

Weitere ähnliche Inhalte

Ähnlich wie TCP/IPでネットワークが繋がるわけ「で・ね・と」

ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2Taichi Inaba
 
mod_perlで動くアプリをどう置くか #hachiojipm
mod_perlで動くアプリをどう置くか #hachiojipmmod_perlで動くアプリをどう置くか #hachiojipm
mod_perlで動くアプリをどう置くか #hachiojipm鉄次 尾形
 
意図を表現するプログラミング
意図を表現するプログラミング意図を表現するプログラミング
意図を表現するプログラミングAtsuhiro Kubo
 
Ssp before-making-os2
Ssp before-making-os2Ssp before-making-os2
Ssp before-making-os2Kiyoshi Ogawa
 
ASP.NET WebAPI 体験記 #clrh99
ASP.NET WebAPI 体験記 #clrh99ASP.NET WebAPI 体験記 #clrh99
ASP.NET WebAPI 体験記 #clrh99Katsuya Shimizu
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島Tomohiko Himura
 
PyCon APAC 2013 Web Secure Coding
PyCon APAC 2013 Web Secure CodingPyCon APAC 2013 Web Secure Coding
PyCon APAC 2013 Web Secure CodingGouji Ochiai
 
第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと
第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと
第六回 #渋谷java Javaを書き始めて 1年半が経って思うことKazuhiro Serizawa
 
Application insights で行ってみよう
Application insights で行ってみようApplication insights で行ってみよう
Application insights で行ってみようKazushi Kamegawa
 
第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 Laravel第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 LaravelJunKeun Lee
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料Riko Wakiyama
 
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門Kohei Kadowaki
 
Sola勉強会 ssh再入門
Sola勉強会 ssh再入門Sola勉強会 ssh再入門
Sola勉強会 ssh再入門Shiojiri Ohhara
 
As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!Kazumi IWANAGA
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料Riko Wakiyama
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料Riko Wakiyama
 
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!Sakae Saito
 
セキュリティの基本とWordPress
セキュリティの基本とWordPressセキュリティの基本とWordPress
セキュリティの基本とWordPressEndoh Shingo
 
20161208 Classmethod Codenize Tools
20161208 Classmethod Codenize Tools20161208 Classmethod Codenize Tools
20161208 Classmethod Codenize ToolsKazuki Ueki
 

Ähnlich wie TCP/IPでネットワークが繋がるわけ「で・ね・と」 (19)

ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2
 
mod_perlで動くアプリをどう置くか #hachiojipm
mod_perlで動くアプリをどう置くか #hachiojipmmod_perlで動くアプリをどう置くか #hachiojipm
mod_perlで動くアプリをどう置くか #hachiojipm
 
意図を表現するプログラミング
意図を表現するプログラミング意図を表現するプログラミング
意図を表現するプログラミング
 
Ssp before-making-os2
Ssp before-making-os2Ssp before-making-os2
Ssp before-making-os2
 
ASP.NET WebAPI 体験記 #clrh99
ASP.NET WebAPI 体験記 #clrh99ASP.NET WebAPI 体験記 #clrh99
ASP.NET WebAPI 体験記 #clrh99
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島
 
PyCon APAC 2013 Web Secure Coding
PyCon APAC 2013 Web Secure CodingPyCon APAC 2013 Web Secure Coding
PyCon APAC 2013 Web Secure Coding
 
第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと
第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと
第六回 #渋谷java Javaを書き始めて 1年半が経って思うこと
 
Application insights で行ってみよう
Application insights で行ってみようApplication insights で行ってみよう
Application insights で行ってみよう
 
第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 Laravel第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 Laravel
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料
 
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門
 
Sola勉強会 ssh再入門
Sola勉強会 ssh再入門Sola勉強会 ssh再入門
Sola勉強会 ssh再入門
 
As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!As you like, PHP on Azure - お気に召すままに!
As you like, PHP on Azure - お気に召すままに!
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料
 
ワークショップ向け資料
ワークショップ向け資料ワークショップ向け資料
ワークショップ向け資料
 
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!
 
セキュリティの基本とWordPress
セキュリティの基本とWordPressセキュリティの基本とWordPress
セキュリティの基本とWordPress
 
20161208 Classmethod Codenize Tools
20161208 Classmethod Codenize Tools20161208 Classmethod Codenize Tools
20161208 Classmethod Codenize Tools
 

Mehr von Takashi Abe

Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Takashi Abe
 
Heroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDHeroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDTakashi Abe
 
わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻Takashi Abe
 
王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイトTakashi Abe
 
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことMicroservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことTakashi Abe
 
暗号化の歴史
暗号化の歴史暗号化の歴史
暗号化の歴史Takashi Abe
 
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そうマイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そうTakashi Abe
 
なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)Takashi Abe
 
qpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだqpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだTakashi Abe
 
お金と技術のCROSS
お金と技術のCROSSお金と技術のCROSS
お金と技術のCROSSTakashi Abe
 
Qpstudy2013.07 devops
Qpstudy2013.07 devopsQpstudy2013.07 devops
Qpstudy2013.07 devopsTakashi Abe
 
Disaster Recovery
Disaster Recovery Disaster Recovery
Disaster Recovery Takashi Abe
 
The Story of CPU
The Story of CPUThe Story of CPU
The Story of CPUTakashi Abe
 
Presentation technic
Presentation technicPresentation technic
Presentation technicTakashi Abe
 
勉強会の系譜
勉強会の系譜勉強会の系譜
勉強会の系譜Takashi Abe
 
秋の夜長のトランスポート
秋の夜長のトランスポート秋の夜長のトランスポート
秋の夜長のトランスポートTakashi Abe
 
ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料Takashi Abe
 
インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編Takashi Abe
 
ストレージ友の会 #01
ストレージ友の会 #01ストレージ友の会 #01
ストレージ友の会 #01Takashi Abe
 
グループディスカッションの巻
グループディスカッションの巻グループディスカッションの巻
グループディスカッションの巻Takashi Abe
 

Mehr von Takashi Abe (20)

Docker on Heroku のはじめ方
Docker on Heroku のはじめ方Docker on Heroku のはじめ方
Docker on Heroku のはじめ方
 
Heroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CDHeroku でカンタンすぐに実現する CI/CD
Heroku でカンタンすぐに実現する CI/CD
 
わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻わたしの数少ない 小ヒット作を語ろうの巻
わたしの数少ない 小ヒット作を語ろうの巻
 
王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト王道ダイエットで痩せる話 #デブナイト
王道ダイエットで痩せる話 #デブナイト
 
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきことMicroservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
 
暗号化の歴史
暗号化の歴史暗号化の歴史
暗号化の歴史
 
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そうマイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう
マイクロサービスで、
一歩先行くImmutable Infrastructureを目指そう
 
なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)なぜ #airinterop は毎年開催されるのか(仮)
なぜ #airinterop は毎年開催されるのか(仮)
 
qpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだqpstudy 2014.04 インフラエンジニアとは、なんだ
qpstudy 2014.04 インフラエンジニアとは、なんだ
 
お金と技術のCROSS
お金と技術のCROSSお金と技術のCROSS
お金と技術のCROSS
 
Qpstudy2013.07 devops
Qpstudy2013.07 devopsQpstudy2013.07 devops
Qpstudy2013.07 devops
 
Disaster Recovery
Disaster Recovery Disaster Recovery
Disaster Recovery
 
The Story of CPU
The Story of CPUThe Story of CPU
The Story of CPU
 
Presentation technic
Presentation technicPresentation technic
Presentation technic
 
勉強会の系譜
勉強会の系譜勉強会の系譜
勉強会の系譜
 
秋の夜長のトランスポート
秋の夜長のトランスポート秋の夜長のトランスポート
秋の夜長のトランスポート
 
ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料ストレージ友の会 #02 説明資料
ストレージ友の会 #02 説明資料
 
インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編インフラエンジニア向けプログラミング超初心者入門編
インフラエンジニア向けプログラミング超初心者入門編
 
ストレージ友の会 #01
ストレージ友の会 #01ストレージ友の会 #01
ストレージ友の会 #01
 
グループディスカッションの巻
グループディスカッションの巻グループディスカッションの巻
グループディスカッションの巻
 

TCP/IPでネットワークが繋がるわけ「で・ね・と」