ping
命令檢查目標主機IP是否可達(如ping 192.168.1.100
),若收到回復(如64 bytes from 192.168.1.100: icmp_seq=1 ttl=64 time=0.123 ms
)則表示IP層網絡正常;若超時報錯(如Request timeout
),則可能存在網絡阻斷或防火墻攔截ICMP流量。nslookup example.com
或dig example.com
查看是否能解析到正確IP。systemctl status firewalld
(CentOS 7+默認使用firewalld)或firewall-cmd --state
,若輸出active (running)
則表示防火墻已開啟。firewall-cmd --list-all
查看當前區域的開放端口、服務(如ssh
、http
)及規則;或使用firewall-cmd --list-ports
僅查看開放端口(如80/tcp
、22/tcp
)。nc -vz 目標IP 端口號
(如nc -vz 192.168.1.100 80
),若輸出Connection to 192.168.1.100 80 port [tcp/http] succeeded!
則表示端口開放;若輸出Connection refused
則表示端口關閉或防火墻攔截。nc -vzu 目標IP 端口號
(如nc -vzu 192.168.1.100 53
),UDP測試無回復可能表示端口關閉或防火墻攔截(需結合其他工具確認)。telnet 目標IP 端口號
(如telnet 192.168.1.100 22
),若連接成功會顯示Connected to 192.168.1.100
;若失敗則提示Connection refused
或超時。curl
命令模擬瀏覽器訪問,如curl http://localhost
(本地測試)或curl http://192.168.1.100
(遠程測試),若返回HTML內容則表示Web服務正常且防火墻允許HTTP流量;若返回Connection refused
或超時則表示防火墻攔截。ssh
命令測試SSH端口(默認22)連通性,如ssh username@192.168.1.100
,若能登錄則表示SSH服務開放且防火墻允許;若提示Connection refused
則表示端口未開放或防火墻攔截。nmap
工具掃描目標主機的端口狀態,如nmap -p 1-1000 192.168.1.100
,可查看目標主機開放端口列表。若掃描結果顯示端口為open
則表示端口開放且未被防火墻攔截;若為filtered
則表示防火墻可能攔截了該端口。tcpdump
抓包分析流量是否到達防火墻。例如tcpdump -i eth0 port 80
(監聽eth0接口的80端口流量),若未捕獲到目標IP的請求包,則可能是網絡層問題;若捕獲到請求包但無響應,則可能是防火墻攔截。systemctl stop firewalld
),測試完成后需重新開啟(systemctl start firewalld
),避免影響系統安全。firewall-cmd --permanent --add-port=端口號/協議
(如firewall-cmd --permanent --add-port=8080/tcp
),然后執行firewall-cmd --reload
使規則生效。