如何在 Linux 中 Ping:使用和選項完整指南

如何在 Linux 中 Ping:使用和選項完整指南

資訊科技數位 » Linux » 如何在 Linux 中執行 Ping:命令、選項和範例

Ping 使用 ICMP 檢查連接性、延遲和封包遺失

關鍵選項:-c、-i、-s、-4/-6、-D、-W/-w 用於精確測試

Traceroute/tracert 顯示路由並定位有問題的躍點

診斷常見錯誤並檢查防火牆可加快解決問題的速度

掌握 Linux 中的 ping 指令是解決網路問題時至關重要的技能之一。 使用 ping 可以檢查連線性、延遲和可用性 在進行更複雜的診斷之前,要迅速做出診斷。

此外,諸如 traceroute/tracert 和類似 WinMTR 的混合實用程式等補充工具為您提供了了解資料包所遵循路徑的視窗。 您將學習如何在 Linux、Windows 和 macOS 上使用 ping、解釋輸出、調整選項和排除故障。 一切如常,不會浪費時間。

什麼是 ping 以及它有什麼用途?

Ping 是一種診斷實用程序,它將 ICMP ECHO_REQUEST 封包傳送到目的地(IP、主機或網域)並等待 ECHO_REPLY。 查看 TCP/IP 模型及其層 了解 ICMP 在哪一層起作用。 如果有回應,則表示主機可訪問,並且我們會測量往返時間 (RTT)。它還報告位元組大小、TTL(生存時間)和資料包遺失。

實際上,ping 每天都用於驗證連接性、估計延遲、確認伺服器可用性以及排除基本網路問題。 這是偵測斷線、擁擠或有問題的路線的第一步 在進行深入分析之前。

Ping 的工作原理以及它具體測量什麼

當您 ping 目的地時,該工具會發送一系列 ICMP 封包並顯示每個封包的回應。 典型的輸出欄位包括位元組、回應主機、icmp_seq、TTL 和時間(以毫秒為單位)。,加上一組最終統計。

響應行範例: 來自 64 的 185.185.185.185 個字節:icmp_seq=1 ttl=64 time=0.1 ms。這裡您可以看到有用的大小(56 位元組 + 8 位元組 ICMP 標頭 = 64)、序號、封包生存期和 RTT。 最終統計資料包括傳輸、接收、遺失和 rtt min/avg/max/mdev.

何時使用 ping

Ping 在日常的許多場景中都很有用。 檢查您的網站或線上商店是否回應、VPS 是否處於活動狀態,或者您的 Wi-Fi 上的裝置是否仍處於連線狀態。如果您發現速度緩慢,它還會為您提供指導:高延遲或封包遺失表示飽和或路由故障。

即使一切看起來都進展順利,不時地 ping 一下也有助於偵測潛在問題。 建立延遲基線可以讓你識別偏差 網路變更或流量激增之後。

ping 和 traceroute/tracert 之間的區別

ping 回答了經典問題“它到達了嗎?需要多長時間?”,而 traceroute(Windows 上的 tracert)回答了問題“它去了哪裡?”。 Traceroute 揭示每個中間跳躍及其時間 朝著目的地,找到發生損失或瓶頸的地方的關鍵。

將它們結合起來是理想的: 如果 ping 顯示遺失,traceroute 會告訴你確切的跳數 問題就在這裡。如果您想在 Windows 中將這兩種視角結合到一個工具中,WinMTR 是一個不錯的選擇。

如何在 Windows 中 ping

在 Windows 上,開啟 命令提示 (搜尋“cmd”)並執行命令。 基本形式是:ping 目的地 (IP、主機或網域名稱)。預設情況下,它會發送 4 個資料包並顯示統計資料。

ping 8.8.8.8

ping google.com

對於 Windows 中的常見選項: -n 定義回顯號,-l 定義封包大小,-w 定義逾時時間(毫秒),-i 定義 TTL以 10 個 1400 位元組的封包為例:

ping -n 10 -l 1400 google.com

如何在 macOS 上 ping

在 macOS 上,打開終端機(應用程式 > 公用程式 > 終端機)或使用 Spotlight。 輸入:ping 目的地並以 CTRL + C 結束 查看摘要。

ping 8.8.4.4

ping google.com

