Linux基礎命令---netstat顯示網路狀態

一生有你llx發表於2019-02-25

netstat

netstat 指令可以顯示當前的網路連線、路由表、介面統計資訊、偽裝連線和多播成員資格等資訊。

此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1 、語法

netstat [ address_family_options ] [--tcp|-t]  [--udp|-u] [--raw|-w]  [--listening|-l]  [--all|-a]  [--numeric|-n]  [--numeric-hosts]  [--numeric-ports]  [--numeric-ports]  [--symbolic|-N]  [--extend|-e[--extend|-e]]  [--timers|-o] [--program|-p]   [--verbose|-v]  [--continuous|-c]   [delay]

netstat  {--route|-r} [ address_family_options ]  [--extend|-e[--extend|-e]]  [--verbose|-v]  [--numeric|-n] [--numeric-hosts]  [--numeric-ports]  [--numeric-ports]  [--continuous|-c] [delay]

netstat  {--interfaces|-I|-i}  [ iface ]  [--all|-a]  [--extend|-e]  [--verbose|-v]  [--program|-p]  [--numeric|-n] [--numeric-hosts]  [--numeric-ports]  [--numeric-ports]  [--continuous|-c]  [delay]

netstat  {--groups|-g} [--numeric|-n]  [--numeric-hosts]  [--numeric-ports]  [--numeric-ports]   [--continuous|-c]   [delay]

netstat {--masquerade|-M}  [--extend|-e] [--numeric|-n]  [--numeric-hosts]  [--numeric-ports]  [--numeric-ports]  [--continuous|-c] [delay]

netstat {--statistics|-s}  [--tcp|-t]  [--udp|-u]  [--raw|-w]  [delay]

netstat {--version|-V}

netstat {--help|-h}

 

address_family_options:

[--protocol={inet,inet6,unix,ipx,ax25,netrom,ddp,  ...  }] [--unix|-x]  [--inet|--ip]  [--ax25]  [--ipx]  [--netrom]  [--ddp]

 

2 、選項列表

選項

說明

--help

顯示幫助資訊

--version

顯示版本資訊

-v | --verbose

顯示執行過程

-n | --numeric

直接顯示數字ip

--numeric-hosts

顯示主機的數字地址,不影響埠和使用者名稱

--numeric-ports

顯示埠,不影響主機和使用者名稱

--numeric-users

顯示使用者id,不影響主機和埠

-A | --protocol

指定網路型別

-c | --continuous

持續顯示

-e | --extend

顯示其他附加資訊

-o | --timers

顯示計時器

-p | --program

顯示正在使用的socket程式pid和名字

-l | --listen

只顯示監聽的socket資訊

-a | -all

顯示所有連線中的socket資訊

-F

顯示FIB

-C

顯示路由的快取

-Z | --context

如果開啟了SELinux,那麼就列印SELinux的上下文

-T | --notrim

停止修剪長地址

 

3 、說明

netstat 列印有關Linux網路子系統的資訊。列印的資訊型別由第一個引數控制

引數

說明

(none)

預設情況下,netstat顯示開啟的套接字列表。如果不指定任何地址族,則將列印所有已配置地址家族的活動套接字。

-r | --route

列印核心路由表

-g | --groups

顯示IPv4和IPv6的多播組成員資訊

-i| --interfaces = iface , -I = iface

顯示所有網路介面的表,或指定的ifaces。

-M | --masquerade

顯示假連線列表。

-s | --statistics

顯示每個協議的彙總統計資訊。

 

4 、輸出

Active Internet connections (TCP, UDP, raw)

說明

Proto

socket 使用的協議,tcp, udp, raw。

Recv-Q

連線到此套接字的使用者程式未複製的位元組數。

Send-Q

遠端主機未確認的位元組數。

Local Address

套接字的本地端的地址和埠號。除非指定了“--numeric (-n)“選項,否則套接字地址將解析為其規範主機名(FQDN),埠號將被轉換為相應的服務名稱。

Foreign Address

套接字的遠端端的地址和埠號。類似於“本地地址”。

State

socket 的狀態。由於在原始模式中沒有狀態,通常在UDP中也沒有使用狀態,因此這一列可以保留為空白。通常,這可以是幾個值之一:

ESTABLISHED ,套接字有一個已建立的連線。

SYN_SENT ,套接字正在積極嘗試建立連線。

SYN_RECV ,已從網路接收到連線請求。

FIN_WAIT1 ,套接字關閉,連線正在關閉。

