Ping 檢測工具
線上檢測伺服器或網域的網路連通性和延遲
輸入 IP 位址或網域,點選「開始 Ping」測試網路連通性
什麼是 Ping 測試?
Ping 測試用來檢查目標主機是否能透過網路到達,並估算回應延遲。傳統 Ping 會送出 ICMP Echo 請求並測量往返時間;在瀏覽器或 Web 環境中,因為不能直接使用 ICMP,可能會採用其他探測方式。Ping 適合網路排障、伺服器監控、延遲比較、DNS 懷疑排查,以及判斷問題更可能出在本地網路還是遠端主機。需要注意的是,Ping 成功不代表網站、連接埠、資料庫或登入流程一定可用;Ping 失敗也不一定表示伺服器當機,因為防火牆和網路政策可能封鎖 ICMP。結果應結合 DNS、路由、連接埠和應用層檢查一起判斷。
使用方法
使用方法
- 在「IP 位址/網域」欄位輸入目標伺服器位址
- 選擇 ping 次數(1-20),預設為 4
- 點選「開始 Ping」按鈕,等待測試完成
- 查看統計資訊:封包遺失率、平均延遲、最小/最大延遲
- 查看每次 ping 的詳細結果:狀態、延遲、TTL
網路小知識
- ping 失敗不代表網站一定無法存取;許多伺服器會封鎖 ICMP,但 HTTP 或 HTTPS 仍可正常運作。
- 診斷網路問題前,建議同時測試多個目標,以區分本機連線問題與單一主機無法到達的情況。
使用場景
技術原理
Ping 工具從 ToolAct 後端伺服器向目標主機發送探測,測量可達性和往返延遲。傳統的 ping 在 OSI 第 3 層使用 ICMP(網際網路控制訊息協定,RFC 792)運作:來源發送一個包含序號和承載資料的 ICMP Echo 請求(Type 8,Code 0),目的地回應一個 ICMP Echo 回應(Type 0,Code 0)。往返時間(RTT)是從發送請求到接收回應之間的間隔,以毫秒為單位。由於瀏覽器無法發送原始 ICMP 封包(Socket API 不向網頁內容暴露原始套接字),此工具透過後端 API 代理 ping——伺服器端程式執行實際的 ICMP 交換並將結果回傳給瀏覽器。 IP 表頭中的 TTL(存活時間)欄位在每個路由器跳點減 1;當 TTL 降為 0 時,路由器丟棄封包並回傳 ICMP Time Exceeded(Type 11)訊息。這是 traceroute 背後的機制,但在 ping 測試中,初始 TTL 值可以揭示目標的作業系統:Windows 預設為 128,Linux/macOS 預設為 64,網路裝置通常使用 255。將接收到的 TTL 從預設值中減去,即可得到到目標的大約跳數。 封包遺失率的計算公式為(發送封包數 - 接收封包數)/ 發送封包數 × 100%。零遺失表示所有探測在逾時前回傳;間歇性遺失可能表示擁塞、硬體故障、速率限制,或目標或中間防火牆棄用 ICMP。許多生產伺服器和雲端供應商在邊緣完全停用 ICMP,因此 100% 遺失的結果不一定表示主機宕機——可能只是 ICMP 被過濾了。該工具報告所有成功探測的最小、最大和平均延遲,這些資料共同揭示抖動:低平均值搭配高最大值表示偶爾出現尖峰,而一致的最小/最大值表示穩定的連線。
- ICMP Echo 機制(RFC 792):Echo 請求(Type 8)攜帶一個 16 位元識別碼、一個 16 位元序號和一個可選承載——Echo 回應(Type 0)將相同的識別碼和序號回傳,使發送者能將回應與請求匹配。
- RTT 測量:往返時間是從請求傳輸到回應接收的實際時鐘間隔,包括網路傳播延遲、路由器排隊和目標處理時間——低於 1 ms 的值表示目標在同一個區域網路,而 100+ ms 表示跨洲路徑。
- TTL 跳數推斷:初始 TTL 值遵循作業系統慣例(Windows 128、Linux/macOS 64、網路裝置 255);大約跳數 = 初始 TTL − 接收 TTL——從 Windows 主機收到 TTL 為 117 表示大約經過 11 個路由器跳點。
- 封包遺失解讀:良好連接路徑上 <2% 的遺失是正常的;2-10% 表示擁塞或不穩定鏈路;>10% 表示存在嚴重問題——但防火牆或雲端供應商的 ICMP 過濾可能在健康主機上產生假的 100% 遺失。
- 延遲統計:跨 N 次探測的最小、最大和算術平均值揭示抖動——低平均值搭配高最大值表示偶發擁塞;標準差(未顯示但可從逐封包表格計算)量化離散程度。
- 瀏覽器限制:JavaScript 無法發送原始 ICMP 封包,因為 WebSocket、fetch 和 XMLHttpRequest API 在應用層(TCP/TLS/HTTP)運作——該工具透過後端 API 代理 ping,因此測量的延遲包含到 ToolAct 伺服器的一次額外 HTTP 往返。
- ICMP 速率限制:許多主機和路由器套用 ICMP 速率限制(Linux 核心參數 net.ipv4.icmp_ratelimit,預設 1000 ms)——以超過速率限制的頻率發送探測會導致人為的封包遺失,不能反映實際網路狀況。
範例
本地 DNS 伺服器測試
Ping 8.8.8.8(Google DNS)→ 平均延遲 15ms,封包遺失 0% = 連線良好遊戲伺服器選擇
Ping game-server-us.example.com → 45ms,game-server-eu.example.com → 120ms → 選擇美國伺服器網路問題診斷
Ping 本地路由器:1ms,Ping ISP 閘道:逾時 → 問題出在 ISP 端常見問題
瀏覽器的「ping」是怎麼運作的?
瀏覽器無法像系統的 `ping` 指令那樣送出 ICMP echo 封包。本頁是對目標發出 HTTP(S) 請求並量測往返時間。結果是與某個網路服務之間的真實延遲,含 TCP 交握、TLS 與 HTTP 額外開銷——通常會比 ICMP ping 高一些。
為什麼網頁 ping 一定比終端機的 `ping` 高?
ICMP 是一次往返。HTTPS 在首次請求時還要多做 TCP SYN/ACK 與 TLS 交握(約 3 次往返),最上面再加一層 HTTP 請求/回應。連線進入熱狀態後,本頁可能會重用該連線(HTTP/2 keep-alive),後續量測就會接近真實 RTT。
我可以 ping 任何主機嗎?
只有在標準埠回應 HTTPS 的主機才行。沒有提供 Web 服務或封鎖 CORS 的伺服器可能會失敗。雲端託管的網站通常可以;私有網路主機(10.x、192.168.x)只有當頁面伺服器能連到時才行,從你的本機區網是不行的。
這會把我的資料洩露給目標嗎?
每次 ping 都是一次真正的 HTTP 請求。目標伺服器會像一般造訪一樣記錄它(你的 IP 與 User-Agent)。請勿對你不擁有的內部主機執行 ping,也不要快速大量觸發到被視為阻斷服務攻擊的程度。
請求有簽章嗎?
送往我們後端的 ping 會通過一個有簽章的代理層做標準化處理——我們轉送的是測試本身,目標看到的是我們的後端,而不是你的 IP。
為什麼結果會跳動?
網路延遲本身就會因壅塞、路由變化與目標伺服器負載而波動。多次取樣後得到的穩定值,比單次量測更有意義;本頁會回報最小、最大與平均值。
可以追蹤路由嗎?
不行——traceroute 需要操作原始 IP 封包,瀏覽器辦不到。如果需要請在命令列使用 mtr 或 traceroute。本頁只量測端對端的延遲。