Upload
galvin-middleton
View
34
Download
0
Embed Size (px)
DESCRIPTION
第 2 章. TCP / IP 簡介. TCP / IP 簡介. Transmission Control Protocol / Internet Protocol ( TCP / IP) 協定組是由美國國防部設計的 其設計目的是為了確保資料的完整性 , 以及在戰爭中還能維持通訊 , 所以是一種非常可靠、復原能力很強的網路. DoD 與 OSI 模型. TCP / IP 協定組. 處理 / 應用層協定. Telnet 終端模擬 ﹐ 讓客戶端機器看起來就像它是直接連結到本地網路的終端機 FTP - PowerPoint PPT Presentation
Citation preview
著作權所有 © 旗標出版股份有限公司
本著作僅授權老師於課堂使用 , 切勿置放在網路上播放或供人下載 , 除此之外 , 未經授權不得將全部或局部內容以任何形式重製、轉載、變更、散佈或以其他任何形式、基於任何目的加以利用。
TCP / IP 簡介
第 2 章
2
TCP / IP 簡介 Transmission Control Protocol / Internet
Protocol ( TCP / IP) 協定組是由美國國防部設計的
其設計目的是為了確保資料的完整性 , 以及在戰爭中還能維持通訊 , 所以是一種非常可靠、復原能力很強的網路
3
DoD 與 OSI 模型
4
TCP / IP 協定組
5
處理 / 應用層協定 Telnet
終端模擬﹐讓客戶端機器看起來就像它是直接連結到本地網路的終端機
FTP 用來列出與操縱目錄、列出檔案內容、以及在主機之間複製檔案 ,
但不能把遠端的檔案當作程式來執行 大檔案的傳送較適合使用 FTP﹐ 而非電子郵件
TFTP 精簡版 FTP﹐ 只能進行檔案的傳送與接收 沒有驗證的機制 , 是不安全的
NFS 透過網路分享相同或不相同之檔案系統的檔案
SMTP 傳送電子郵件:利用佇列來儲存並轉送郵件
6
處理 / 應用層協定(續) LPD
LPD 與 LPR 程式將列印的工作暫存起來 , 並利用 TCP / IP 傳送給網路印表機
X Window 讓客戶端程式在某部電腦上執行 , 並且透過視窗伺服器 , 將它的畫面
顯示在另一部電腦上 SNMP
定時或不定時從管理工作站 polling 網路上的裝置來收集資料 扮演網路看門狗的角色( agent )﹐發出 Trap 來通知管理員突發事件
DNS 以容易解讀、又不常變動的網域名稱來取代 IP﹐ 然後用 DNS 來解析成
IP 位址 DNS 使用 FQDN FQDN﹐ 是階層式的
在 Cisco 路由器上可使用 ip domain-name lammle.com 命令為每個解析的請求附加 lammle.com 網域 , 否則您就得鍵入整個 FQDN
7
處理 / 應用層協定(續) DHCP / BootP
傳送 IP 位址給主機﹐以簡化管理工作 Cisco 路由器也可以當作 DHCP 伺服器 BootP 也會傳 IP 位址給主機 , 但主機的硬體位址必須手動地輸入
到 BootP 表格中。另一方面﹐ BootP 可以用來傳送主機在開機時所需的作業系統 , 而 DHCP 卻不行
DHCP 可以提供的資訊包括: IP 位址 子網路遮罩 網域名稱 預設閘道 ( 路由器 ) DNS WINS 資訊
尋找 DHCP 訊息以要求 IP 位址的客戶端 , 會同時送出第 2 層與第 3 層的廣播
DHCP 使用 UDP
8
主機對主機層協定 主機對主機層的主要目的是要隔開其上層的應用服務 , 以免受制於網路的複雜性 傳輸控制協定 (Transmission Control Protocol,
TCP) 使用者資料包協定 (User Datagram Protocol,
UDP)
9
TCP 開始傳送資料段之前 , 先聯繫目的端建立一條虛擬電路﹐並協議出傳送端在收到接收端回應的確認之前 , 可以傳送多少量的資訊
從應用程式接收大塊的資訊 , 然後切割成segment﹐ 並依序編號 , 使得目的端的 TCP 協定可以重新將它組成應用程式所要的順序
當資料段傳送出去之後 , 傳送端主機的 TCP 會等待接收端 TCP 的虛擬電路會談所回應的確認 , 並重新傳送那些沒有收到確認的資料段
TCP 是全雙工、連線導向式、可靠的、以及準確的協定﹐也因此會增加不小的 overhead
10
TCP 資料段格式
11
TCP 資料段範例
12
UDP UDP 是無連線式的協定﹐而且將資料段傳送出去之後就不管了 , 所以是不可靠的協定﹐但因此耗費的網路資源較少
應用程式的開發者可選擇 TCP 的可靠性 , 或 UDP 的快速傳輸
選擇以 UDP 來取代 TCP 的情況 每次都只傳送小訊息﹐建立、維護、及關閉
TCP 連線所耗費的 overhead 代價太大﹐例如SNMP
可靠性已經在處理 / 應用層處理了﹐例如 NFS 、VoIP
13
UDP 資料段格式
14
UDP 資料段範例
額外負擔多麼少啊! UDP 資料段中找不到序號、確認號碼、以及視窗大小等可靠性機制
15
主機對主機協定之重要觀念
16
埠號 TCP 與 UDP 都必須使用埠號 (port
number) 來與其上層溝通 , 因為他們同時在網路上追蹤各個不同的對話
發起者的來源埠號是由來源主機動態指定的 , 他們是從 1024 開始往上遞增的某個號碼
而 RFC 3232 ( 或參考 www.iana.org) 中定義了 1023 及其以下的號碼 , 他們就是所謂的眾所周知的埠號 (well-known port)
17
埠號 虛擬電路若不是搭配含有眾所周知埠號之應用程式 , 我們就會從特定範圍中隨機指定一個埠號給它 , TCP 資料段中的這些埠號可用來識別來源或目的之應用程式或程序。
圖 2.5 展示 TCP 與 UDP 如何利用埠號。同時用到 TCP 或 UDP
18
TCP封包範例一 由來源主機決定﹐區分各個不同的會談﹐ 必定超過 1024
Well-known port﹐ 代表此次連線想要取得的服務
告訴遠端的目的裝置它想要建立會談
19
TCP封包範例二: Syn 封包的確認
表示來源埠已被接受 , 同意與啟始主機建立虛擬電路
20
網際網路層協定 2 個主要目的
遶送提供單一的網路界面給上層協定
網際網路層的協定包括: IP ICMP ARP RARP Proxy ARP
21
IP封包格式
22
IP
協定欄位
23
IP 協定欄中的清單
24
ICMP ICMP 是個為 IP 設計的管理協定與訊息服務提供
者 , 提供網路問題的相關資訊給主機。其訊息乃以 IP 資料包來運送
ICMP 相關的常見事件與訊息 destination unreachable buffer full如果路由器用來接收封包的 buffer滿溢時﹐則送出此訊息﹐直到擁擠情況緩和為止
Hop如果資料包在抵達目的地之前就已經到了 Hop數量的限制 , 則收到資料包的路由器就會將它丟掉 , 然後利用 ICMP 傳送一則死亡訊息 , 通知封包的傳送端機器
Ping 利用 ICMP 的 echo request 與 echo response來檢查互連網路上某部機器之實體與邏輯的連通性
Traceroute 利用 ICMP 的 timeout 訊息來找出封包穿越互連網路時所經過的路線
25
ICMP錯誤訊息案例
26
ICMP Echo Request 範例
唯一使用 到 Ether-Type 欄位的訊框就是 Ethernet_II 訊框
27
ICMP Echo Request 範例(續)
Echo Request
ICMP 封包
28
ARP
29
ARP廣播封包範例
30
RARP 為無磁碟的機器找尋它的 IP 位址﹐傳送包含其 MAC 位址的封包 , 詢問一個指定給該 MAC 位址的 IP 位址
31
Proxy ARP 萬一預設閘道當掉了怎麼辦? Proxy ARP 可以幫助子網路上的機器 , 在沒有重設路徑或預設閘道的情形下抵達遠端子網路
Proxy ARP 其實並不是一種協定 , 而是路由器執行的一種服務 , 用來代表某些裝置﹐而這些裝置與其他對它們發出 ARP 請求的裝置是被路由器隔開的。目的是要讓這些發出 ARP 請求的裝置以為它們和那些被路由器隔開的裝置共享同一個子網路
預設上 , 所有的 Cisco 路由器上都會設定 Proxy ARP - 如果您不需要使用它 , 就應該要將它關掉
32
IP 位址 IP 位址是指定給 IP 網路上之每部機器的一個數值識別碼 , 標出裝置在網路上的特定位置。
IP 位址是個軟體位址 , 而非硬體位址 - 後者是燒在網路界面卡上 , 用來尋找區域網路上的主機
IP 位址的設計是要讓網路上的一部主機 , 可以和其它位於不同網路上的主機互相通訊 , 而不管參與通訊之主機位於哪一種區域網路中
32 位元的 IP 位址是結構化的或階層式的位址﹐以增加遶送的效率 其中一部份的位址代表網路位址 , 其它部份則代表子網路與主機 , 或者只是代表節點位址
最常用的表示法:以點號隔開的十進位 , 如 172.16.30.56
33
網路位址與主機位址 網路位址又稱為網路號碼﹐可唯一地識別每個網路。同一個網路上的每部機器會共享一個網路位址 , 當作他們 IP 位址的一部份。例如在 172.16.30.56 位址中的 172.16
主機位址是要指派給網路上的每部機器 , 做唯一地識別。例如在 172.16.30.56 位址中的 30.56
34
網路級別
35
保留的 IP 位址
36
A級網路 格式:網路 .節點 .節點 .節點 第一個位元組的第一個位元一定要是 0:0xxxxxxx
A 級的網路位址是 0.x.x.x ~ 127.x.x.x﹐共有 28-
1=128 種 , 但全部為 0 的網路位址是要保留給預設路徑用的 , 而 127 的位址則是要保留給診斷用的 , 不能使用﹐所以實際上只有 126 個
一個 A 級網路位址可以有多少有效主機?例如 所有主機位元都為 0 的網路位址: 10.0.0.0 所有主機位元都為 1 的廣播位址: 10.255.255.255 有效的主機則是 10.0.0.1 到 10.255.255.254﹐ 共
224-2= 16, 777, 214 個
37
B級網路 格式:網路 . 網路 .節點 .節點 第一個位元組的前二個位元一定要是 10:10xxxxxx
B 級的網路位址是 128.0 ~ 191.255﹐共有 216-2 = 16777214 種
一個 B 級網路位址可以有多少有效主機?例如 所有主機位元都為 0 的網路位址: 172.16.0.0 所有主機位元都為 1 的廣播位址: 172.16.255.255 有效的主機則是 172.16.0.1 到 172.16.255.254﹐ 共
216-2= 65534 個
38
C級網路 格式:網路 . 網路 . 網路 .節點 第一個位元組的前三個位元一定要是 110:110xxxxx
C級的網路位址是 192.0.0 ~ 223.255.255﹐共有 224-
3 = 2097152 種 一個 C 級網路位址可以有多少有效主機?例如
所有主機位元都為 0 的網路位址: 192.168.100.0 所有主機位元都為 1 的廣播位址: 192.168.100.255 有效的主機則是 192.168.100.1 到
192.168.100.254 ﹐ 共 28-2= 254 個
39
D 與 E 級網路 224 與 255 之間的網路是保留給 D 與 E 級網路使用的 , D 級 (224-239) 是要用來進行多點傳播 , 而 E 級 (240-255) 是要作為科學用途
40
私有 IP 位址 私有 IP 位址只能用在私有的網路上 , 無法在網際網路上遶
送﹐目的是為了安全性 , 但同時也節省了 IP 位址空間 若要連接網際網路﹐需要利用 NAT技術將它轉換成網際網路
上可用的位址
需要使用何種私有 IP 位址? 建置企業網路時無論它有多小都應該使用 A 級網路 , 因為它提供最
大的彈性與擴充性 建置家庭網路時最好使用 C 級位址 , 因為這一種最容易瞭解與設
定
41
廣播位址 第 2 層廣播
又稱為硬體廣播: FF.FF.FF.FF.FF.FF 傳送給區域網路上的所有節點﹐無法穿越區域網路的邊界 ( 路由器 )
廣播 ( 第 3 層 ) 意圖要抵達廣播網域上的所有主機﹐例如 172.16.255.255 也可能是所有網路與所有主機- 255.255.255.255
單點傳播 (unicast) 從 255.255.255.255 到實際目的 IP 位址的廣播封包 例如:有部主機送出 FF.FF.FF.FF.FF.FF 之第 2 層廣播與 255.255.255.255 之第 3 層目的地廣播 , 以找尋 DHCP 伺服器。路由器會瞭解這是一個想要找 DHCP 伺服器的廣播 , 因為它的目的埠號是 67 。於是就將這個請求轉送給真正的 DHCP 伺服器的 IP 位址(亦即將目的位址改成特定位址)。 ( 為了讓路由器提供這個服務 , 您得用 ip helper-address 命令來設定界面 , 因為這並非預設服務 )
多點傳播 (multicast) 從單一個來源端送出封包 , 並傳送給不同網路上的多個裝置 藉由傳送訊息或資料到 IP multicast group 位址 , 然後路由器再將封包轉送給每部已
經加入該群組位址的主機 例如:主機將會接收到例如目的地為 224.0.0.9 的多點傳播封包﹐只有執行
EIGRP 協定的路由器會解讀這些封包﹐其他主機則會丟棄它。這會節省 PC 的處理資源 , 而非 LAN 的頻寬。有時候多點傳播可能會引起嚴重的 LAN 壅塞
多點傳播位址的範圍從 224.0.0.0 到 239.255.255.255﹐亦即 D 級 IP 位址