您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > Netstat命令详解
Netstat命令详解Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。Netstat详细参数列表(winXP)C:\netstat/?显示协议统计信息和当前TCP/IP网络连接。NETSTAT[-a][-b][-e][-n][-o][-pproto][-r][-s][-v][interval]-a显示所有连接和监听端口。-b显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件拥有多个独立组件,并且在这些情况下包含于创建连接或监听端口的组件序列被显示。这种情况下,可执行组件名在底部的[]中,顶部是其调用的组件,等等,直到TCP/IP部分。注意此选项可能需要很长时间,如果没有足够权限可能失败。-e显示以太网统计信息。此选项可以与-s选项组合使用。-n以数字形式显示地址和端口号。-o显示与每个连接相关的所属进程ID。-pproto显示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)C:\netstat/?DisplaysprotocolstatisticsandcurrentTCP/IPnetworkconnections.NETSTAT[-a][-e][-n][-s][-pproto][-r][interval]-aDisplaysallconnectionsandlisteningports.-eDisplaysEthernetstatistics.Thismaybecombinedwiththe-soption.-nDisplaysaddressesandportnumbersinnumericalform.-pprotoShowsconnectionsfortheprotocolspecifiedbyproto;protomaybeTCPorUDP.Ifusedwiththe-soptiontodisplayper-protocolstatistics,protomaybeTCP,UDP,orIP.-rDisplaystheroutingtable.-sDisplaysper-protocolstatistics.Bydefault,statisticsareshownforTCP,UDPandIP;the-poptionmaybeusedtospecifyasubsetofthedefault.intervalRedisplaysselectedstatistics,pausingintervalsecondsbetweeneachdisplay.PressCTRL+Ctostopredisplayingstatistics.Ifomitted,netstatwillprintthecurrentconfigurationinformationonce.(linux)[john11@john~]$netstat/?usage:netstat[-veenNcCF][]-rnetstat{-V|--version|-h|--help}netstat[-vnNcaeol][...]netstat{[-veenNac]-i[]|[-cnNe]-M|-s}[delay]-r,--routedisplayroutingtable-i,--interfaces=[]displayinterfacetable-g,--groupsdisplaymulticastgroupmemberships-s,--statisticsdisplaynetworkingstatistics(likeSNMP)-M,--masqueradedisplaymasqueradedconnections-v,--verbosebeverbose-n,--numericdon'tresolvenames--numeric-hostsdon'tresolvehostnames--numeric-portsdon'tresolveportnames--numeric-usersdon'tresolveusernames-N,--symbolicresolvehardwarenames-e,--extenddisplayother/moreinformation-p,--programsdisplayPID/Programnameforsockets-c,--continuouscontinuouslisting-l,--listeningdisplaylisteningserversockets-a,--all,--listeningdisplayallsockets(default:connected)-o,--timersdisplaytimers-F,--fibdisplayForwardingInformationBase(default)-C,--cachedisplayroutingcacheinsteadofFIB:Nameofinterfacetomonitor/list.={-t|--tcp}{-u|--udp}{-w|--raw}{-x|--unix}--ax25--ipx--netrom=Use'-A'or'--';default:inetListofpossibleaddressfamilies(whichsupportrouting):inet(DARPAInternet)inet6(IPv6)ax25(AMPRAX.25)netrom(AMPRNET/ROM)ipx(NovellIPX)ddp(AppletalkDDP)x25(CCITTX.25)Netstat的一些常用选项netstat-s——本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。netstat-e——本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量。netstat-r——本选项可以显示关于路由表的信息,类似于后面所讲使用routeprint命令时看到的信息。除了显示有效路由外,还显示当前有效的连接。netstat-a——本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接,断开连接(CLOSE_WAIT)或者处于联机等待状态的(TIME_WAIT)等netstat-n——显示所有已建立的有效连接。netstat支持用于显示活动或被动套接字的选项集。选项-t、-u、-w和-x分别表示TCP、UDP、RAW和UNIX套接字连接。如果你另外还提供了一个-a标记,还会显示出等待连接(也就是说处于监听模式)的套接字。这样就可以得到一份服务器清单,当前所有运行于系统中的所有服务器都会列入其中。调用netstat-ta时,输出结果如下:[root@machine1/]$netstat-taActiveInternetconnections(serversandestablished)ProtoRecv-QSend-QLocalAddressForeignAddressStatetcp02210.34.6.89:telnet210.34.6.96:2873ESTABLISHEDtcp00210.34.6.89:1165210.34.6.84:netbios-ssnESTABLISHEDtcp00localhost.localdom:9001localhost.localdom:1162ESTABLISHEDtcp00localhost.localdom:1162localhost.localdom:9001ESTABLISHEDtcp00*:9001*:*LISTENtcp00*:6000*:*LISTENtcp00*:socks*:*LISTENtcp080210.34.6.89:1161210.34.6.10:netbios-ssnCLOSE上面的输出表明部分服务器处于等待接入连接状态。利用-a选项的话,netstat还会显示出所有的套接字。注意根据端口号,可以判断出一条连接是否是外出连接。对呼叫方主机来说,列出的端口号应该一直是一个整数,而对众所周知服务(wellknownservice)端口正在使用中的被呼叫方来说,netstat采用的则是取自/etc/services文件的象征性服务名在随-i标记一起调用时,netstat将显示网络接口的当前配置特性。除此以外,如果调用时还带上-a选项,它还将输出内核中所有接口,并不只是当前配置的接口。netstat-i的输出结果是这样的:[root@machine1/]$netstat-iKernelInterfacetableIfaceMTUMetRX-OKRX-ERRRX-DRPRX-OVRTX-OKTX-ERRTX-DRPTX-OVRFlgeth01500078716500151655000BRUeth1150005208110001986000BRUlo39240194300043000LRUMTU和Met字段表示的是接口的MTU和度量值值;RX和TX这两列表示的是已经准确无误地收发了多少数据包(RX-OK/TX-OK)、产生了多少错误(RX-ERR/TX-ERR)、丢弃了多少包(RX-DRP/TX-DRP),由于误差而遗失了多少包(RX-OVR/TX-OVR);最后一列展示的是为这个接口设置的标记,在利用ifconfig显示接口配置时,这些标记都采用一个字母。它们的说明如下:■B已经设置了一个广播地址。■L该接口是一个回送设备。■M接收所有数据包(混乱模式)。■N避免跟踪。■O在该接口上,禁用ARP。■P这是一个点到点链接。■R接口正在运行。■U接口处于“活动”状态。◆显示路由表在随-r标记一起调用netstat时,将显示内核路由表,就像我们利用route命令一样。产生的输出如下:[root@machine1/]$netstat-nrKernelIProutingtableDestinationGatewayGenmaskFlagsMSSWindowirttIface210.34.6.00.0.0.0255.255.255.128U000eth0192.168.1.00.0.0.0255.255.255.0U000eth1127.0.0.00.0.0.0255.0.0.0U000lo0.0.0.0210.34.6.20.0.0.0UG000eth0-n选项令netstat以点分四段式的形式输出IP地址,而不是象
本文标题:Netstat命令详解
链接地址:https://www.777doc.com/doc-3987129 .html