您也可以使用包含它的舊版本網路實用程式。 請記住,macOS 與 Linux 共享許多語法。,並且有很多選項符合。

從銅線到光纖:網路速度的巨大飛躍如何在 Linux 中 ping

在 Linux 中,開啟終端機(例如,使用 CTRL + ALT + T)並執行命令。 Ping 持續運行,直到您按下 CTRL + C,之後您將看到統計資訊區塊。

ping 1.1.1.1

ping localhost

如果您需要檢查 ping 是否已安裝或其版本是什麼,您可以直接這樣做。 在 Ubuntu/Debian 上,常用的套件是 iputils-ping.

ping -V

sudo apt-get update && sudo apt-get install -y iputils-ping

通用語法和基本選項

通用形式為: ping 目標目標可以是 IP 位址、主機名稱或網域;如果使用網域,它將透過 DNS 進行解析。

-c N (Linux/macOS):限制軟體包數量。有助於防止測試運行。

-a (Linux/macOS/Windows):可聽見的 ping 聲;每次回應都會發出嗶聲,對於後台診斷非常有用。

-i SEG (Linux/macOS):資料包間隔(以秒為單位);支援小數。所需權限少於 0.2 秒。

-q (Linux/macOS):靜默輸出;僅顯示統計摘要。

-4 / -6 (Linux/macOS):分別強制 IPv4 或 IPv6。 在分割二進位檔案的系統上,ping6 是 IPv6 變體。.

-s 位元組 (Linux/macOS):ICMP 有效負載大小。預設值:56 位元組(含 IP+ICMP 標頭共 84 字節,額外 28 位元組)。

-D (Linux/macOS):在每行開頭新增類似 UNIX 的時間戳記。

-W SEG (Linux/macOS):每個回顯回應的最大等待時間;如果超過,則視為逾時。

-w SEG (Linux/macOS):自動結束前的總測試時間。

鮮為人知的進階選項

對於細粒度的診斷,ping 提供了一系列很好的標誌。 這些選項可協助您調整路徑、緩衝區、MTU、標記和可見性 資訊:

-A:自適應 ping(根據響應調整速率)。

-b:允許 ping 廣播位址。

-B:不要修改探測的來源位址。

-d:在套接字上啟用 SO_DEBUG。

-F 流標籤(IPv6):為回顯請求分配一個 20 位元十六進位流標籤。

-h:顯示快速幫助。

-I 介面:設定輸出介面。 對於具有多個 NIC 的計算機非常有用.

-l 預先載入:發送幾個初始資料包而不等待回應(高值需要特權)。

-L:阻止多播環回。

-m 標記:標記傳出的資料包(對於路由策略有用)。

-M pmtudisc_opt:控制路徑 MTU 發現策略。 使用適當的 -M 和 -s 檢測有效 MTU.

-N 節點資訊 (IPv6):節點資訊選項。

-n:數字輸出;避免解析名稱。

-O:報告下次提交之前的待處理回應。

-p 模式:以一種模式(最多 16 個位元組)填滿有效載荷,以偵測與資料相關的問題。

-什麼咳嗽:定義TOS/DSCP。

-r:忽略正常路由表;直接從相鄰介面轉送。

-R:記錄路線(受中級支援限制)。

-S sndbuf:套接字發送緩衝區的大小。

-t 生存時間 (Linux):定義 IP TTL。 在 Windows 上,TTL 使用 -i 設定.

-T:特殊 IP 時間戳選項(tsonly、tsandaddr、tsprespec)。

-U:顯示使用者到使用者的總延遲,而不僅僅是網路延遲。

-v:詳細輸出; -V 顯示版本。

實踐案例:從基礎到高級

檢查一般網路連線和解析名稱是第一步。 您可以在 ping 網域和 IP 之間切換以隔離 DNS 問題.

ping google.com

ping 8.8.8.8

檢查本地堆疊可以節省您的時間: 如果失敗,則問題出在您自己的裝置上。,不在外部網路上。

ping localhost

ping 127.0.0.1

ping 0

在具有多個 NIC 的網路中,驗證特定介面也很常見。 強制出站介面清除路由和表.

ping -I enp7s0 1.1.1.1

限制快速測試或腳本的套件數量是經典做法。 -c 定義計數,-q 減少噪音 留下清晰的總結。

