|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于开发环境的选择尽量要轻量级和高度可定制,航空母舰级别的工具往往会让你迷惑不解;
netstat命令用于显现与IP、TCP、UDP和ICMP协定相干的统计数据,一样平常用于查验本机各端口的收集毗连情形。netstat是在内核中会见收集及相干信息的程序,它能供应TCP毗连,TCP和UDP监听,历程内存办理的相干呈报。
假如你的盘算机偶然候吸收到的数据报道致堕落数据或妨碍,你不用感应奇异,TCP/IP能够允许这些范例的毛病,并可以主动重发数据报。但假如累计的堕落情形数量占到所吸收的IP数据报相称年夜的百分比,大概它的数量正敏捷增添,那末你就应当利用netstat查一查为何会呈现这些情形了。
1.命令格局:
netstat[-acCeFghilMnNoprstuvVwx][-A<收集范例>][--ip]
2.命令功效:
netstat用于显现与IP、TCP、UDP和ICMP协定相干的统计数据,一样平常用于查验本机各端口的收集毗连情形。
3.命令参数:
-a或–all显现一切连线中的Socket。
-A<收集范例>或–<收集范例>列出该收集范例连线中的相干地点。
-c或–continuous延续列出收集形态。
-C或–cache显现路由器设置的快失信息。
-e或–extend显现收集其他相干信息。
-F或–fib显现FIB。
-g或–groups显现多重播送功效群组组员名单。
-h或–help在线匡助。
-i或–interfaces显现收集界面信息表单。
-l或–listening显现监控中的服务器的Socket。
-M或–masquerade显现假装的收集连线。
-n或–numeric间接利用IP地点,而欠亨过域名服务器。
-N或–netlink或–symbolic显现收集硬件核心设备的标记毗连称号。
-o或–timers显现计时器。
-p或–programs显现正在利用Socket的程序辨认码和程序称号。
-r或–route显现RoutingTable。
-s或–statistice显现收集事情信息统计表。
-t或–tcp显现TCP传输协定的连线情况。
-u或–udp显现UDP传输协定的连线情况。
-v或–verbose显现指令实行历程。
-V或–version显现版本信息。
-w或–raw显现RAW传输协定的连线情况。
-x或–unix此参数的效果和指定”-Aunix”参数不异。
–ip或–inet此参数的效果和指定”-Ainet”参数不异。
4.利用实例:
实例1:无参数利用
命令:
netstat
输入:
<br>
[root@localhost~]#netstat
ActiveInternetconnections(w/oservers)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp0268192.168.120.204:ssh10.2.0.68:62420ESTABLISHED
udp00192.168.120.204:437110.58.119.119:domainESTABLISHED
ActiveUNIXdomainsockets(w/oservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[]DGRAM1491@/org/kernel/udev/udevd
unix4[]DGRAM7337/dev/log
unix2[]DGRAM708823
unix2[]DGRAM7539
unix3[]STREAMCONNECTED7287
unix3[]STREAMCONNECTED7286
[root@localhost~]#
<br>
申明:
从全体上看,netstat的输入了局能够分为两个部分:
一个是ActiveInternetconnections,称为有源TCP毗连,个中"Recv-Q"和"Send-Q"指的是吸收行列和发送行列。这些数字一样平常都应当是0。假如不是则暗示软件包正在行列中聚积。这类情形只能在十分少的情形见到。
另外一个是ActiveUNIXdomainsockets,称为有源Unix域套接口(和收集套接字一样,可是只能用于本机通讯,功能能够进步一倍)。
Proto显现毗连利用的协定,RefCnt暗示毗连到本套接口上的历程号,Types显现套接口的范例,State显现套接口以后的形态,Path暗示毗连到套接口的别的历程利用的路径名。
套接口范例:
-t:TCP
-u:UDP
-raw:RAW范例
--unix:UNIX域范例
--ax25:AX25范例
--ipx:ipx范例
--netrom:netrom范例
形态申明:
LISTEN:侦听来自远方的TCP端口的毗连哀求
SYN-SENT:再发送毗连哀求后守候婚配的毗连哀求(假如有大批如许的形态包,反省是不是中招了)
SYN-RECEIVED:再收到和发送一个毗连哀求后守候对方对毗连哀求切实其实认(若有大批此形态,估量被flood打击了)
ESTABLISHED:代表一个翻开的毗连
FIN-WAIT-1:守候远程TCP毗连中止哀求,或先前的毗连中止哀求切实其实认
FIN-WAIT-2:从远程TCP守候毗连中止哀求
CLOSE-WAIT:守候从当地用户发来的毗连中止哀求
CLOSING:守候远程TCP对毗连中止切实其实认
LAST-ACK:守候本来的发向远程TCP的毗连中止哀求切实其实认(不是甚么好工具,此项呈现,反省是不是被打击)
TIME-WAIT:守候充足的工夫以确保远程TCP吸收到毗连中止哀求切实其实认
CLOSED:没有任何毗连形态
实例2:列出一切端口
命令:
netstat-a
输入:
<br>
[root@localhost~]#netstat-a
ActiveInternetconnections(serversandestablished)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp00localhost:smux*:*LISTEN
tcp00*:svn*:*LISTEN
tcp00*:ssh*:*LISTEN
tcp0284192.168.120.204:ssh10.2.0.68:62420ESTABLISHED
udp00localhost:syslog*:*
udp00*:snmp*:*
ActiveUNIXdomainsockets(serversandestablished)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[ACC]STREAMLISTENING708833/tmp/ssh-yKnDB15725/agent.15725
unix2[ACC]STREAMLISTENING7296/var/run/audispd_events
unix2[]DGRAM1491@/org/kernel/udev/udevd
unix4[]DGRAM7337/dev/log
unix2[]DGRAM708823
unix2[]DGRAM7539
unix3[]STREAMCONNECTED7287
unix3[]STREAMCONNECTED7286
[root@localhost~]#
<br>
申明:
显现一个一切的无效毗连信息列表,包含已创建的毗连(ESTABLISHED),也包含监听毗连请(LISTENING)的那些毗连。
实例3:显现以后UDP毗连情况
命令:
netstat-nu
输入:
<br>
[root@andy~]#netstat-nu
ActiveInternetconnections(w/oservers)
ProtoRecv-QSend-QLocalAddressForeignAddressState
udp00::ffff:192.168.12:53392::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:56723::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:56480::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:58154::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:44227::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:36954::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:53984::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:57703::ffff:192.168.9.120:10000ESTABLISHED
udp00::ffff:192.168.12:53613::ffff:192.168.9.120:10000ESTABLISHED
[root@andy~]#
<br>
申明:
实例4:显现UDP端标语的利用情形
命令:
netstat-apu
输入:
<br>
[root@andy~]#netstat-apu
ActiveInternetconnections(serversandestablished)
ProtoRecv-QSend-QLocalAddressForeignAddressStatePID/Programname
udp00*:57604*:*28094/java
udp00*:40583*:*21220/java
udp00*:45451*:*14583/java
udp00::ffff:192.168.12:53392::ffff:192.168.9.120:ndmpESTABLISHED19327/java
udp00*:52370*:*15841/java
udp00::ffff:192.168.12:56723::ffff:192.168.9.120:ndmpESTABLISHED15841/java
udp00*:44182*:*31757/java
udp00*:48155*:*5476/java
udp00*:59808*:*17333/java
udp00::ffff:192.168.12:56480::ffff:192.168.9.120:ndmpESTABLISHED28094/java
udp00::ffff:192.168.12:58154::ffff:192.168.9.120:ndmpESTABLISHED15429/java
udp00*:36780*:*10091/java
udp00*:36795*:*24594/java
udp00*:41922*:*20506/java
udp00::ffff:192.168.12:44227::ffff:192.168.9.120:ndmpESTABLISHED17333/java
udp00*:34258*:*8866/java
udp00*:55508*:*11667/java
udp00*:36055*:*12425/java
udp00::ffff:192.168.12:36954::ffff:192.168.9.120:ndmpESTABLISHED16532/java
udp00::ffff:192.168.12:53984::ffff:192.168.9.120:ndmpESTABLISHED20506/java
udp00::ffff:192.168.12:57703::ffff:192.168.9.120:ndmpESTABLISHED31757/java
udp00::ffff:192.168.12:53613::ffff:192.168.9.120:ndmpESTABLISHED3199/java
udp00*:56309*:*15429/java
udp00*:54007*:*16532/java
udp00*:39544*:*3199/java
udp00*:43900*:*19327/java
[root@andy~]#
<br>
申明:
实例5:显现网卡列表
命令:
netstat-i
输入:
<br>
[root@andy~]#netstat-i
KernelInterfacetable
IfaceMTUMetRX-OKRX-ERRRX-DRPRX-OVRTX-OKTX-ERRTX-DRPTX-OVRFlg
eth015000151818887000198928403000BMRU
lo164360107235000107235000LRU
[root@andy~]#
<br>
申明:
实例6:显现组播组的干系
命令:
netstat-g
输入:
<br>
[root@andy~]#netstat-g
IPv6/IPv4GroupMemberships
InterfaceRefCntGroup
------------------------------------------
lo1all-systems.mcast.net
eth01all-systems.mcast.net
lo1ff02::1
eth01ff02::1:ffff:9b0c
eth01ff02::1
[root@andy~]#
<br>
申明:
实例7:显现收集统计信息
命令:
netstat-s
输入:
<br>
[root@localhost~]#netstat-s
Ip:
530999totalpacketsreceived
0forwarded
0incomingpacketsdiscarded
530999incomingpacketsdelivered
8258requestssentout
1droppedbecau搜索引擎优化fmissingroute
Icmp:
90ICMPmessagesreceived
0inputICMPmessagefailed.
ICMPinputhistogram:
destinationunreachable:17
echorequests:1
echoreplies:72
106ICMPmessagessent
0ICMPmessagesfailed
ICMPoutputhistogram:
destinationunreachable:8
echorequest:97
echoreplies:1
IcmpMsg:
InType0:72
InType3:17
InType8:1
OutType0:1
OutType3:8
OutType8:97
Tcp:
8activeconnectionsopenings
15passiveconnectionopenings
8failedconnectionattempts
3connectionresetsreceived
1connectionsestablished
3132segmentsreceived
2617segmentssendout
53segmentsretransmited
0badsegmentsreceived.
252resetssent
Udp:
0packetsreceived
0packetstounknownportreceived.
0packetreceiveerrors
5482packetssent
TcpExt:
1invalidSYNcookiesreceived
1TCPsocketsfinishedtimewaitinfasttimer
57delayedackssent
Quickackmodewasactivated50times
60packetsdirectlyqueuedtorecvmsgprequeue.
68packetsdirectlyreceivedfrombacklog
4399packetsdirectlyreceivedfromprequeue
520packetsheaderpredicted
51packetsheaderpredictedanddirectlyqueuedtouser
1194acknowledgmentsnotcontainingdatareceived
21predictedacknowledgments
0TCPdatalossevents
1timeoutsafterrenofastretransmit
9retransmitsinslowstart
42otherTCPtimeouts
3connectionsabortedduetotimeout
IpExt:
InBcastPkts:527777
<br>
申明:
依照各个协定分离显现其统计数据。假如我们的使用程序(如Web扫瞄器)运转速率对照慢,大概不克不及显现Web页之类的数据,那末我们就能够用本选项来检察一下所显现的信息。我们必要细心检察统计数据的各行,找到堕落的关头字,进而断定成绩地点。
实例8:显现监听的套接口
命令:
netstat-l
输入:
<br>
[root@localhost~]#netstat-l
ActiveInternetconnections(onlyservers)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp00localhost:smux*:*LISTEN
tcp00*:svn*:*LISTEN
tcp00*:ssh*:*LISTEN
udp00localhost:syslog*:*
udp00*:snmp*:*
ActiveUNIXdomainsockets(onlyservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[ACC]STREAMLISTENING708833/tmp/ssh-yKnDB15725/agent.15725
unix2[ACC]STREAMLISTENING7296/var/run/audispd_events
[root@localhost~]#
<br>
申明:
实例9:显现一切已创建的无效毗连
命令:
netstat-n
输入:
<br>
[root@localhost~]#netstat-n
ActiveInternetconnections(w/oservers)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp0268192.168.120.204:2210.2.0.68:62420ESTABLISHED
ActiveUNIXdomainsockets(w/oservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[]DGRAM1491@/org/kernel/udev/udevd
unix4[]DGRAM7337/dev/log
unix2[]DGRAM708823
unix2[]DGRAM7539
unix3[]STREAMCONNECTED7287
unix3[]STREAMCONNECTED7286
[root@localhost~]#
<br>
申明:
实例10:显现关于以太网的统计数据
命令:
netstat-e
输入:
<br>
[root@localhost~]#netstat-e
ActiveInternetconnections(w/oservers)
ProtoRecv-QSend-QLocalAddressForeignAddressStateUserInode
tcp0248192.168.120.204:ssh10.2.0.68:62420ESTABLISHEDroot708795
ActiveUNIXdomainsockets(w/oservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[]DGRAM1491@/org/kernel/udev/udevd
unix4[]DGRAM7337/dev/log
unix2[]DGRAM708823
unix2[]DGRAM7539
unix3[]STREAMCONNECTED7287
unix3[]STREAMCONNECTED7286
[root@localhost~]#
<br>
申明:
用于显现关于以太网的统计数据。它列出的项目包含传送的数据报的总字节数、毛病数、删除数、数据报的数目和播送的数目。这些统计数据既有发送的数据报数目,也有吸收的数据报数目。这个选项能够用来统计一些基础的收集流量)
实例11:显现关于路由表的信息
命令:
netstat-r
输入:
<br>
[root@localhost~]#netstat-r
KernelIProutingtable
DestinationGatewayGenmaskFlagsMSSWindowirttIface
192.168.120.0*255.255.255.0U000eth0
192.168.0.0192.168.120.1255.255.0.0UG000eth0
10.0.0.0192.168.120.1255.0.0.0UG000eth0
default192.168.120.2400.0.0.0UG000eth0
[root@localhost~]#
<br>
申明:
实例12:列出一切tcp端口
命令:
netstat-at
输入:
<br>
[root@localhost~]#netstat-at
ActiveInternetconnections(serversandestablished)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp00localhost:smux*:*LISTEN
tcp00*:svn*:*LISTEN
tcp00*:ssh*:*LISTEN
tcp0284192.168.120.204:ssh10.2.0.68:62420ESTABLISHED
[root@localhost~]#
<br>
申明:
实例13:统计呆板中收集毗连各个形态个数
命令:
netstat-a|awk/^tcp/{++S[$NF]}END{for(ainS)printa,S[a]}
输入:
[root@localhost~]#netstat-a|awk/^tcp/{++S[$NF]}END{for(ainS)printa,S[a]}
ESTABLISHED1
LISTEN3
[root@localhost~]#
申明:
实例14:把形态全都掏出来后利用uniq-c统计后再举行排序
命令:
netstat-nat|awk{print$6}|sort|uniq-c
输入:
<br>
[root@andy~]#netstat-nat|awk{print$6}|sort|uniq-c
14CLOSE_WAIT
1established)
578ESTABLISHED
1Foreign
43LISTEN
5TIME_WAIT
[root@andy~]#netstat-nat|awk{print$6}|sort|uniq-c|sort-rn
576ESTABLISHED
43LISTEN
14CLOSE_WAIT
5TIME_WAIT
1Foreign
1established)
[root@andy~]#
<br>
申明:
不同版本的Linux命令数量不一样,这里笔者把它们中比较重要的和使用频率最多的命令。 |
|