2021-05-12 14:32:11
netstat命令: 顯示網路連線,路由表,介面統計資訊,多播成員
netstat - Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships
netstat: 列印網路連線,路由表,介面統計資訊,多播成員
選項與引數:
netstat [address_family_options] [--tcp|-t] [--udp|-u] [--raw|-w]
[--listening|-l] [--all|-a] [--numeric|-n] [--numeric-hosts]
[--numeric-ports] [--numeric-users] [--symbolic|-N]
[--extend|-e[--extend|-e]] [--timers|-o] [--program|-p] [--ver‐
bose|-v] [--continuous|-c]
netstat {--route|-r} [address_family_options]
[--extend|-e[--extend|-e]] [--verbose|-v] [--numeric|-n]
[--numeric-hosts] [--numeric-ports] [--numeric-users] [--continuous|-c]
netstat {--interfaces|-i} [--all|-a] [--extend|-e[--extend|-e]]
[--verbose|-v] [--program|-p] [--numeric|-n] [--numeric-hosts]
[--numeric-ports] [--numeric-users] [--continuous|-c]
netstat {--groups|-g} [--numeric|-n] [--numeric-hosts]
[--numeric-ports] [--numeric-users] [--continuous|-c]
netstat {--masquerade|-M} [--extend|-e] [--numeric|-n]
[--numeric-hosts] [--numeric-ports] [--numeric-users] [--continuous|-c]
netstat {--statistics|-s} [--tcp|-t] [--udp|-u] [--raw|-w]
netstat {--version|-V}
netstat {--help|-h}
address_family_options:
[-4] [-6] [--protocol={inet,unix,ipx,ax25,netrom,ddp}[,...]]
[--unix|-x] [--inet|--ip] [--ax25] [--ipx] [--netrom] [--ddp]
與路由 (route) 有關的引數說明:
-r : 列出路由表(route table),功能如同 route 這個指令[route -e];
-n : 不使用主機名與服務名稱,使用 IP 與 port number ,如同 route -n
與網路介面有關的引數:
-a : 列出所有的聯機狀態,包括 tcp/udp/unix socket 等;
-t : 僅列出 TCP 協定的連線情況;
-u : 僅列出 UDP 協定的情況;
-l : 僅列出有在 Listen (監聽) 的服務之網路狀態;
-p : 列出建立相關連線的 PID 與 Program 名;
-c : 可以設定幾秒鐘後自動更新一次,例如 -c 5 每五秒更新一次網路狀態的顯示;
-i : 顯示所有網路介面的資訊,格式“netstat -i”。
其他選項:
-v : 顯示正在進行的工作。
-b : 顯示在建立每個連線或偵聽埠時涉及的可執行程式。
-e : 顯示乙太網統計。此選項可以與 -s 選項結合使用。
-f : 顯示外部地址的完全限定域名(FQDN)。
-o : 顯示與每個連線相關的所屬進程ID。
-s : 顯示每個協定的統計。
-x : 顯示 NetworkDirect 連線、偵聽器和共用端點。
-y : 顯示所有連線的 TCP 連線模板。無法與其他選項結合使用。
輸出:
Proto : 協定
Recv-Q : 非由使用者程式連線所複製而來的總 bytes 數[不大理解]
Send-Q : 來自遠端主機不包含ack標誌的總bytes數.[意指主動聯機 SYN 或其他標誌的封包所佔的 bytes 數]
Local Address : 本地端的地址,可以是 IP (-n 引數存在時), 也可以是完整的主機名。
使用的格是就是『 IP:port 』只是 IP 的格式有 IPv4 及 IPv6 的差異。
Foreign Address : 遠端的主機 IP 與 port number
State : 狀態.
ESTABLISHED : 已建立連線.
SYN_SENT : 傳送一個建立連線請求.
SYN_RECV : 從網路中接收到一個連線請求
FIN_WAIT1 : socket已經關閉(closed),連線正在關閉(shutting down).
FIN_WAIT2: 連線已經關閉(closed),socket 等待來自遠端的關閉[確認包](shutdonw)
TIME_WAIT: 連線已經斷開.但socket還在網路上等待結束.[主動關閉連線的一方,會在傳送最後一個ack後進入TIME_WAIT狀態(在四次握手中)]
CLOSE : socket已經不在使用了.
CLOSE_WAIT : 被動關閉時,遠端已經關閉連線(傳送來了FIN),本端socket還未關閉(還沒有傳送FIN出去);
[如果出現大量close_wait的現象,主要原因是某種情況下對方關閉了socket連結,但是我方忙與讀或者寫,
沒有關閉連線。程式碼需要判斷socket,一旦讀到0,如果不是AGAIN,就斷開連線。]
LAST_ACK : 遠端已經關閉(本端接收到遠端的FIN),本端也關閉(傳送了FIN),正在等待遠端發來ACK.
LISTEN : 正在監聽新來的連線(incoming connections).通常用在服務的監聽 port !可使用『 -l 』引數查閱
CLOSING : 兩端socket都關閉了,但是資料還沒有全部傳送完.
UNKNOWN : socket的狀態是未知的(unknown)
ip路由表相關輸出:
Destination : 目的ip地址
Gateway : 閘道器
Genmask : 子網掩碼
Flags : 標誌.
■ G 路由將採用閘道器。
■ U 準備使用的介面處於“活動”狀態。
■ H 通過該路由,只能抵達一台主機。
■ D 如果路由表的條目是由ICMP重定向訊息生成的,就會設定這個標記。
■ M 如果路由表條目已被ICMP重定向訊息修改,就會設定這個標記。
MSS : Maximum Segment Size, 最大報文長度
Window : ?
irtt : ?
Iface : 介面名稱
Linux netstat命令詳解 http://www.linuxidc.com/Linux/2012-12/75667.htm
使用netstat檢測及監測網路連線 http://www.linuxidc.com/Linux/2014-09/106497.htm
Netstat 的10個基本用法 http://www.linuxidc.com/Linux/2014-01/94644.htm
Linux netstat命令 http://www.linuxidc.com/Linux/2013-06/85528.htm
Linux命令:service & netstat http://www.linuxidc.com/Linux/2011-12/48395.htm
Linux下用netstat命令檢視網路負載狀況的一條語句 http://www.linuxidc.com/Linux/2011-08/41429.htm
LPI認證考試學習之Linux netstat 命令詳解 http://www.linuxidc.com/Linux/2009-12/23197.htm
Linux使用netstat命令檢視並行連線數 http://www.linuxidc.com/Linux/2017-02/140681.htm
Linux命令列netstat總結 http://www.linuxidc.com/Linux/2016-11/136641.htm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-02/141096.htm
相關文章