天天看點

Netstat指令詳解

Netstat用于顯示與IP、TCP、UDP和ICMP協定相關的統計資料,一般用于檢驗本機各端口的網絡連接配接情況。 

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

Netstat 詳細參數清單

(Winxp)

C:\>netstat /?

顯示協定統計資訊和目前 TCP/IP 網絡連接配接。

NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]

  -a            顯示所有連接配接和監聽端口。

  -b            顯示包含于建立每個連接配接或監聽端口的可執行元件。在某些情況下已知可執行元件

                擁有多個獨立元件,并且在這些情況下包含于建立連接配接或監聽端口的元件序列被顯示。

                這種情況下,可執行元件名在底部的 [] 中,頂部是其調用的元件,等等,直到 TCP/IP

                部分。注意此選項可能需要很長時間,如果沒有足夠權限可能失敗。

  -e            顯示以太網統計資訊。此選項可以與 -s

                選項組合使用。

  -n            以數字形式顯示位址和端口号。

  -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 顯示目前

                配置資訊(隻顯示一次)

(Win2000)

Displays protocol statistics and current TCP/IP network connections.

NETSTAT [-a] [-e] [-n] [-s] [-p proto] [-r] [interval]

  -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 -s——本選項能夠按照各個協定分别顯示其統計資料。如果你的應用程式(如Web浏覽器)運作速度比較慢,或者不能顯示Web頁之類的資料,那麼你就可以用本選項來檢視一下所顯示的資訊。你需要仔細檢視統計資料的各行,找到出錯的關鍵字,進而确定問題所在。 

netstat -e——本選項用于顯示關于以太網的統計資料。它列出的項目包括傳送的資料報的總位元組數、錯誤數、删除數、資料報的數量和廣播的數量。這些統計資料既有發送的資料報數量,也有接收的資料報數量。這個選項可以用來統計一些基本的網絡流量。 

netstat -r——本選項可以顯示關于路由表的資訊,類似于後面所講使用route print指令時看到的 資訊。除了顯示有效路由外,還顯示目前有效的連接配接。 

netstat -a——本選項顯示一個所有的有效連接配接資訊清單,包括已建立的連接配接(ESTABLISHED),也包括監聽連接配接請求(LISTENING)的那些連接配接,斷開連接配接(CLOSE_WAIT)或者處于聯機等待狀态的(TIME_WAIT)等

netstat -n——顯示所有已建立的有效連接配接。

    微軟公司故意将這個功能強大的指令隐藏起來是因為它對于普通使用者來說有些複雜。我們已經知道:Netstat它可以用來獲得你的系統網絡連接配接的資訊(使用的端口,在使用的協定等 ),收到和發出的資料,被連接配接的遠端系統的端口,Netstat在記憶體中讀取所有的網絡資訊。

    在Internet RFC标準中,Netstat的定義是: Netstat是在核心中通路網絡及相關資訊的程式,它能提供TCP連接配接,TCP和UDP監聽,程序記憶體管理的相關報告。

    對于好奇心極強的人來說,緊緊有上面的理論是遠遠不夠的,接下來我們來詳細的解釋一下各個參數的使用,看看執行之後會發生什麼,顯示的資訊又是什麼意思,好了,廢話不說了,讓我們一起來實踐一下吧:)

C:\>netstat -a