ping -c 5 -q 9.9.9.9

調整間隔可以讓您在更短的時間內獲得更多的樣本或減少負載。 在 Linux 上低於 0.2 秒時,您需要特權.

ping -i 3 31.13.90.36

sudo ping -i 0.1 31.13.90.36

測試不同的資料包大小可以偵測 MTU 或碎片問題。 請記住,IP 封包的理論最大值為 65.535 位元組(包括標頭)。.

ping -s 1000 8.8.4.4

ping -M do -s 1472 google.com

時間戳使得高峰與事件之間的關聯變得更加容易。 -D 將 UNIX 標記新增至每個回應行.

ping -D cloudflare.com

解釋輸出和統計數據

每條響應線都反映一個特定的測量值;最後的區塊總結了該系列。 特別注意封包遺失、最小/平均/最大/mdev rtt 和時間一致性。 評估穩定性。

--- destino ping statistics ---

X packets transmitted, Y received, Z% packet loss

rtt min/avg/max/mdev = A/B/C/D ms

建立基準:在正常條件下重複 ping 並儲存通常的平均值。 如果平均延遲或 mdev 隨後增加,表示您的網路發生了變化。 (負載、路線、飽和或降級)。

社群媒體的優勢:超越按讚和追蹤者常見錯誤及其診斷方法

如果沒有回應且時間未到期,主機可能會丟棄 ICMP。 一些伺服器和 CDN 透過策略阻止回顯,這並不意味著服務中斷。

「目標主機不可達」訊息可能來自電腦本身或中間路由器。 如果是由你的主機發出的,就沒有路由;如果來自遠端一跳,外部網路就沒有路徑。 走向命運。

「超時」表示請求已發送但回應尚未到達。 這可能是由於中間損失、過濾或路由不對稱造成的。在這些情況下,依靠 traceroute 來定位有問題的跳躍。

如果您使用防火牆,請檢查規則。 在 Linux 上,ICMP 上的 DROP/REJECT 規則將阻止接收或傳送回顯 看起來一切都崩潰了。

sudo iptables -L

# Localiza reglas sobre ICMP con DROP/REJECT

# Ajusta o elimina si procede (ejemplo genérico):

sudo iptables -D RULE_SPECIFICA

在行動裝置上 Ping

Android 和 iOS 不包含可從標準介面存取的本機 ping。 簡單的方法是使用專用應用程式。 方便隨時隨地進行快速測試。

在 Android 上,「Ping & Net」等選項運作良好;在 iOS 上,「Network Ping Lite」運作沒有任何問題。 避免僅為了 ping 而進行 root 或越獄;可靠的應用程式就足夠了。. 安裝前請檢查評級和權限。

Traceroute和tracert:查看資料包的路徑

Linux 和 macOS 上的 Traceroute 以及 Windows 上的 tracert 顯示從您的電腦到目的地的每一次跳躍。 每行表示中間路由器和每次嘗試的時間。如果您看到從某個點開始持續出現星號,則表示該路線已被切斷或過濾。

# Windows

tracert ejemplo.com

# macOS/Linux

traceroute ejemplo.com

在經典 macOS 上,您可以使用網頁實用程式(如果可用),其中有一個專用的 traceroute 標籤。 在伺服器環境中,終端將成為您的主要工具。.

使用 WinMTR 進行持續監控

WinMTR 結合了 Windows 上的 ping 和 traceroute 來查看一段時間內的路由穩定性。 輸入主機或IP,開始測試約10-15分鐘並複製報告。 進行分析或技術支援。

1) Descarga WinMTR (proyecto en SourceForge)

2) Field 'Host': escribe dominio o IP

3) Start y deja correr ~15 minutos

4) Usa 'Copy Text to clipboard' para compartir el resultado

良好做法和使用技巧

針對多個目標來隔離問題:您的網關、已知的 DNS 和終端主機。 比較結果可以揭示故障是內部故障、操作員故障還是目的地故障。.

除受控測試外,避免濫用洪水模式。 -f 全速發送資料包,可模擬流量高峰;在獲得許可並按照明確標準的情況下使用它。

sudo ping -f destino

結合使用工具以獲得完整的視圖。 Traceroute 定位有問題的躍點;iperf 測量頻寬;Wireshark 支援深度封包檢查 當你需要深入細節時。

