歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

查看Linux端口狀態信息的命令詳解

  Linux系統的端口有時會被某個進程占用,我們怎麼快速查看端口信息呢?下面由學習啦小編為大家整理了查看Linux端口信息的命令詳解,希望對大家有幫助!

  查看Linux端口狀態信息的命令詳解

  在linux一般使用netstat 來查看系統端口使用情況。

  netstat命令是一個監控TCP/IP網絡的非常有用的工具,它可以顯示路由表、實際的網絡連接以及每一個網絡接口設備的

  netstat命令的功能是顯示網絡連接、路由表和網絡接口信息,可以讓用戶得知目前都有哪些網絡連接正在運作。

  該命令的一般格式為:

  netstat [選項]

  命令中各選項的含義如下:

  -a 顯示所有socket,包括正在監聽的。

  -c 每隔1秒就重新顯示一遍,直到用戶中斷它。

  -i 顯示所有網絡接口的信息,格式同“ifconfig -e”。

  -n 以網絡IP地址代替名稱,顯示出網絡連接情形。

  -r 顯示核心路由表,格式同“route -e”。

  -t 顯示TCP協議的連接情況。

  -u 顯示UDP協議的連接情況。

  -v 顯示正在進行的工作。

  Linux下查看端口信息常見的命令用法

  1. netstat -an | grep LISTEN

  0.0.0.0的就是每個IP都有的服務,寫明哪個IP的就是綁定那個IP的服務。

  2. netstat -tln

  用來查看linux的端口使用情況

  3. /etc/init.d/vsftp start

  是用來啟動ftp端口~!

  4. netstat

  查看已經連接的服務端口(ESTABLISHED)

  5. netstat -a

  查看所有的服務端口(LISTEN,ESTABLISHED)

  6. sudo netstat -ap

  查看所有的服務端口並顯示對應的服務程序名

  7. nmap <掃描類型><掃描參數>

  例如:

  nmap localhost

  nmap -p 1024-65535 localhost

  nmap -PT 192.168.1.127-245

  當我們使用 netstat -apn 查看網絡連接的時候,會發現很多類似下面的內容:

  Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

  tcp 0 52 218.104.81.152:7710 211.100.39.250:29488 ESTABLISHED 6111/1

  顯示這台服務器開放了7710端口,那麼這個端口屬於哪個程序呢?我們可以使用 lsof -i :7710 命令來查詢:

  COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

  sshd 1990 root 3u IPv4 4836 TCP *:7710 (LISTEN) 54com.cn

  這樣,我們就知道了7710端口是屬於sshd程序的

  補充:查看linux端口狀態信息的其它命令

  查看端口占用情況的命令:lsof -i

1 [root@www ~]# lsof -i 2   3 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME 4 nginx 2333 root 6u IPv4 6242 TCP *:http (LISTEN) 5 nginx 2334 www 6u IPv4 6242 TCP *:http (LISTEN) 6 sshd 2349 root 3u IPv6 6283 TCP *:ndmp (LISTEN) 7 sshd 2349 root 4u IPv6 6286 TCP *:ssh (LISTEN)

  這裡返回了Linux當前所有打開端口的占用情況。第一段是進程,最後一列是偵聽的協議、偵聽的IP與端口號、狀態。如果端口號是已知的常用服務(如80、21等),則會直接顯示協議名稱,如http、ftp、ssh等。查看某一端口的占用情況: lsof -i:端口號

1 [root@www ~]# lsof -i:21 2   3 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME 4 pure-ftpd 2651 root 4u IPv4 7047 TCP *:ftp (LISTEN) 5 pure-ftpd 2651 root 5u IPv6 7048 TCP *:ftp (LISTEN)

  這裡顯示出21號端口正在被pure-ftpd使用,狀態是listen。結束占用端口的進程:killall 進程名雖然我們不建議用這種本末倒置的方法來解決沖突問題,但某些情況下還是可以直接結束掉占用進程的(比如重啟Apache時進程沒有完全退出,導致重啟失敗)

1 [root@www ~]# killall pure-ftpd

  這樣,所有的pure-ftpd進程都會被結束掉。

Copyright © Linux教程網 All Rights Reserved