Active Connections

  Proto  Local Address          Foreign Address        State

  TCP    Eagle:ftp              Eagle:0                LISTENING

  TCP    Eagle:telnet           Eagle:0                LISTENING

  TCP    Eagle:smtp             Eagle:0                LISTENING

  TCP    Eagle:http             Eagle:0                LISTENING

  TCP    Eagle:epmap            Eagle:0                LISTENING

  TCP    Eagle:https            Eagle:0                LISTENING

  TCP    Eagle:microsoft-ds     Eagle:0                LISTENING

  TCP    Eagle:1030             Eagle:0                LISTENING

  TCP    Eagle:6059             Eagle:0                LISTENING

  TCP    Eagle:8001             Eagle:0                LISTENING

  TCP    Eagle:8005             Eagle:0                LISTENING

  TCP    Eagle:8065             Eagle:0                LISTENING

  TCP    Eagle:microsoft-ds     localhost:1031         ESTABLISHED

  TCP    Eagle:1031             localhost:microsoft-ds  ESTABLISHED

  TCP    Eagle:1040             Eagle:0                LISTENING

  TCP    Eagle:netbios-ssn      Eagle:0                LISTENING

  TCP    Eagle:1213             218.85.139.65:9002     CLOSE_WAIT

  TCP    Eagle:2416             219.133.63.142:https   CLOSE_WAIT

  TCP    Eagle:2443             219.133.63.142:https   CLOSE_WAIT

  TCP    Eagle:2907             192.168.1.101:2774     CLOSE_WAIT

  TCP    Eagle:2916             192.168.1.101:telnet   ESTABLISHED

  TCP    Eagle:2927             219.137.227.10:4899    TIME_WAIT

  TCP    Eagle:2928             219.137.227.10:4899    TIME_WAIT

  TCP    Eagle:2929             219.137.227.10:4899    ESTABLISHED

  TCP    Eagle:3455             218.85.139.65:9002     ESTABLISHED

  UDP    Eagle:microsoft-ds     *:*

  UDP    Eagle:1046             *:*

  UDP    Eagle:1050             *:*

  UDP    Eagle:1073             *:*

  UDP    Eagle:1938             *:*

  UDP    Eagle:2314             *:*

  UDP    Eagle:2399             *:*

  UDP    Eagle:2413             *:*

  UDP    Eagle:2904             *:*

  UDP    Eagle:2908             *:*

  UDP    Eagle:3456             *:*

  UDP    Eagle:4000             *:*

  UDP    Eagle:4001             *:*

  UDP    Eagle:6000             *:*

  UDP    Eagle:6001             *:*

  UDP    Eagle:6002             *:*

  UDP    Eagle:6003             *:*

  UDP    Eagle:6004             *:*

  UDP    Eagle:6005             *:*

  UDP    Eagle:6006             *:*

  UDP    Eagle:6007             *:*

  UDP    Eagle:6008             *:*

  UDP    Eagle:6009             *:*

  UDP    Eagle:6010             *:*

  UDP    Eagle:6011             *:*

  UDP    Eagle:1045             *:*

  UDP    Eagle:1051             *:*

  UDP    Eagle:netbios-ns       *:*

  UDP    Eagle:netbios-dgm      *:*

我們拿其中一行來解釋吧:

Proto  Local Address          Foreign Address        State

TCP    Eagle:2929             219.137.227.10:4899    ESTABLISHED

協定(Proto):TCP,指是傳輸層通訊協定(什麼?不懂?請用baidu搜尋"TCP",OSI七層和TCP/IP四層可是基礎^_^)

本地機器名(Local  Address):Eagle,俗稱計算機名了,安裝系統時設定的,可以在“我的電腦”屬性中修改,本地打開并用于連接配接的端口:2929)   

遠端機器名(Foreign  Address):219.137.227.10

遠端端口:4899  

狀态:ESTABLISHED  

狀态清單

LISTEN  :在監聽狀态中。   

ESTABLISHED:已建立聯機的聯機情況。 

TIME_WAIT:該聯機在目前已經是等待的狀态。 

-a 參數常用于獲得你的本地系統開放的端口,用它您可以自己檢查你的系統上有沒有被安裝木馬(ps:有很多好程式用來檢測木馬,但你的目的是想成為真正的hacker,手工檢測要比隻按一下“scan”按鈕好些----僅個人觀點)。如果您Netstat你自己的話,發現下面的資訊: 

  

  Port 12345(TCP) Netbus 

  Port 31337(UDP) Back Orifice 

  祝賀!您中了最常見的木馬(^_^,上面4899是我連别人的,而且這個radmin是商業軟體,目前我最喜歡的遠端控制軟體) 

  如果你需要木馬及其端口清單的話,去國内的H站找找,或者baidu,google吧 

  ***************************************************************** 

  #一些原理:也許你有這樣的問題:“在機器名後的端口号代表什麼? 

  例子:Eagle:2929

  小于1024的端口通常運作一些網絡服務,大于1024的端口用來與遠端機器建立連接配接。  

  *****************************************************************

繼續我們的探讨,使用-n參數。(Netstat -n) 

  Netstat -n基本上是-a參數的數字形式:

