網路程式設計 -- 陳啟彰

56
網網網網網網 -- 網 網網 Text book:

Upload: gianna

Post on 21-Jan-2016

135 views

Category:

Documents


0 download

DESCRIPTION

網路程式設計 -- 陳啟彰. Text book:. 第一章 TCP/IP 網路基本概論. 1-1 TCP/IP 網路的發展簡史 1-2 通訊協定 1-3 IP 位址 1-4 DNS 協定 1-5 DHCP 協定 1-6 網路故障偵測. TCP/IP 網路發展簡史 -70 年代初期. 70 年代,美國國防部委託高等研究計畫機構( Advanced Research Projects Agency , ARPA )發展了一套稱之為 ARPAnet 的實驗性網路。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 網路程式設計                   --  陳啟彰

網路程式設計 --

陳啟彰Text book:

Page 2: 網路程式設計                   --  陳啟彰

第一章 TCP/IP 網路基本概論 1-1 TCP/IP網路的發展簡史 1-2通訊協定 1-3 IP位址 1-4 DNS協定 1-5 DHCP協定 1-6網路故障偵測

Page 3: 網路程式設計                   --  陳啟彰

TCP/IP網路發展簡史 -70年代初期

70 年代,美國國防部委託高等研究計畫機構( Advanced Research Projects Agency , ARPA )發展了一套稱之為ARPAnet 的實驗性網路。

ARPAnet 網路將不同平台的電腦系統串連起來,是 TCP/IP 發展的前身。

Page 4: 網路程式設計                   --  陳啟彰

1-1 TCP/IP 網路的發展簡史第一章 TCP/IP 網路基本概論

Page 5: 網路程式設計                   --  陳啟彰

TCP/IP網路發展簡史 -70年代中期

70 年代中期, ARPAnet 改變為應用網路,改名為國防部委託高等研究計畫機構( Defense Advanced Research Projects Agency , DARPA ),並由國防部的通訊署( Defense Communications Agency , DCA )來負責管理。

TCP/IP 網路於此時開始發展。

Page 6: 網路程式設計                   --  陳啟彰

TCP/IP網路發展簡史 -80年代• 80 年代,美國國防部要求所有要與 ARPAnet

網路連線的電腦,都必須使用 ARPAnet 協定• Unix 系統與 TCP/IP 網路於此時開始結合起來。• ARPAnet 將網路依保密與否切割成兩個網路:

– 未保密: MILNET– 保密: ARPAnet

• Internet 網路結合了 MILNET 與ARPAnet , 90 年代初期 ARPAnet 網路告別歷史,由 Internet 網路所取代。

Page 7: 網路程式設計                   --  陳啟彰

TCP/IP 的兩個重要協定 傳輸控制協定( Transmission Control

Protocol , TCP )。 網際協定( Internet Protocol , IP )。

Page 8: 網路程式設計                   --  陳啟彰

RFC 文件 所有的網路通訊協定,都是根據 RFC 文件

來制訂的。 http://www.ietf.org/

Page 9: 網路程式設計                   --  陳啟彰

1-2 通訊協定第一章 TCP/IP 網路基本概論

Page 10: 網路程式設計                   --  陳啟彰

OSI 網路通訊模型 OSI : Open Systems Interconnect

Reference Model 。 由國際標準組織( International Standard

Organization , ISO )所發展的一套網路通訊協定標準。

Page 11: 網路程式設計                   --  陳啟彰

OSI 網路通訊模型之七層架構

Page 12: 網路程式設計                   --  陳啟彰

OSI - 實體層 Physical Layer 定義網路硬體的物理特性與規格:

電壓準位 資料流量控制方法 連接介面 區域網路接線標準

Page 13: 網路程式設計                   --  陳啟彰

OSI - 資料連結層 Data Link Layer 。 確保傳輸的資料可以被安全的遞送到對方。 由網路硬體製造商所提供的驅動程式來提

供資料連結層的服務。 MAC(Medium Access Control) 位址每個位

元組由 16 進位的數值所組成。

Page 14: 網路程式設計                   --  陳啟彰

OSI - 網路層 Network Layer 。 管理網路的連線。 建立網路之間的主機對主機的 Connection :

讓要傳輸的資料封包,可以傳輸至指定的 IP 位址。

允許在不同的網路之間,透過路由器的服務來進行資料的傳輸。

Page 15: 網路程式設計                   --  陳啟彰

OSI - 傳輸層 Transport Layer 。 確保資料封包可以正確的傳輸。 TCP (傳輸控制協定, Transmission

Control Protocol ) 。 UDP (使用者資料封包協定, User

Datagram Protocol ) 。

