2021年3月22日 星期一

Coursera - IBM - Network Security & Database Vulnerabilities 觀後摘要(二)

 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位址,過程如下圖所示:

    1. 使用者開啟網頁瀏覽器,在網址列輸入 www.example.com並前往。

    2. www.example.com 的請求路由到 DNS Resolver:

        • DNS Resolver server 通常由使用者的網際網路服務供應商 (ISP) 提供,負責向Name server查詢 DNS 資訊。

        • 所有 Resolver server 中都有一份 Root name server的IP位址清單。

        • Resolver server 本身不會儲存域名的對應資訊(除了快取)。

    3. 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。

    4. 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位址。

    5. DNS Resolver 選擇其中一台 Domain name server,並將 www.example.com 的請求轉送到該名稱伺服器,下圖範例中是將請求轉送到由 ISP(Amazon Route53) 託管的 Domain name server。

    6. Domain name server會在 "example.com" 的託管區域中尋找 www.example.com 這筆記錄並取得關聯的值,並將資訊傳回給DNS Resolver,如 Web Server 的IP位址。

    7. DNS Resolver 將資訊傳回使用者的 Web 瀏覽器,並將 "example.com" 的 IP 地址做快取,以便下次瀏覽 example.com 時更快速地做出回應。

    8. Web 瀏覽器將 www.example.com 這個請求傳送到目標 IP 位址。

    9. 目的端的 Web 伺服器將 www.example.com 的網頁內容傳回使用者的 Web 瀏覽器。




  • DHCP (Dynamic Host Configuration Protocol)
    用於內部網路自動分配IP位址給用戶,其過程可分為四個步驟:

    1. DHCP Discover
      用戶端發出用於搜尋DHCP Server 的廣播封包。

    2. DHCP Offer
      伺服器接收到要求後提供一組 IP 位址與參數設定給用戶端,並等待用戶端的回應。

    3. DHCP Request
      用戶端確認是否接受該伺服器提供的IP位址,若同意,用戶端會發送廣播封包告知所有主機已接受該 DHCP Server 的租約。

    4. 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
    系統架構在偵測到主要組件失去作用時須能自動切換到備援組件。

沒有留言:

張貼留言