C:\>netstat -n

  TCP    127.0.0.1:445          127.0.0.1:1031         ESTABLISHED

  TCP    127.0.0.1:1031         127.0.0.1:445          ESTABLISHED

  TCP    192.168.1.180:1213     218.85.139.65:9002     CLOSE_WAIT

  TCP    192.168.1.180:2416     219.133.63.142:443     CLOSE_WAIT

  TCP    192.168.1.180:2443     219.133.63.142:443     CLOSE_WAIT

  TCP    192.168.1.180:2907     192.168.1.101:2774     CLOSE_WAIT

  TCP    192.168.1.180:2916     192.168.1.101:23       ESTABLISHED

  TCP    192.168.1.180:2929     219.137.227.10:4899    ESTABLISHED

  TCP    192.168.1.180:3048     192.168.1.1:8004       SYN_SENT

  TCP    192.168.1.180:3455     218.85.139.65:9002     ESTABLISHED

-a 和 -n 是最常用的兩個,據我不完全測試得出以下結果:

1. -n 顯示用數字化主機名,即IP位址,而不是compute_name【eagle】

2. -n 隻顯示TCP連接配接(沒有在哪裡見過微軟的相關文檔,有哪個朋友見到的話,記得告訴我喔^_^)

-a 和 -n 是最常用的指令,如果要顯示一些協定的更詳細資訊,就要用-p這個參數了,它其實是-a 和 -n的一個變種,我們來看一個執行個體,你就明白了:【netstat -p @@@ 其中@@@為TCP或者UDP】

C:\>netstat -p tcp

 繼續我們的參數講解 -e

    含義:本選項用于顯示關于以太網的統計資料。它列出的項目包括傳送的資料報的總位元組數、錯誤數、删除數、資料報的數量和廣播的數量。這些統計資料既有發送的資料報數量,也有接收的資料報數量。這個選項可以用來統計一些基本的網絡流量。

C:\>netstat -e

Interface Statistics

                           Received            Sent

Bytes                     143090206        44998789

Unicast packets              691805          363603

Non-unicast packets          886526            2386

Discards                          0               0

Errors                            0               0

Unknown protocols              4449

    若接收錯和發送錯接近為零或全為零,網絡的接口無問題。但當這兩個字段有100個以上的出錯分組時就可以認為是高出錯率了。高的發送錯表示本地網絡飽和或在主機與網絡之間有不良的實體連接配接;  高的接收錯表示整體網絡飽和、本地主機過載或實體連接配接有問題,可以用Ping指令統計誤碼率,進一步确定故障的程度。netstat -e 和ping結合使用能解決一大部分網絡故障。

    接下來我們開始講解兩個比較複雜的參數 -r 和 -s ,也正因為如此,筆者把他放到最後講解,這裡面可能會涉及到其他方面的知識,以後在我的部落格中将會繼續寫出來,呵呵,最近比較忙

-r是用來顯示路由表資訊,我們來看例子:

C:\>netstat -r

Route Table(路由表)

===========================================================================

Interface List(網絡接口清單)

0x1 ........................... MS TCP Loopback interface

0x10003 ...00 0c f1 02 76 81 ...... Intel(R) PRO/Wireless LAN 2100 3B Mini PCI

dapter

0x10004 ...00 02 3f 00 05 cb ...... Realtek RTL8139/810x Family Fast Ethernet

C

Active Routes:(動态路由)

Network Destination        Netmask          Gateway       Interface  Metric

          0.0.0.0          0.0.0.0    192.168.1.254   192.168.1.181       30

          0.0.0.0          0.0.0.0    192.168.1.254   192.168.1.180       20

        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1

      192.168.1.0    255.255.255.0    192.168.1.180   192.168.1.180       20

      192.168.1.0    255.255.255.0    192.168.1.181   192.168.1.181       30

    192.168.1.180  255.255.255.255        127.0.0.1       127.0.0.1       20

    192.168.1.181  255.255.255.255        127.0.0.1       127.0.0.1       30

    192.168.1.255  255.255.255.255    192.168.1.180   192.168.1.180       20

    192.168.1.255  255.255.255.255    192.168.1.181   192.168.1.181       30

        224.0.0.0        240.0.0.0    192.168.1.180   192.168.1.180       20

        224.0.0.0        240.0.0.0    192.168.1.181   192.168.1.181       30

  255.255.255.255  255.255.255.255    192.168.1.180   192.168.1.180       1

  255.255.255.255  255.255.255.255    192.168.1.181   192.168.1.181       1

Default Gateway:     192.168.1.254(預設網關)

Persistent Routes:(靜态路由)

  None

C:\>

-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         = 365287(接收後轉交的包數)

  Output Requests                    = 369066(請求數)

  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(資料包發送數)

本文轉自 h2appy  51CTO部落格,原文連結:http://blog.51cto.com/h2appy/600185,如需轉載請自行聯系原作者

繼續閱讀