Ubuntu
如何測試我的特定埠是打開還是阻塞?
我想執行一項服務,該服務需要使用埠 20000連接某些源,但它沒有連接。我想測試我的這個埠是被阻塞還是打開。
您可以嘗試NMAP掃描本地電腦上“打開”的埠,例如:
nmap -sS -O -p20000 127.0.0.1
或者到 netstat 檢查服務使用的埠。
像這樣:
網路統計-lnptu
有用的實用程序:
- 1.遠端登錄
- 2.nc
- 3.nmap
場景:用於檢查遠端系統 tcp 80 埠狀態
用法 :
telnet myserver.com 80 nc -v myserver.com 80 nmap myserver.com 80
反應分析:
如果您超時或拒絕:埠未打開
假設如果你得到“連接被拒絕”:那麼埠是打開的,但程序沒有監聽
如果連接成功:埠已打開且程序正在偵聽
解決方案:
啟動/重啟監聽程序(如果連接被拒絕)
請網路團隊監控連接,我們可以確認它是否被中間網路防火牆或伺服器防火牆/iptables 阻止
筆記 :
- 假設防火牆配置為拒絕數據包而不是丟棄,那麼您將收到“連接被拒絕”錯誤,因此在這種情況下,我們無法確保程序是否正在偵聽。
要檢查 udp 埠(如 ntp),您可以使用以下 nc 選項
nc -uzv yourserver.com 123