iT邦幫忙

2024 iThome 鐵人賽

DAY 30
0

今天的過程分析中,我們均使用kali來作範例。

首先先用ip addr確認我們每個網路介面卡的IPv4和MAC
image374

而我們在使用ping指令時可以看到每次都會一對ICMP Echo Request/ICMP Echo Reply,因此我們可以知道每次ping時都一定會有以下封包

  1. ICMP Echo Request:首先,電腦會建立一個ICMP封包,這個封包被稱為"Echo Request"。這個封包包含了一些基本資訊,例如我的IP地址和一個序列號
    image380
    在Frame的地方這一層包含了封包的物理層細節,如封包的長度和捕獲時間。
    可看到在Ethernet II的地方有寫著我的eth0的來源MAC位址,並且目標MAC位址為08:00:27:01:64:72,而類型為IPv4

    並且可在Internet Protocol Version 4看到IPv4的資訊,來源IPv4位址為10.73.29.4同樣為我eth0的位址目標IPv4位址為203.66.35.65。

  2. ICMP Echo Reply:當封包到達目的地後,目標主機會回應一個"Echo Reply"的ICMP封包。這個封包包含了相同的序列號,所以你的電腦可以知道這個回應是對應到哪一個請求的。
    image386
    可看到資訊基本上類似就是來源和目標的IP和MAC反過來了。

而在ICMP Echo Request/ICMP Echo Reply封包中為甚麼會知道目標IP呢?以kali為例,我們進行以下分析:

  1. 首先我們先擷取發送一次ping會產生的所有封包即可,方便我們來做分析,可使用指令ping -c 1 www.hinet.net
    image392

  2. 接著到wireshark可以擷取到以下8個封包
    image398
    可以看到他經過了以下步驟:

  • DNS查詢:網路介面卡(eth0)(192.168.0.108)向DNS伺服器(8.8.8.8)發送了一個DNS查詢,詢問 www.hinet.net 的IPv4地址(A紀錄)。
  • DNS查詢:網路介面卡(eth0)向DNS伺服器發送了另一個DNS查詢,這次詢問的是 www.hinet.net 的IPv6地址(AAAA紀錄)。
  • DNS回應:DNS伺服器回應了第一個查詢,可看到目標IPv4為剛剛我的網路介面卡(eth0)的IP,且它提供了 www.hinet.net 的IPv4地址。這個網域名稱實際上是一個CNAME紀錄,指向 hinet-hp.cdn.hinet.net,並提供了該名稱的多個IPv4地址。
  • DNS回應:DNS伺服器回應了第二個查詢,提供了 www.hinet.net 的IPv6地址。同樣,這個網域名稱是一個CNAME紀錄,指向 hinet-hp.cdn.hinet.net,並提供了該名稱的多個IPv6地址。
  • ICMP Echo請求:網路介面卡(eth0)向 www.hinet.net 的一個IPv4地址(203.66.35.97)發送了一個ICMP Echo請求,也就是一個ping請求。
  • ICMP Echo回應: www.hinet.net 的伺服器回應了你的ping請求,回傳了一個ICMP Echo回應。
  • 反向DNS查詢:網路介面卡(eth0)向DNS伺服器發送了一個反向DNS查詢,詢問IP地址 203.66.35.97 對應的主機名稱。
  • 反向DNS回應:DNS伺服器回應了反向查詢,提供了IP地址 203.66.35.97 的主機名稱,即 203-66-35-97.hinet-ip.hinet.net。

這就是為甚麼我們會知道www.hinet.net的IP位址並向它傳送ICMP Echo Request/ICMP Echo Reply封包,而我們現在將指令改為ping -c 2 www.hinet.net並用wireshark來擷取兩次ping封包。

可看到擷取到的封包變為
image402
在這裡會發現會去向DNS去做IPv4和IPv6查詢的只有在第1次ping的時候,之後的ping由於我們已經知道了目標的IPv4、IPv6等資訊,所以可以直接傳送ICMP Echo Request/ICMP Echo Reply封包。

以上就是本次鐵人賽30天做的各種網路實驗內容。


上一篇
Day29 - ICMP封包分析實例
系列文
Packet流量密碼:透析虛擬化網路的封包世界30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言