Week 2 - Basics of IP Addressing and the OSI Model
Basics of IP Addressing
- IP addressing
IP 位址的表示可分為 Network portion 與 Host portion 兩個部份 (如192.168.0.1),同一個網段中的不可使用相同的Host portion,否則會造成IP衝突導致兩部主機皆無法使用網路。 - IP位址又可分為 Public 與Private IP,僅有 Public IP 可連上網際網路。
- ICANN將IP位址分配給ISP與企業,並依其組織規模將等個IP網段分為五種等級(如下表)
- 其中Class A, B, C 中又保留了一段作為Private IP,分別是:
- A:10.0.0.0 ~ 10.255.255.255
- B:172.16.0.0 ~ 172.31.255.255
- C:192.168.0.0 ~ 192.168.255.255
- IP Packet Header
IP封包表頭的格式如下圖所示,橫軸代表 bit 數,故每一列皆有 4 bytes。 - Version
標示目前使用的IP規格版本,通常為 4 或 6。 - IHL
標示整個標頭的長度,IPv4 的話最少為 20 bytes。 - Service Type
標示QoS的細節。 - Total length
標示封包(表頭+數據)的總長度。 - Identification
識別碼;當資料超出單一封包最大長度時會被拆散一個個封包,當封包需要重組時,則依據此欄位進行作業。 - Flags
用來標示封包使否可分割以及是否為最後一個封包。 - Fragment Offset
分割定位;用來標示當前封包與原始數據包開始處的偏移量,如果封包未被切割,則該欄位數值為0 - TTL
存活時間;當封包經過路由器時 TTL 即會減一,當 TTL 降為 0 時,該封包會被丟棄。 - Protocol
使用的網路協定類型;如ICMP、TCP 與 UDP等。 - Header checksum
檢驗值;用來確保封包正確無誤地被接收端收下。 - Source IP Address
來源端 IP 位址。 - Destination IP Address
目的端 IP 位址。 - Options
鮮少用到,因特定目的需設置時使用。 - Padding
一連串的零,確保表頭長度正確。 - Payload
封包實際的數據內容。 - 傳輸方式
- Unicast
目的端為單一目標的一種傳輸方式,形式為一對一通訊;例如基於TCP協定的通訊。 - Multicast
目的端為一組電腦的傳輸方式,形式可為一對多或多對多通訊。 - Broadcast
目的端為區域網路內所有電腦的傳輸方式,IPv6已不支援此種通訊。 - Anycast
目的端為一組電腦的傳輸方式,但同時只會有一台電腦接收到資訊,該台電腦為傳送成本最低的節點,當該節點接收到封包並回應後,列表中的其他電腦即不參與後續的傳輸作業。
TCP/IP Layer 4, Transport Layer Overview
傳輸層負責提供端到端的通訊服務,常見的協定有TCP與UDP。
- UDP (User Datagram Protocol)
UDP是一種缺乏可靠性且為Connectionless的傳輸協定,意即建立通訊前不需經過雙方確認,且在傳輸過程中發送端不會去確認接收端是否正確收下資訊,適用於某些容許些許錯誤存在的應用程式與服務。以下是常見使用UDP的協定: - TFTP (Trivial File Transfer Protocol)
與FTP非常類似,但使用UDP降低建立與維持通訊的開銷,只用在傳輸很小的檔案,常用埠號為69。 - DNS (Domain Name System)
域名系統,用於IP位址與域名的相互對映,常用埠號為53。 - SNMP (Simple Network Management Protocol)
用以監測連接到網路上的裝置,常用埠號為161、162。 - DHCP (Dynamic Host Configuration Protocol)
用於內部網路自動分配IP位址給用戶,常用埠號為69。 - VoIP (Voice over Internet Protocol)
一種語音通話技術,經由網路協定來達成語音通話與多媒體會議的功能,也就是經由網際網路來進行通訊,非正式的名稱有IP電話或寬頻電話,常用埠號為5060。 - IPTV
IPTV是用寬頻網路作為介質傳送電視資訊的一種系統,常用埠號為80、5004與12000。 - TCP
相較於UDP,TCP在建立通訊前會先透過三向交握(如下圖)達成連線協議,過程中接收端會以序列號碼判斷封包內容是否有缺少,並通知發送端重新傳送丟失的封包。 - 兩者之間的簡略比較
TCP/IP Layer 5, Application Layer Overview
- DNS
域名系統負責將人類可識別的網域名稱轉換成IP位址,過程如下圖所示: - 使用者開啟網頁瀏覽器,在網址列輸入 www.example.com並前往。
- www.example.com 的請求路由到 DNS Resolver:
- DNS Resolver server 通常由使用者的網際網路服務供應商 (ISP) 提供,負責向Name server查詢 DNS 資訊。
- 所有 Resolver server 中都有一份 Root name server的IP位址清單。
- Resolver server 本身不會儲存域名的對應資訊(除了快取)。
- DNS Resolver將 www.example.com 這個請求轉送到 DNS Root name server:
- DNS Root name server 存有 Top-level Domain(TLD)name server 的清單,如常見的".com", ".tw"。
- DNS Root name server 會將負責".com"域名的TLD name server 之IP位址回傳給DNS Resolver。
- DNS Resolver再次轉送 www.example.com 這個請求到負責" .com" 域名的其中一個 TLD name server:
- TLD name server 會將負責"example.com"域名的Domain name server 之IP位址回傳給DNS Resolver。
- Root name server 與 TLD name server 由特定機構(ICANN)管理,當申請人註冊域名時,必須提供自己的Domain name server IP位址。
- DNS Resolver 選擇其中一台 Domain name server,並將 www.example.com 的請求轉送到該名稱伺服器,下圖範例中是將請求轉送到由 ISP(Amazon Route53) 託管的 Domain name server。
- Domain name server會在 "example.com" 的託管區域中尋找 www.example.com 這筆記錄並取得關聯的值,並將資訊傳回給DNS Resolver,如 Web Server 的IP位址。
- DNS Resolver 將資訊傳回使用者的 Web 瀏覽器,並將 "example.com" 的 IP 地址做快取,以便下次瀏覽 example.com 時更快速地做出回應。
- Web 瀏覽器將 www.example.com 這個請求傳送到目標 IP 位址。
- 目的端的 Web 伺服器將 www.example.com 的網頁內容傳回使用者的 Web 瀏覽器。
- DHCP (Dynamic Host Configuration Protocol)
用於內部網路自動分配IP位址給用戶,其過程可分為四個步驟: - DHCP Discover
用戶端發出用於搜尋DHCP Server 的廣播封包。 - DHCP Offer
伺服器接收到要求後提供一組 IP 位址與參數設定給用戶端,並等待用戶端的回應。 - DHCP Request
用戶端確認是否接受該伺服器提供的IP位址,若同意,用戶端會發送廣播封包告知所有主機已接受該 DHCP Server 的租約。 - DHCP Acknowledge
接收到訊息的DHCP Server 會回傳確認用的封包,並告知用戶端IP位址的租約期限。 - Syslog message logging protocol
Syslog是一種受到網路設備廣泛支援的通訊協定,用以簡化網路裝置的監控作業而設計,大部分的裝置都能透過 Syslog 的代理程式將訊息送至Syslog伺服器,這些訊息包括時間戳記、嚴重程度分級、裝置 ID(包括 IP 位址)以及事件的具體資訊。 - Netflow
透過 NetFlow 收集封包的表頭資訊,管理人員得以分析網路目前的使用狀況,像是使用了那些IP協定、封包來源與目的、傳輸使用的連接埠以及使用量…等等。 - Port Mirror and Promiscuous mode
- Port Mirroring 使得 Switch 可以將通過特定端口的流量複製到另一個端口。
- Promiscuous mode
設定為混雜模式的網卡可以接收所有流經介面的流量,而不會丟棄目的端非自身Mac address的封包。
Firewalls, Intrusion Detection and Intrusion Prevention Systems
次世代防火牆(Next-Generation Firewall, NGFW)除傳統防火牆的典型功能之外,包含了OSI模型的更多層次,改進了依賴於封包內容的網絡流量過濾,目前大多數的廠商都會將多種功能整合在NGFW上,例如IPS、SSL/SSH檢測、網站過濾以及QoS/頻寬管理等功能。
Clustering and High Availability SystemsHA(High Availability)
指的是當軟硬體發生錯誤時,仍能維持系統或服務正常運作或盡可能縮短中斷時間的架構,以下是構成HA 所需的三個特性:
- Redundancy
架構中必須存在多個可執行相同任務的組件,以供主要組件失效時接管作業。 - Monitoring
整個系統架構需有機制定期偵測各組件是否已經失效。 - Failover
系統架構在偵測到主要組件失去作用時須能自動切換到備援組件。
沒有留言:
張貼留言