Page 16: 網路程式設計                   --  陳啟彰

OSI - 交談層• Session Layer 。• 管理資料傳輸發送端與接收端的網路應用

程式之彼此相關互動。• 管理各種網路應用程式的連線過程:

– FTP 伺服器或 FTP 客戶端程式– 發送 Email :客戶端會有類似 Outlook 的電子

郵件程式,伺服端會有一個郵件伺服器。– 瀏覽網頁:前端 Internet Explorer 的瀏覽器,

伺服端會有一個 Web 伺服器。

Page 17: 網路程式設計                   --  陳啟彰

OSI - 表現層 Presentation Layer 。 對應用層提供標準的資料呈現規則。 定義資料交換的格式:

發出需求 傳送結果

Page 18: 網路程式設計                   --  陳啟彰

OSI - 應用層 Application Layer 。 使用網路服務的應用程式。 處理所有使用者對網路的需求,如:

瀏覽網站 收發電子郵件 下載與上傳檔案

Page 19: 網路程式設計                   --  陳啟彰

TCP/IP 通訊協定模型 將 OSI 通訊協定整合並簡化,變成網路存取

層、網際層、傳輸層與應用層等四層架構。

Page 20: 網路程式設計                   --  陳啟彰

TCP/IP - 網路存取層 存取實體網路的程序。 整合 OSI 通訊協定模型的實體層、資料連

結層和網路層的功能。 把資料封包傳送給網路設備。 定義資料封包的格式。 定義網路傳送的底層資料。

Page 21: 網路程式設計                   --  陳啟彰

TCP/IP - 網際層 定義資料封包的格式,並處理資料傳送的

路徑。 IP 協定:

定義資料封包的格式。 定義 IP 位址的格式。 在下層的網路存取層與上層的傳輸層來傳輸資

料。 負責決定資料傳送的路徑與封包的分割與重組。

Page 22: 網路程式設計                   --  陳啟彰

TCP/IP - 傳輸層 提供主機與主機之間的資料封包傳輸服務。

規劃資料封包的資料流量。 規劃資料能正確的抵達到目的地的路徑。 收到的資料封包與發送的資料封包是一致:

遺失的封包重新發送 移除重覆的資料封包 排列正確的資料封包順序

分為 TCP 與 UDP 。

Page 23: 網路程式設計                   --  陳啟彰

TCP/IP - 應用層 網路應用程式負責的程序。 整合了 OSI 通訊協定模型的應用層、展現

層與交談層。

Page 24: 網路程式設計                   --  陳啟彰

OSI 與 TCP/IP

Page 25: 網路程式設計                   --  陳啟彰

IP 封包表頭的結構

Page 26: 網路程式設計                   --  陳啟彰

TCP 封包表頭的結構

Page 27: 網路程式設計                   --  陳啟彰

UDP 封包表頭的結構

Page 28: 網路程式設計                   --  陳啟彰

TCP 通訊協定連線與中斷連線的流程

Page 29: 網路程式設計                   --  陳啟彰

1-3 IP 位址第一章 TCP/IP 網路基本概論

Page 30: 網路程式設計                   --  陳啟彰

IP 位址 IP 位址是每一個網路設備的一個編號。 目前 IP 位址是使用 IPv4版本的規格。

由四個位元組所組成。 每個位元組是一個不超過 255 ( 8 位元, 0 ~

255 )的數值。

Page 31: 網路程式設計                   --  陳啟彰

兩個 IP 位址是否在同一個網路? 把 IP 位址與它的網路遮罩來進行 AND運算。 計算結果:

兩者的主機號碼若相同,就是在同一個網路。

Page 32: 網路程式設計                   --  陳啟彰

特定用途的 IP 位址 第一組數字 127 保留給回溯( loopback

address )介面所使用。 私有 IP , private IP :

10.X.X.X 172.16.X.X ~ 172.31.X.X 192.168.1.X ~ 192.168.255.X

multicast虛擬 IP : 224.X.X.X ~ 239.X.X.X

Page 33: 網路程式設計                   --  陳啟彰

私有 IP 使用時的注意事項 路由資訊不可以對外散播。 傳送資料封包,不能透過網際網路來轉送。 只限於內部的區域網路所使用。

Page 34: 網路程式設計                   --  陳啟彰

子網路遮罩( 1/2 )• A級網路:

– IP 位址第一個位元為 0 。– 子網路遮罩長度預設為 8 位元。

