更新時間:2021-09-18 10:31:22 來源:動力節點 瀏覽1554次
以下命令如果不存在,使用yum install -y xxx安裝。
1.netstat
注:yum install -y net-tools
netstat -anlp | grep 8888
# netstat命令各個參數說明如下:
# -t : 指明顯示TCP端口
# -u : 指明顯示UDP端口
# -l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)
# -p : 顯示進程標識符和程序名稱,每一個套接字/端口都屬于一個程序。
# -n : 不進行DNS輪詢,顯示IP(可以加速操作)
對輸出的每一項進行說明:
(1)Proto:協議名(tcp協議還是udp協議)
(2)Recv-Q:網絡接收隊列。表示收到的數據已經在本地接收緩沖,但是還有多少沒有被進程取走。如果接收隊列Recv-Q一直處于阻塞狀態,可能是遭受了拒絕服務 denial-of-service 攻擊。通常應該為0,如果不為0可能是有問題的。packets在兩個隊列里都不應該有堆積狀態。可接受短暫的非0情況。
(3)Send-Q:網路發送隊列。對方沒有收到的數據或者說沒有Ack的,還是本地緩沖區。如果發送隊列Send-Q不能很快的清零,可能是有應用向外發送數據包過快,或者是對方接收數據包不夠快。通常應該為0,如果不為0可能是有問題的。packets在兩個隊列里都不應該有堆積狀態。可接受短暫的非0情況。
(4)Local Address
0.0.0.0:22 表示監聽服務器上所有ip地址的所有(0.0.0.0表示本地所有ip)
:::22 也表示監聽本地所有ip的22端口,跟上面的區別是這里表示的是IPv6地址,上面的0.0.0.0表示的是本地所有IPv4地址。
127.0.0.1:9100這個表示監聽本機的loopback地址的9100端口(如果某個服務只監聽了回環地址,那么只能在本機進行訪問,無法通過tcp/ip 協議進行遠程訪問)
(5)Foreign Address:與本機端口通信的外部socket。顯示規則與Local Address相同
(6)State:鏈路狀態,共有11種。state列共有12中可能的狀態,前面11種是按照TCP連接建立的三次握手和TCP連接斷開的四次揮手過程來描述的。
LISTEN:監聽來自遠方TCP端口的連接請求
ESTABLISHED:代表一個打開的連接,雙方可以進行或已經在數據交互了。
UNKNOWN:未知的socket狀態
(7)PID/Program:PID即進程id,Program即使用該socket的應用程序。
2.ss
ss -anlp | grep 80
這個命令是查看進程占用哪些文件的
lsof -i:80
注:yum install -y lsof
fuser命令和lsof正好相反,是查看某個文件被哪個進程占用的。Linux中,萬物皆文件,所以可以查看普通文件、套接字文件、文件系統。而套接字文件就包含了端口號。比如查看22端口。
fuser 22/tcp -v
注:yum install -y psmisc
nmap默認總是會掃描端口,要掃描本機端口,很方便。
nmap localhost
對Java感興趣的小伙伴不妨來關注一下動力節點的Linux教程,當然也有相關的視頻教程可以免費下載觀看,視頻內容由淺到深,通俗易懂,適合初學者,希望對大家能夠有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習