使用netstat、lsof檢視端口占用情況
阿新 • • 發佈:2019-09-16
使用netstat、lsof檢視端口占用情況
netstat
netstat用來檢視系統當前系統網路狀態資訊,包括埠,連線情況等,常用方式如下:
netstat -atunlp,各引數含義如下:
-t : 指明顯示TCP埠
-u : 指明顯示UDP埠
-l : 僅顯示監聽套接字(LISTEN狀態的套接字)
-p : 顯示程序識別符號和程式名稱,每一個套接字/埠都屬於一個程式
-n : 不進行DNS解析
-a 顯示所有連線的埠
執行後得表格一目瞭然,如下圖
當然,在眾多表目中找一個特定得,肯定不那麼順手,一般該指令會遇grep配合使用,比如查詢埠22,就用netstat -tunlp | grep 22 或者乾脆netstat -an | grep 22就可以了,檢視其它埠類似,當然也可以通過埠狀態查詢即netstat -anp | grep TIME_WAIT,即只會顯示含有TIME_WAIT字串的條目
lsof
lsof的作用是列出當前系統開啟檔案(list open files),不過通過-i引數也能檢視埠的連線情況,-i後跟冒號埠可以檢視指定埠資訊,直接-i是系統當前所有開啟的埠
lsof -i:22 #檢視22埠連線情況,預設為sshd埠 如下圖:
檢視連線數
可以看到當前通過埠22連線到機器的一共有2個,通過該命令就能清楚知道當前埠狀態