• B級網路:– IP 位址前兩個位元為 10 。– 則子網路遮罩長度預設為 16 位元。

• C級網路:– IP 位址前三個位元為 110 。– 子網路遮罩長度預設為 24 位元。

Page 35: 網路程式設計                   --  陳啟彰

子網路遮罩( 2/2 ) D級網路:

IP 位址前四個位元為 1110 。 子網路遮罩長度預設為 32 位元。

E級網路: IP 位址前四個位元為 1111 。 子網路遮罩長度預設為 32 位元。

Page 36: 網路程式設計                   --  陳啟彰

網路等級與 IP 位址

網路等級 IP位址範圍 網路數目 每個網路可分配 IP數目

A級網路1 ~ 128.0.0.0 128 254×254×254

B級網路129 ~ 192.1 ~ 254.0.0 64×254 254×254

C級網路 193 ~ 223.1 ~ 254.1 ~254.0

32×254×254 254

D級網路 224 ~ 239.1 ~ 254.1 ~254.0

16×254×254 依子網路遮罩而定

E級網路 240 ~ 254.1 ~ 154.1 ~254.0

24×254×254 依子網路遮罩而定

Page 37: 網路程式設計                   --  陳啟彰

NAT(Network Address Translation)技術

透過通訊埠的設定,可以將公開 IP 所接收的資料封包轉送至內部的私有網路的指定IP 位址。

達到一個公開 IP大家共享的目的。 解決 IP荒的問題。

Page 38: 網路程式設計                   --  陳啟彰

路由表 電腦 A 要傳送資料封包到電腦 B :

經由驗算得知電腦 B 不在同一個網路上 透過路由器將資料封包轉出目前的網路 從路由器找出電腦 B 的位址 再從電腦 B 的閘道器將資料封包轉進電腦 B 的位址。

繞徑( Routing ) : 從電腦 A經由路由器連接到另一部電腦 B ,這個過程稱之為繞徑( Routing )。

Page 39: 網路程式設計                   --  陳啟彰

繞徑 Routing: 從電腦 A經由路由器連接到另一部電腦 B

之過程。 指令 : (show the routing table)

netstat -r

Page 40: 網路程式設計                   --  陳啟彰

1-4 DNS 協定第一章 TCP/IP 網路基本概論

Page 41: 網路程式設計                   --  陳啟彰

DNS

網域名稱系統, Domain Name Service 。 透過 DNS 伺服器可以查詢網址所對應的主

機 IP 位址。

Page 42: 網路程式設計                   --  陳啟彰

DNS 機構網域

機構網域 說明 機構網域 說明com 公司﹑企業 areo 航空工業edu 教育﹑學術單位 bit 商業組織gov 政府機關 coop 公司行號mil 軍事單位 museum 博物館

展覽單位net 網路﹑通訊單位 pro 專業人士int 國際的官方組織

半官方組織info 提供資訊的網站

org 非營利機構 idv 個人

Page 43: 網路程式設計                   --  陳啟彰

網域階層架構

Page 44: 網路程式設計                   --  陳啟彰

1-5 DHCP 協定第一章 TCP/IP 網路基本概論

Page 45: 網路程式設計                   --  陳啟彰

DHCP

Dynamic Host Configuration Protocol 。 可以自動完成 IP配置的協定。

伺服器端:集中管理所有網路設定的資料 客戶端:從 DHCP 伺服器取得所配置的網路設

定: IP 位址 網路遮罩 預設閘道 DNS 伺服器

Page 46: 網路程式設計                   --  陳啟彰

DHCP運作流程

Page 47: 網路程式設計                   --  陳啟彰

1-6 網路故障偵測第一章 TCP/IP 網路基本概論

Page 48: 網路程式設計                   --  陳啟彰

檢視網路卡硬體是否正常驅動

Page 49: 網路程式設計                   --  陳啟彰

檢視網路卡是否正常運作

Page 50: 網路程式設計                   --  陳啟彰

ipconfig

Page 51: 網路程式設計                   --  陳啟彰

檢測 loopback 是否有回應

Page 52: 網路程式設計                   --  陳啟彰

網路卡驅動程式是否有錯誤?

Page 53: 網路程式設計                   --  陳啟彰

測試電腦與預設閘道之間是否正常?

Page 54: 網路程式設計                   --  陳啟彰

測試 DNS 伺服器

Page 55: 網路程式設計                   --  陳啟彰

追蹤路由

Page 56: 網路程式設計                   --  陳啟彰

Telnet :偵測遠端網路服務