定義
在Internet RFC標準中,Netstat的定義是: Netstat是在內核中訪問網路及相關信息的程序,它能提供TCP連接,TCP和UDP監聽,進程內存管理的相關報告.
描述
Netstat 是控制台命令,是一個監控TCP/IP網路的非常有用的工具,它可以顯示路由表、實際的網路連接以及每一個網路介面設備的狀態信息.Netstat用於顯示與IP、TCP、UDP和ICMP協議相關的統計數據,一般用於檢驗本機各埠的網路連接情況.
Winxp環境下
該命令 Winxp下 的一般格式為 :
C:\>netstat /?
顯示協議統計信息和當前 TCP/IP 網路連接.
NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v]
-a 顯示所有連接和監聽埠.
-b 顯示包含於創建每個連接或監聽埠的可執行組件.在某些情況下已知可執行組件
擁有多個獨立組件,並且在這些情況下包含於創建連接或監聽埠的組件序列被顯示.
這種情況下,可執行組件名在底部的 [] 中,頂部是其調用的組件,等等,直到 TCP/IP
部分.注意此選項可能需要很長時間,如果沒有足夠許可權可能失敗.
-e 顯示乙太網統計信息.此選項可以與 -s選項組合使用
-n 以數字形式顯示地址和埠號. 此選項可以與 -a選項組合使用
-o 顯示與每個連接相關的所屬進程 ID.
-p proto 顯示 proto 指定的協議的連接;proto 可以是
下列協議之一: TCP、UDP、TCPv6 或 UDPv6.
如果與 -s 選項一起使用以顯示按協議統計信息,proto 可以是下列協議之一:
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6.
-r 顯示路由表.
-s 顯示按協議統計信息.默認地,顯示 IP、
IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的統計信息;
-p 選項用於指定默認情況的子集.
-v 與 -b 選項一起使用時將顯示包含於為所有可執行組件創建連接或監聽埠的組件
interval 重新顯示選定統計信息,每次顯示之間
暫停時間間隔(以秒計).按 CTRL C 停止重新
顯示統計信息.如果省略,netstat 顯示當前
配置信息(只顯示一次)
windows 2000環境下
該命令(Win2000下)的一般格式為 :
C:\>netstat /?
Displays protocol statistics and current TCP/IP network connections.
NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r]
-a Displays all connections and listening ports.
-e Displays Ethernet statistics. This may be combined with the -s
option.
-n Displays addresses and port numbers in numerical form.
-p proto Shows connections for the protocol specified by proto; proto
may be TCP or UDP. If used with the -s option to display
per-protocol statistics, proto may be TCP, UDP, or IP.
-r Displays the routing table.
-s Displays per-protocol statistics. By default, statistics are
shown for TCP, UDP and IP; the -p option may be used to specify
a subset of the default.
interval Redisplays selected statistics, pausing interval seconds
between each display. Press CTRL C to stop redisplaying
statistics. If omitted, netstat will print the current
configuration information once
微軟公司故意將這個功能強大的命令隱藏起來是因為它對於普通用戶來說有些複雜.我們已經知道:Netstat它可以用來獲得你的系統網路連接的信息(使用的埠,在使用的協議等 ),收到和發出的數據,被連接的遠程系統的埠,Netstat在內存中讀取所有的網路信息.
-n 列印實際地址,而不是對地址的解釋或者顯示主機,網路名之類的符號
-r 列印路由選擇表
-f address -family對於給出名字的地址簇列印統計數字和控制塊信息.到目前為止,唯一支持的地址簇是inet
-I interface 只列印給出名字的介面狀態
-p protocol-name 只列印給出名字的協議的統計數字和協議控制塊信息
-s 列印每個協議的統計數字
-t 在輸出顯示中用時間信息代替隊列長度信息.
netstat命令的列標題
Mtu 介面的最大傳輸單位
Net/Dest 介面所在的網路
Address 介面的IP地址
Ipkts 接收到的數據包數目
Ierrs 接收到時已損壞的數據包數目
Opkts 發送的數據包數目
Oeers 發送時已損壞的數據包數目
Collisions 由這個介面所記錄的網路衝突數目
netstat -s--本選項能夠按照各個協議分別顯示其統計數據.如果你的應用程序(如Web瀏覽器)運行速度比較慢,或者不能顯示Web頁之類的數據,那麼你就可以用本選項來查看一下所顯示的信息.你需要仔細查看統計數據的各行,找到出錯的關鍵字,進而確定問題所在.
netstat -e--本選項用於顯示關於乙太網的統計數據.它列出的項目包括傳送的數據報的總位元組數、錯誤數、刪除數、數據報的數量和廣播的數量.這些統計數據既有發送的數據報數量,也有接收的數據報數量.這個選項可以用來統計一些基本的網路流量).
netstat -r--本選項可以顯示關於路由表的信息,類似於後面所講使用route print命令時看到的 信息.除了顯示有效路由外,還顯示當前有效的連接.
netstat -a--本選項顯示一個所有的有效連接信息列表,包括已建立的連接(ESTABLISHED),也包括監聽連接請求(LISTENING)的那些連接.
如果你的計算機有時候接收到的數據報導致出錯數據或故障,你不必感到奇怪,TCP/IP可以容許這些類型的錯誤,並能夠自動重發數據報.但如果累計的出錯情況數目佔到所接收的IP數據報相當大的百分比,或者它的數目正迅速增加,那麼你就應該使用Netstat查一查為什麼會出現這些情況了.
——本選項能夠按照各個協議分別顯示其統計數據.如果你的應用程序(如Web瀏覽器)運行速度比較慢,或者不能顯示Web頁之類的數據,那麼你就可以用本選項來查看一下所顯示的信息.你需要仔細查看統計數據的各行,找到出錯的關鍵字,進而確定問題所在.
——本選項用於顯示關於乙太網的統計數據,它列出的項目包括傳送的數據報的總位元組數、錯誤數、刪除數、數據報的數量和廣播的數量.這些統計數據既有發送的數據報數量,也有接收的數據報數量.這個選項可以用來統計一些基本的網路流量.
——本選項可以顯示關於路由表的信息,類似於後面所講使用route print命令時看到的信息.除了顯示有效路由外,還顯示當前有效的連接.
——本選項顯示一個所有的有效連接信息列表,包括已建立的連接(ESTABLISHED),也包括監聽連接請求(LISTENING)的那些連接.
——顯示所有已建立的有效連接.
:偵聽來自遠方的TCP埠的連接請求
:再發送連接請求后等待匹配的連接請求
:再收到和發送一個連接請求后等待對方對連接請求的確認
等待遠程TCP連接中斷請求,或先前的連接中斷請求的確認
從遠程TCP等待連接中斷請求
:等待從本地用戶發來的連接中斷請求
等待遠程TCP對連接中斷的確認
等待原來的發向遠程TCP的連接中斷請求的確認
:等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認
沒有任何連接狀態
其實可以man netstat , 看其中的stat部分解釋
狀態列表
LISTEN :在監聽狀態中.
ESTABLISHED:已建立聯機的聯機情況.
TIME_WAIT:該聯機在目前已經是等待的狀態.
實例
用實例詳細的解釋一下各個參數的使用:
C:\>netstat -a
-a 和 -n 是最常用的兩個
1. -n 顯示用數字化主機名,即IP地址,而不是compute_name【eagle】
2. -n 只顯示TCP連接
得到IP等於得到一切,它是最容易使機器受到攻擊的東西,所以隱藏自己IP,獲得別人的IP對hacker來說非常重要,現在隱藏IP技術很流行.
-a 和 -n 是最常用的命令,如果要顯示一些協議的更詳細信息,就要用-p這個參數了,它其實是-a 和 -n的一個變種,我們來看一個實例,你就明白了:【netstat -p @@@ 其中@@@為TCP或者UDP】
C:\>netstat -p tcp
-a 參數常用於獲得你的本地系統開放的埠,用它您可以自己檢查你的系統上有沒有被安裝木馬
-r是用來顯示路由表信息,我們來看例子:
C:\>netstat -r
Route Table(路由表)
===========================================================================
Interface List(網路介面列表)
-s 參數的作用前面有詳細的說明,來看例子
C:\>netstat -s
IPv4 Statistics (IP統計結果)
Packets Received = 369492(接收包數)
Received Header Errors = 0(接收頭錯誤數)
Received Address Errors = 2(接收地址錯誤數)
Datagrams Forwarded = 0(數據報遞送數)
Unknown Protocols Received = 0(未知協議接收數)
Received Packets Discarded = 4203(接收后丟棄的包數)
Received Packets Delivered = 3 6 5 2 8 7(接收後轉交的包數)
Output Requests = 3 69066(請求數)
Routing Discards = 0(路由丟棄數 )
Discarded Output Packets = 2172(包丟棄數)
Output Packet No Route = 0(不路由的請求包)
Reassembly Required = 0(重組的請求數)
Reassembly Successful = 0(重組成功數)
Reassembly Failures = 0(重組失敗數)
Datagrams Successfully Fragmented = 0(分片成功的數據報數)
Datagrams Failing Fragmentation = 0(分片失敗的數據報數)
Fragments Created = 0(分片建立數)
ICMPv4 Statistics (ICMP統計結果)包括Received和Sent兩種狀態
Received Sent
Messages 285 784(消息數)
Errors 0 0(錯誤數)
Destination Unreachable 53 548(無法到達主機數目)
Time Exceeded 0 0(超時數目)
Parameter Problems 0 0(參數錯誤)
Source Quenches 0 0(源夭折數)
Redirects 0 0(重定向數)
Echos 25 211(回應數)
Echo Replies 207 25(回復回應數)
Timestamps 0 0(時間戳數)
Timestamp Replies 0 0(時間戳回複數)
Address Masks 0 0(地址掩碼數)
Address Mask Replies 0 0(地址掩碼回複數)
TCP Statistics for IPv4(TCP統計結果)
Active Opens = 5217(主動打開數)
Passive Opens = 80(被動打開數)
Failed Connection Attempts = 2944(連接失敗嘗試數)
Reset Connections = 529(複位連接數)
Current Connections = 9(當前連接數目)
Segments Received = 350143(當前已接收的報文數)
Segments Sent = 347561(當前已發送的報文數)
Segments Retransmitted = 6108(被重傳的報文數目)
UDP Statistics for IPv4(UDP統計結果)
Datagrams Received = 14309(接收的數據包)
No Ports = 1360(無埠數)
Receive Errors = 0(接收錯誤數)
Datagrams Sent = 14524(數據包發送數)
-----------------------------------------------------
netstat -abnov ,顯示的該進程發起的程序進程或者文件列表.此命令常用來判斷是否有可疑進程,之後進行相關操作.
如果您Netstat你自己的話,發現下面的信息:
Port 12345(TCP) Netbus
Port 31337(UDP) Back Orifice
-e 含義:本選項用於顯示關於乙太網的統計數據.它列出的項目包括傳送的數據報的總位元組數、錯誤數、刪除數、數據報的數量和廣播的數量.這些統計數據既有發送的數據報數量,也有接收的數據報數量.這個選項可以用來統計一些基本的網路流量.
C:\>netstat -e
本文出自 「玩技術伯樂哥」 博客,請務必保留此出處http://winman.blog.51cto.com/1078948/818323
[火星人 ] netstat 命令參數 詳解已經有649次圍觀