Download presentation
Presentation is loading. Please wait.
1
第2章 網路模型運作、ICMP與ARP協定
2
章節大綱 OSI 網路模型 模擬器的動畫功能觀察網路模型 應用層 使用Wireshark來觀察網路模型 傳輸層 ICMP協定 網路層
ARP 協定 資料連接層 跨不同網路區域的ARP運作
3
2.1 OSI 網路模型
4
OSI 網路模型 ISO(國際標準組織) 發表了OSI模型,其定義網路系統分成7層 (Layer)
Layer 1簡稱為L1,其他各層以此類推,每層各自負責特定的工作
5
OSI 的7 Layers
6
TCP/IP網路模型 TCP/IP網路模型建立於1970年代初期,又稱為 Internet 模型
由於網際網路最初起源於美國國防部軍事用途,因此這個模型又稱為DoD模型(Department Of Defense),但是文件常見到的稱呼為TCP/IP 模型 TCP/IP 模型定義了四層協定
7
TCP/IP 的4 Layers
8
OSI與TCP/IP對照 雖然TCP/IP 的四層網路模型與OSI的七層網路模型各有自己的架構,但是大體上兩者仍能互相對應,如下圖所示
9
網路模型的優點 訂定標準,讓全世界的廠商來參考,以避免網路產品的相容性問題產生。
有助於通訊協定設計,因為對於在特定層工作的通訊協定而言,它們的工作方式及其與上下層之間的介面都已經確定。 避免一個通訊協定層的技術或功能性變化影響相鄰的其他層。 提供了說明網路功能和能力的通用語言。
10
模型運作方式 當資料由來源端的應用程式產生時,資料要送出時就要參考網路模型中由上層往下層傳送,每經過一層,都會在前端增加一些該層專用的資訊,這些資訊稱為表頭檔(Header),然後才傳給下一層 在目的端收到資料時,相反的,要由下層往上層傳送,每經過一層,會將該層的表頭檔拿掉
11
表頭檔的封裝 當資料送出時,資料是由上而下將表頭檔加到到資料前面,此動作稱為封裝(encapsulation)
12
表頭檔的解封裝 當資料由下而上到,此時就要將此表頭檔從資料中拿掉,此動作稱為解封裝(decapsulation)
13
各層資料單位 在封裝過程中,每一層都會封裝其表頭檔,每一層封裝後都有其對應的資料單位PDU (PDU,Protocol Data Unit) ,如下圖
14
2.2 應用層
15
應用層 網域名稱服務協定 (DNS):用於將網際網路網域名稱解析為 IP 位址。 動態主機IP配置協定(DHCP):用於電腦的IP自動分配。
在OSI模型的上三層(L7~5)功能為使用者應用程式,提供網路服務定義相對應於TCP/IP 應用。常見到的應用層協定有如下: 網域名稱服務協定 (DNS):用於將網際網路網域名稱解析為 IP 位址。 動態主機IP配置協定(DHCP):用於電腦的IP自動分配。 超文字傳輸協定 (HTTP):用於傳輸組成全球資訊網網頁(WWW)的檔案。 簡易郵件傳輸協定 (SMTP):用於傳輸郵件及其附件資訊。 郵件接收協定(POP):用於使用者接收郵件及其附件資訊。 遠端登入協定(Telnet or ssh):一種終端模擬協定,用於遠端存取伺服器和網路裝置,telnet 傳輸資料為明碼方式,ssh則有加密。 檔案傳輸協定 (FTP):用於在系統之間相互傳輸檔案。 檔案傳輸協定 (TFTP):簡易版的FTP,不需要登入帳號。
16
應用協定的編號 每種應用層協定都會有一個編號,如下表所示為常用到的應用協定的編號,此編號稱為port no. 應用協定 編號
網域名稱服務協定 (DNS) 53 動態主機IP配置協定(DHCP) 67和 68 超文字傳輸協定 (HTTP) 80 安全超文字傳輸協定(HTTPS) 443 網管軟體協定(SNMP) 161 簡易郵件傳輸協定 (SMTP) 25 郵件接收協定(POP) 110 網頁郵件協定(IMAP4) 143 遠端登入協定Telnet 23 檔案傳輸協定 (FTP) 20 和 21 簡易檔案傳輸協定(TFTP) 69
17
所有應用程式服務的編號
18
2.3 傳輸層特性
19
傳輸層 傳輸層的主要目的為決定應用資料要以何種方式來傳送,有兩種方式可以選擇,TCP方式是一種可靠性(reliable)傳送協定,另一種UDP方式是一種不可靠(unreliable)的傳送協定 常見 TCP 通訊協定的應用程式包括: Web 瀏覽器 電子郵件 檔案傳輸協定 (FTP) 遠端登入協定Telnet 常見UDP 協定的應用包括: 網域名稱系統 (DNS) 網管軟體協定(SNMP) 視訊串流 簡易檔案傳輸協定(TFTP)
20
TCP vs UDP Protocol TCP UDP 傳送特點 Reliable Best Effort(盡量傳送) 流量控管 有 無
連線需求 Connection-oriented Connectionless 常見的應用程式 . .File sharing .HTTP .Voice streaming .Video steaming
21
TCP與UDP表頭檔 TCP表頭檔 UDP表頭檔
22
TCP與UDP表頭檔重要的欄位功能 以下是TCP與UDP表頭檔中一些比較重要的欄位功能介紹: Source Port 與 Destination Port 這兩個欄位在 TCP 與 UDP 都有定義,其功能為埠定址 (port address),在 Destination Port 表示使用的應用程式,因此要把應用程式的編號填入此欄位,Source Port 表示視窗編號,此編號會由作業系統指定給開啟的視窗。 TCP 中 Sequence Number 與 Acknowledgement Number 兩個欄位要互相配合來達成資料是否有傳送到目的。 TCP 中 Flag 欄位主要控制TCP連線會談的建立與結束。 TCP 中 Windows 欄位用來做流量控管。
23
TCP建立連線 SEQ表示電腦送出資料的序號,ACK表示要收到對方資料的序號
24
TCP 可靠傳送的作法(接收端) 使用SEQ及ACK欄位的資訊
25
TCP 可靠傳送的作法(傳送端) 使用ACK封包
26
TCP流量控管作法 使用Windows欄位
27
傳輸層Port Addressing 作用 傳輸層Port Addressing又稱為L4的定址
28
2.4 網路層
29
網路層 主要負責傳送資料的來源端與目的端的定址(IP)及選擇傳送資料路徑,其表頭檔如下圖,當資料從傳輸層往下傳送到網路層時,就要下圖表頭檔封裝到資料中
30
網路層協定 網路層在傳送使用者資料的通訊協定包括如下,其中IPv4為我們目前主要用的網路層協定。
Internet 通訊協定第四版 (IPv4) Internet 通訊協定第六版 (IPv6) Novell 互連網路封包交換通訊協定 (IPX) AppleTalk 非連結導向網路服務 (CLNS/DECNet)
31
網路層IPv4表頭檔重要的欄位 以下是網路層IPv4表頭檔中比較重要的欄位功能介紹:
Destination Address為IP 目的位址欄位包含一個 32 位元二進位值,代表封包目的主機的網路層位址。 Source Address為IP 來源位址欄位包含一個 32 位元二進位值,代表封包來源主機的網路層位址。 Time to Live (TTL)存活時間表示封包的剩餘傳送時間。 Protocol通訊協定 表示封包傳送的資料負載類型,網路層參照通訊協定欄位將資料傳送到對應的上層通訊協定,常見的值有01表示 ICMP,06表示 TCP及17表示UDP。 Type of Service服務類型欄位用於確定每個封包的優先順序別,此欄位主要用於服務品質 (QoS) 機制。 Fragment offset片偏移量用於傳送資料封包遇到頻寬較小時必須將封包分割為較小的片段。
32
Protocol 欄位的值 在Protocol 欄位是記錄IP所乘載其它網路協定的資料,所以每個網路協定都會有自己的編號,稱為協定編號(Protocol Numbers) 這些編號是由IANA組織在管理
33
查詢協定號碼
34
2.5 資料連接層
35
資料連接層 資料連接層主要功能控制如何使用網路媒介控制和錯誤檢測之類的各種技術將資料放置到媒體上
在區域網路中資料連接層主要以乙太網路(Ethernet)協定 WAN中的資料連接層會有不同的協定,例如:HDLC、PPP、Frame-Relay等等 乙太網路表頭檔如圖下所示,其中Destination MAC Address與Source MAC Address表示媒體存取控制 (MAC) 位址,此MAC提供資料鏈結層定址和資料分界方法。
36
2.6 模擬器的動畫功能觀察網路模型
37
觀察網路模型 觀察網域名稱服務協定 (DNS) 與超文字傳輸協定 (HTTP)兩種應用程式來示範網路模型的運作 (範例檔案:OSI.pka)
38
設定DNS 在如下圖所示在DNS Server設定DNS服務為網域名稱服務協定
39
執行DNS 再開啟PCA,在『Desktop』中選擇Web Browser程式並輸入網址http://www.com
40
DNS的封裝內容 將動畫封包打開後的畫面如下圖所示,其中有網路模型的每一層封裝後表頭檔內容
42
執行HTTP 再選擇動畫封包為HTTP後,開啟PCA的 Web Browser程式並輸入網址
44
2.7使用 Wireshark 來觀察網路模型
45
Wireshark 官網 (http://www.wireshark.org/)
46
Wireshark 捕捉到的封包
47
選擇要看的封包種類設定 選擇TCP封包
48
HTTP封包表頭檔資訊
49
DNS封包表頭檔資訊
50
2.8 ICMP協定
51
ICMP協定 ICMP (Internet Control Message Protocol)主要是用來回報網路狀況給管理者
ICMP 屬於在網路層運作的協定,當作是IP的輔助協定,
52
常見ICMP 的type代表的意思 Type 欄位值 ICMP 封包類型 Echo Reply* 3
Echo Reply* 3 Destination Unreachable* 4 Source Quench* 5 Redirect* 8 Echo Request* 11 Time Exceeded for a Datagram* 12 Parameter Problem on a Datagram 13 Timestamp Request 14 Timestamp Reply
53
Ping運作原理 Ping是最常用來測試網路連線的工具,主要測試來源端與目的端的設備連線是否有通
ping的運作原理像是迴音(echo),如果有聽到自己的迴音就代表有網路有通,若沒有則代表網路發生問題 ping 的兩種封包-Echo Request封包與Echo Reply封包
54
ICMP協定測試練習架構 (範例檔案: ICMP.pka)
55
PC0執行ping
56
控制ping封包數目 用-n參數來控制
57
阻斷服務攻擊 阻斷服務(Denial-of-Service,簡稱DoS)攻擊
PC0執行ping –n ,表示PC0產生100個ping封包給PC1,當100個ping封包送給PC1,PC1就要回應100次,如果n用的很大,就成為阻斷服務攻擊
58
PC0執行ping
59
PC0執行ping
60
Router執行ping 的結果
61
使用WireShark看ping封包
62
Traceroute 作用 Ping只會顯示來源端與目的端的網路連線結果 Traceroute 會顯示經過的路由器的IP
63
PC0 tracert
64
PC0 tracert
65
PC0 tracert
66
R0 traceroute DOS的指令是tracert,而路由器是traceroute,兩這指令的用法都是一樣
67
使用WireShark 觀察tracert
68
2.9 ARP 協定
69
ARP 協定 ARP(Address Resolution Protocol)協定的功能就是給定一個同網路的電腦IP位址,這個協定會找出有該IP的電腦MAC,ARP的運作有三個步驟: 來源電腦發送廣播資料,含要尋找目的IP。 同一網路下的電腦收到廣播資料後,進行比對本身的IP與廣播資料中要尋找目的IP。 比對正確的電腦回應本身的MAC給來源電腦。
70
(範例檔案:ARP-mac-ip.pka)
ping 過程 此時會在PC0執行ping , PC2就會回應PC0,這裡完全沒用到PC2的MAC,PC0就可以與PC2連通。不過這只是表面看到現象,其實PC0還是有使用到PC2的MAC,這樣ping封包才算是完整封包。 (範例檔案:ARP-mac-ip.pka)
71
ARP暫存查詢與刪除 當ARP已經有詢問目的IP的MAC位址後,會將目的IP對應的MAC暫存起來
在電腦的DOS模式使用arp –a 來查詢ARP暫存資料,PC0剛剛有使用ARP詢問 的MAC位址,因此PC0會暫存此筆對應如下圖所示 使用arp –d為刪除ARP暫存資料。
72
動畫觀察ARP
73
(範例檔案: Router-mac-ip.pka)
跨不同網路區域的APR運作 資料送到目的PC是同一個網路區域,這時使用集線器或交換器來傳送,使用的目的MAC位址是目的電腦的MAC 如果資料送到目的PC是不同一個網路區域時,這時候就要使用路由器來做繞送,使用的目的MAC位址是預設閘道的MAC (範例檔案: Router-mac-ip.pka)
74
PC0 執行 ping PC3 PC0執行 ping
75
資料在192.168.10.0網路中傳送 PC0送資料給PC3,當資料在192.168.10.0網路中傳送時,資料是從PC0送到fa0/0
如下圖所示,來源的MAC為PC0而目的MAC為fa0/0
76
資料在172.30.0.0網路傳送 資料在172.30.0.0網路中傳送時,資料是從預設閘道fa0/1送到PC3
如下圖所示,來源的MAC為fa0/1而目的MAC為PC3 請注意來源與目的IP都不會變
77
路由器的ARP暫存資料 路由器也會執行ARP協定來詢問目的IP的MAC,所以路由器會有ARP的暫存資料
使用IOS的show arp指令來查詢,查詢結果如下圖所示
78
ARP的攻擊 一些駭客就會使用ARP運作的缺點來攻擊網路或是竊取資料
最常見的攻擊手法就是電腦中ARP暫存資料,讓目的IP對應到假的MAC位址 如此就無法將資料送到目的IP電腦,造成網路無法連結,這就稱作ARP攻擊
Similar presentations