Linux 需求:您需要了解的一切在支援 IPv6 的環境中,它會驗證這兩種協定。 強度 -4 或 -6 適當排除偏好或解析度問題 雙棧。

Windows、macOS 和 Linux 中的選項和特性

不同系統之間的標誌有所不同。 在 Linux/macOS 上,-c 限制資料包,-i 間隔,-s 大小,-t TTL。在 Windows 上,-n、-l、-w 和 -i 起著類似的作用(單位和範圍有所不同)。

每個系統中的有用範例: Windows:ping -n 4 -l 1200 網域;Linux/macOS:ping -c 4 -s 1200 網域。如果您不確定確切的語法,請諮詢當地協助。

# Linux/macOS

ping -c 4 -s 1200 google.com

ping -4 google.com

ping -6 google.com

# Windows

ping -n 4 -l 1200 google.com

DNS 檢查和名稱解析

如果 DNS 解析正確,則對有效域進行 ping 操作將會通過。 當網域名稱解析時,您將在標頭中看到目標 IP。 輸出;如果解析失敗,請檢查您的 DNS 設定或 主機文件.

依靠 nslookup 等補充工具來驗證日誌。 Ping 檢查可達性;nslookup 為您提供 DNS 資料。 這解釋了一個意外的解決方案。

nslookup ejemplo.com

安全性、協定限制和 MTU

一些設備根據策略或為了防止濫用而阻止 ICMP。 不要因為缺少 ping 回應就認為服務中斷。;透過 TCP/HTTP 或使用服務自己的工具進行檢查。

請記住,Linux 中的預設有效負載為 56 個位元組;加上標頭,總數增加到 84 個。 IP 封包限制為 65.535 位元組(包括標頭)。,因此 -s 的有用大小必須考慮到開銷。

若要測量不含碎片的路徑 MTU,請將 DF/PMTUD 與增加的大小合併。 設定 -M 和 -s 後,您將看到它從哪裡開始失敗 由於 MTU 不足。

ping -M do -s 1472 ejemplo.com

快速常見問題解答

ping 具體檢查什麼? 透過 ICMP 的 IP 連線和往返時間,報告遺失和延遲。

為什麼網域有時不回應 ping? 由於許多伺服器會過濾 ICMP,因此 Web 服務可能仍可運作。

如何在 Linux 和 macOS 上短 ping? CTRL + C;然後列印摘要統計資料。

可以將 ping 與 IPv6 一起使用嗎? 是的,使用 -6,或在使用 IPv6 的系統上使用 ping6。您將看到 IPvXNUMX 特定的位址和路由。

ping 在手機上能用嗎? 是的,使用專用應用程式。避免不必要的 root/越獄,並使用信譽良好的應用程式。

以下是詳細的指南,可協助您從基礎 ping 到進階 ping: 您可以驗證本地和遠端連線、調整範圍和大小、診斷損失、使用 traceroute 了解路由以及使用 WinMTR 記錄調查結果。有系統地使用這些工具可以節省您數小時的盲測時間,並允許您準確地回應任何網路問題。

相關文章:Linux中的基本指令

目錄

什麼是 ping 以及它有什麼用途?Ping 的工作原理以及它具體測量什麼何時使用 pingping 和 traceroute/tracert 之間的區別如何在 Windows 中 ping如何在 macOS 上 ping如何在 Linux 中 ping通用語法和基本選項鮮為人知的進階選項實踐案例:從基礎到高級解釋輸出和統計數據常見錯誤及其診斷方法在行動裝置上 PingTraceroute和tracert:查看資料包的路徑使用 WinMTR 進行持續監控良好做法和使用技巧Windows、macOS 和 Linux 中的選項和特性DNS 檢查和名稱解析安全性、協定限制和 MTU快速常見問題解答

🌸 相关推荐

正确喝青汁的减肥方式
365彩票老版本

正确喝青汁的减肥方式

📅 09-22 👀 6299
崎字五行属什么(琦字五行属什么属性)
aa365备用网址

崎字五行属什么(琦字五行属什么属性)

📅 10-14 👀 9078
安卓巅峰配置:揭秘顶配手机的奥秘与选购指南
365彩票老版本

安卓巅峰配置:揭秘顶配手机的奥秘与选购指南

📅 08-31 👀 3466