學習啦 > 學習電腦 > 操作系統(tǒng) > Linux教程 > Linux中netstat命令怎么用

Linux中netstat命令怎么用

時間: 孫勝652 分享

Linux中netstat命令怎么用

  在Linux眾多命令中,netstat命令是控制臺命令,用于監(jiān)控TCP/IP網絡,可顯示路由表的狀態(tài)信息,是個十分實用的命令,本文將對netstat命令做個詳細介紹,感興趣的朋友一起來了解一下吧。

  如果你的計算機有時候接收到的數(shù)據(jù)報導致出錯數(shù)據(jù)或故障,你不必感到奇怪,TCP/IP可以容許這些類型的錯誤,并能夠自動重發(fā)數(shù)據(jù)報。但如果累計的出錯情況數(shù)目占到所接收的IP數(shù)據(jù)報相當大的百分比,或者它的數(shù)目正迅速增加,那么你就應該使用netstat查一查為什么會出現(xiàn)這些情況了。

  1.命令格式:

  netstat [-acCeFghilMnNoprstuvVwx][-A《網絡類型》][--ip]

  2.命令功能:

  netstat用于顯示與IP、TCP、UDP和ICMP協(xié)議相關的統(tǒng)計數(shù)據(jù),一般用于檢驗本機各端口的網絡連接情況。

  3.命令參數(shù):

  -a或–all 顯示所有連線中的Socket。

  -A《網絡類型》或–《網絡類型》 列出該網絡類型連線中的相關地址。

  -c或–continuous 持續(xù)列出網絡狀態(tài)。

  -C或–cache 顯示路由器配置的快取信息。

  -e或–extend 顯示網絡其他相關信息。

  -F或–fib 顯示FIB。

  -g或–groups 顯示多重廣播功能群組組員名單。

  -h或–help 在線幫助。

  -i或–interfaces 顯示網絡界面信息表單。

  -l或–listening 顯示監(jiān)控中的服務器的Socket。

  -M或–masquerade 顯示偽裝的網絡連線。

  -n或–numeric 直接使用IP地址,而不通過域名服務器。

  -N或–netlink或–symbolic 顯示網絡硬件外圍設備的符號連接名稱。

  -o或–timers 顯示計時器。

  -p或–programs 顯示正在使用Socket的程序識別碼和程序名稱。

  -r或–route 顯示Routing Table。

  -s或–statistice 顯示網絡工作信息統(tǒng)計表。

  -t或–tcp 顯示TCP傳輸協(xié)議的連線狀況。

  -u或–udp 顯示UDP傳輸協(xié)議的連線狀況。

  -v或–verbose 顯示指令執(zhí)行過程。

  -V或–version 顯示版本信息。

  -w或–raw 顯示RAW傳輸協(xié)議的連線狀況。

  -x或–unix 此參數(shù)的效果和指定”-A unix”參數(shù)相同。

  –ip或–inet 此參數(shù)的效果和指定”-A inet”參數(shù)相同。

  4.使用實例:

  實例:無參數(shù)使用

  命令:netstat

  輸出:

  代碼如下:

  [root@localhost ~]# netstat

  Active Internet connections (w/o servers)

  Proto Recv-Q Send-Q Local Address Foreign Address State

  tcp 0 268 192.168.120.204:ssh 10.2.0.68:62420 ESTABLISHED

  udp 0 0 192.168.120.204:4371 10.58.119.119:domain ESTABLISHED

  Active UNIX domain sockets (w/o servers)

  Proto RefCnt Flags Type State I-Node Path

  unix 2 [ ] DGRAM 1491 @/org/kernel/udev/udevd

  unix 4 [ ] DGRAM 7337 /dev/log

  unix 2 [ ] DGRAM 708823

  unix 2 [ ] DGRAM 7539

  unix 3 [ ] STREAM CONNECTED 7287

  unix 3 [ ] STREAM CONNECTED 7286

  [root@localhost ~]#

  說明:

  從整體上看,netstat的輸出結果可以分為兩個部分:

  一個是Active Internet connections,稱為有源TCP連接,其中“Recv-Q”和“Send-Q”指的是接收隊列和發(fā)送隊列。這些數(shù)字一般都應該是0。如果不是則表示軟件包正在隊列中堆積。這種情況只能在非常少的情況見到。

  另一個是Active UNIX domain sockets,稱為有源Unix域套接口(和網絡套接字一樣,但是只能用于本機通信,性能可以提高一倍)。

  Proto顯示連接使用的協(xié)議,RefCnt表示連接到本套接口上的進程號,Types顯示套接口的類型,State顯示套接口當前的狀態(tài),Path表示連接到套接口的其它進程使用的路徑名。

  套接口類型:

  -t :TCP

  -u :UDP

  -raw :RAW類型

  --unix :UNIX域類型

  --ax25 :AX25類型

  --ipx :ipx類型

  --netrom :netrom類型

  狀態(tài)說明:

  LISTEN:偵聽來自遠方的TCP端口的連接請求

  SYN-SENT:再發(fā)送連接請求后等待匹配的連接請求(如果有大量這樣的狀態(tài)包,檢查是否中招了)

  SYN-RECEIVED:再收到和發(fā)送一個連接請求后等待對方對連接請求的確認(如有大量此狀態(tài),估計被flood攻擊了)

  ESTABLISHED:代表一個打開的連接

  FIN-WAIT-1:等待遠程TCP連接中斷請求,或先前的連接中斷請求的確認

  FIN-WAIT-2:從遠程TCP等待連接中斷請求

  CLOSE-WAIT:等待從本地用戶發(fā)來的連接中斷請求

  CLOSING:等待遠程TCP對連接中斷的確認

  LAST-ACK:等待原來的發(fā)向遠程TCP的連接中斷請求的確認(不是什么好東西,此項出現(xiàn),檢查是否被攻擊)

  TIME-WAIT:等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認

  CLOSED:沒有任何連接狀態(tài)

312499