網路排查四步驟
當使用者回報「網站開不起來」或「服務無回應」時,問題可能出在網路實體連線、防火牆阻擋、DNS 解析失敗,或是伺服器根本沒有開啟對應的通訊埠(Port)。
有一套標準的網路診斷流程幫助我們排查:看 IP ➔ 測實體連線 ➔ 查 Port 埠號 ➔ 測 HTTP 協議。
針對網路排查的四個階段,Linux 提供了非常經典且高效的命令列工具:
| 階段 | 指令 | 英文全稱 / 概念 | 實務維運用途與說明 |
|---|---|---|---|
| 看 IP | ip a | IP Address | 查看網卡名稱與當前分配到的 IP 位址(新版 Ubuntu 推薦,取代舊版 ifconfig)。 |
| 測連線 | ping | Packet Internet Groper | 測試與目標主機之間是否通暢(ICMP 封包),並查看延遲(Latency)。 |
| 查 Port | ss -tuln | Socket Statistics | 查看系統當前開啟(Listening)哪些 TCP/UDP Port(比舊版 netstat 更快更輕量)。 |
| 測 Web | curl | Client URL | 不需打開瀏覽器,直接在 Terminal 發送 HTTP/HTTPS 請求並查看回應標頭(Header)。 |
重點指令與參數拆解
常用組合:ss -tuln | grep 80(快速確認 80 Port 是否已被開通)。
下圖為在 Multipass 虛擬機(ubuntu@my-linux)中,實際進行 Linux 網路診斷與連線排查的完整測試過程:


操作流程拆解:
1.檢查網卡與 IP 配置(ip a):
系統包含 lo(本地環回介面 127.0.0.1)與主要實體網卡 enp0s1。
確認虛擬機當前取得的內網 IP 位址為 192.168.252.2/24。
2.測試基礎外網連線(ping -c 4 8.8.8.8):
對 Google 公用 DNS 發送 4 次 ICMP 封包,成功收到 4 次回應(0% packet loss),平均延遲僅 21.2 ms,證實實體網路與外網路由完全暢通。
3.檢視系統開啟的通訊埠(ss -tuln):
觀察 TCP Listening 區塊,可以看到 0.0.0.0:22 與 [::]:22 處於監聽狀態,確認系統的 SSH 服務(Port 22) 正在正常開門迎客。
4.測試 Web 協定與 HTTP 標頭(curl -I https://www.google.com):
成功取得 HTTP/2 200 狀態碼與回應標頭(Header),證實 DNS 域名解析、SSL 憑證握手與對外 HTTPS 連線皆運作正常。