FIN_WAIT2 ,連線被關閉,套接字正在等待來自遠端端的關閉。

TIME_WAIT ,套接字在關閉後等待處理仍在網路中的資料包。

CLOSED ,沒有使用套接字。

CLOSE_WAIT ,遠端終端已關閉,等待套接字關閉。

LAST_ACK ,遠端終端已關閉,套接字已關閉。等待確認

LISTEN ,套接字正在監聽傳入的連線。除非您指定“--listening”或“--all(-a)”選項,否則輸出中不包含此類套接字。

CLOSING ,兩個套接字都已關閉,但我們仍然沒有傳送所有資料。

UNKNOWN ,套接字的狀態未知。

User


PID/Program name


Timer


Active UNIX domain Sockets

說明

Proto

套接字使用的協議(通常是Unix)。

RefCnt

參考計數(即通過這個套接字附加的程式)。

Flags

所顯示的標誌是SO_ACCEPTON (顯示為ACC)、SO_WAITDATA(W)或SO_NOSPACE(N)。如果未連線套接字的相應程式正在等待連線請求,則在未連線套接字上使用SO_ACCECPTON。其他的標誌不正常。

Type

可能的幾種值:

SOCK_DGRAM ,套接字以資料包(無連線)模式使用。

SOCK_STREAM ,這是一個流(連線)套接字。

SOCK_RAW ,套接字用作原始套接字。

SOCK_RDM ,這個服務提供可靠傳遞的訊息。

SOCK_SEQPACKET ,這是一個順序的資料包套接字。

SOCK_PACKET ,原始介面訪問套接字。

UNKNOWN ,不知道的狀態

State

FREE ,套接字還沒有分配

LISTENING ,套接字正在監聽請求。

CONNECTING ,套接字正在嘗試連線。

CONNECTED ,套接字已經連線。                   

DISCONNECTING ,套接字斷開連線。

(empty) ,套接字沒有連線到其他地方。

UNKNOWN ,未知的狀態

PID/Program name

開啟套接字的程式ID(PID)和程式名。更多資訊可在上面寫的活動網際網路連線部分獲得。

Path

這是連線到套接字上的相應程式的路徑名。

 

5 、檔案

/etc/services ,服務翻譯檔案

/proc ,proc檔案系統的掛載點,它允許訪問核心狀態。

/proc/net/dev ,裝置資訊。

/proc/net/raw ,raw套接字資訊。

/proc/net/tcp ,tcp套接字資訊。

/proc/net/udp ,udp套接字資訊。

/proc/net/igmp ,IGMP多播資訊。

/proc/net/unix ,Unix域名套接字資訊。

/proc/net/ipx ,IPX套接字資訊。

/proc/net/ax25 ,AX25套接字資訊。

/proc/net/appletalk ,DDP (appletalk) 套接字資訊。

/proc/net/nr ,NET/ROM套接字資訊

/proc/net/route ,IP路由資訊。

/proc/net/ax25_route ,AX25路由資訊。

/proc/net/ipx_route ,IPX路由資訊。

/proc/net/nr_nodes ,NET/ROM 節點列表。

/proc/net/nr_neigh ,NET/ROM鄰居。

/proc/net/ip_masquerade ,偽裝連線。

/proc/net/snmp ,靜態。

 

 

6 、例項

1 )顯示指定型別的網路資訊

[root@localhost ~]#  netstat -A inet             // 指定網路型別 inet

Active Internet connections (w/o servers)

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

udp        0      0 192.168.0.113:33423        192.168.0.1:domain         ESTABLISHED 

udp        0      0 192.168.0.113:40242        192.168.1.1:domain         ESTABLISHED 

udp        0      0 192.168.0.113:50786        192.168.0.1:domain          ESTABLISHED

2 )顯示路由表

[root@localhost ~]#  netstat –r                 // 顯示路由表

Kernel IP routing table

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface

255.255.255.255 -               255.255.255.255 !H        - -          - -

192.168.1.0     *               255.255.255.0   U         0 0          0 eth0

224.0.0.0       -               255.255.255.0   !         - -          - -

default         192.168.1.1     0.0.0.0         UG        0 0          0 eth0

3 )顯示網路卡狀態

[root@localhost ~]#  netstat –i                    // 顯示網路卡狀態

Kernel Interface table

Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg

eth0        1500  0   121817      0      0      0    79998      0      0      0 BMRU

lo         16436   0     8374      0     0      0     8374      0      0      0 LRU

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29270124/viewspace-2605665/,如需轉載,請註明出處,否則將追究法律責任。

相關文章