ping, tracert, traceroute, netstat命令详解
ping, tracert, traceroute, netstat命令详解
查看ubuntu运行状况的命令
2. ping:检测网络的连通性
例:ping 192.168.0.1
参数:-c 用来指定ping的回应次数
例: ping -c 4 192.168.0.1 指定回应次数为4次
3. traceroute用来分析网络拓扑
格式:traceroute 远程主机IP地址或域名
4. netstat用来查看网络连接状态
不带任何参数,则只显示活动的TCP和UDP端口状态
netstat -a :显示所有的网络连接
netstat -r:检查本几路由表
netstat -s:查看各种网络协议的运行统计信息
5.vmstat输出6个类别:进程、内存、交换区、I/O、系统和CPU
6.uptime输出已经运行时间、当前时间和用户数量,以及1分钟、5分钟和15分钟负载平均值
7.who 查看登录用户总数; whoami查看当前用户
8.top 查看进程,Kill PID 结束进程
ping
ping可以测试计算机名和计算机的 ip 地址,验证与远程计算机的连接,通过将 icmp 回显数据包发送到计算机并侦听回显回复数据包来验证与一台或多台远程计算机的连接,该命令只有在安装了 tcp/ip 协议后才可以使用。
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]] [-w timeout] destination-list
参数
-t ping 指定的计算机直到中断。ctrl+c停止
-a 将地址解析为计算机名。示例(homer-PC 为计算机名):
-l length 发送包含由 length 指定的数据量的 echo 数据包。默认为 32 字节;最大值是 65,527。
-f 在数据包中发送“不要分段”标志。数据包就不会被路由上的网关分段。
-i ttl 将“生存时间”字段设置为 ttl 指定的值。
-v tos 将“服务类型”字段设置为 tos 指定的值。
-r count 在“记录路由”字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。
-s count 指定 count 指定的跃点数的时间戳。
-j computer-list 利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)ip 允许的最大数量为 9。
-k computer-list 利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)ip 允许的最大数量为 9。
-w timeout 指定超时间隔,单位为毫秒。
destination-list 指定要 ping 的远程计算机。
homer@ubuntu:~$ ping www.baidu.com
PING www.baidu.com (119.75.217.56) 56(84) bytes of data.
64 bytes from 119.75.217.56: icmp_req=1 ttl=47 time=52.0 ms
64 bytes from 119.75.217.56: icmp_req=2 ttl=47 time=53.0 ms
64 bytes from 119.75.217.56: icmp_req=3 ttl=47 time=52.1 ms
64 bytes from 119.75.217.56: icmp_req=4 ttl=47 time=53.1 ms
traceroute
互联网中,信息的传送是通过网中许多段的传输介质和设备(路由器,交换机,服务器,网关等等)从一端到达另一端。每一个连接在Internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP地址。通过Traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。
UNIX为 traceroute,Windows为 tracert。
Traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备Traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其IP地址。
在大多数情况下,作为网络工程技术人员或者系统管理员会在UNIX主机系统下,直接执行命令行:
traceroute hostname
而在Windows系统下是执行Tracert的命令:
tracerert hostname
homer@ubuntu:~$ traceroute www.google.com
traceroute to www.google.com (74.125.128.104), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 0.449 ms 0.311 ms 0.330 ms
2 211.103.207.17 (211.103.207.17) 1.685 ms 2.035 ms 2.253 ms
...
22 216.239.43.17 (216.239.43.17) 98.035 ms 216.239.43.19 (216.239.43.19) 97.129 ms 209.85.253.71 (209.85.253.71) 101.158 ms
23 * * *
24 hg-in-f104.1e100.net (74.125.128.104) 99.795 ms 98.241 ms 98.115 ms
参数说明:
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
该诊断实用程序通过向目的地发送具有不同生存时间 (TL) 的 Internet 控制信息协议 (CMP) 回应报文,以确定至目的地的路由。路径上的每个路由器都要在转发该 ICMP 回应报文之前将其 TTL 值至少减 1,因此 TTL 是有效的跳转计数。当报文的 TTL 值减少到 0 时,路由器向源系统发回 ICMP 超时信息。通过发送 TTL 为 1 的第一个回应报文并且在随后的发送中每次将 TTL 值加 1,直到目标响应或达到最大 TTL 值,Tracert 可以确定路由。通过检查中间路由器发发回的 ICMP 超时 (ime Exceeded) 信息,可以确定路由器。注意,有些路由器“安静”地丢弃生存时间 (TLS) 过期的报文并且对 tracert 无效。
参数
-d
指定不对计算机名解析地址。
-h maximum_hops
指定查找目标的跳转的最大数目。
-jcomputer-list
指定在 computer-list 中松散源路由。
-w timeout
等待由 timeout 对每个应答指定的毫秒数。
target_name
目标计算机的名称。
二、什么是Traceroute网关—— Traceroute Gateway?
一般使用Traceroute(或者是Tracert)是基于一台主机的,但是通常您只能知道以手边的主机为源地址到互联网络上任意一台在线的主机的路由连接质量以及数据传输效率的情况,而使用基于WEB的方式,只要一台主机安装了特定的CGI程序,用户就可以通过这台主机运行相关的程序,执行Traceroute的功能。这台主机我们把它叫做Traceroute网关。Traceroute网关可以帮助用户了解网络的物理与逻辑连接的拓扑情况以及数据传输的效率。如果这种网关足够多,我们就可以方便地了解到各主机之间连接的情况了。
三、为什么要使用Traceroute?
1.几乎每一个网上人(尤其是Webmaster)对他们的计算机(或其它设备)与Internet的连接,路由(径),连通时间,速度等都很关心。使用由ChianNetMap组织起来的各地区Webmaster提供的Traceroute网关的服务,将给你一个满意的答案。从你的计算机到任何别的地方,ChinaNetMap(Traceroute)都能提供其间的每个设备(IP地址)及其连通时间。它可以让你画出通过网络的路径。
2.许多公司和单位都设有或正在设立自己的服务器-尤其是Web服务器。一旦有自己的Web服务器,随着网民数量的日益增加(包括潜在的,没法统计的网民),你一定很想知道是否他们都能与你连接。你的ISP如何与一个或多个NAP连接,以及他们的连接效率会直接影响到你的连接质量.
3.在选择ISP,骨干网连接,你站点的主机时,大多数有见识的网民喜欢检查该Site的连接性能及其它是怎样精确的与谁连,连到哪儿。ChinaNetMap(Traceroute)将给你一个完美的答案。
四、Traceroute的功能介绍:
Traceroute最早是由Van Jacobson在1988写出的小程序。当时主要是解决他自己碰到的一些网络的问题。Traceroute是一个正确理解IP网络并了解路由原理的重要工具。他们对负责网络工程技术与系统管理的Webmaster是一个使用方便的程序。
对ISP而言,设立Traceroute网关,将使网络服务提供商帮助用户建立并维持对服务商服务质量的信心。服务质量高的ISP可以通过设立Traceroute网关,使用户了解其与网络连接以及数据传输的效率。当然,基础设施差,服务质量低的ISP是比较害怕提供这种服务。因为,这样用户可以使用这一工具了解服务商目前的网络连接情况。
在一台主机安装了相关的Traceroute的CGI程序后,您可以输入相应的目的主机的IP地址或者名字,就可以得到相关的数据:
如:在美国的主机http://bs.mit.edu:8001/cgi-bin/traceroute上
查询其到中国南京的北极星站点www.lodesoft.com(中国Webmaster联盟的合作伙伴)数据传输的路径。
查询界面为:
Traceroute Hack
--------------------------------------------------------------------------------
可以搜索该索引。请键入要搜索的关键字:
查询结果为:
Traceroute Hack
1 E40-RTR-E40SERVER72-ETHER.MIT.EDU (18.72.0.1) 4 ms 4 ms 4 ms
2 EXTERNAL-RTR-FDDI.MIT.EDU (18.168.0.12) 4 ms 4 ms 4 ms
3 f1-0.cambridge2-br2.bbnplanet.net (192.233.33.6) 4 ms 4 ms 4 ms
4 s11-0-1.cambridge1-br1.bbnplanet.net (4.0.1.201) 8 ms 4 ms 4 ms
5 p1-0.cambridge1-nbr2.bbnplanet.net (4.0.1.45) 4 ms 4 ms 4 ms
6 p4-1.bstnma1-ba1.bbnplanet.net (4.0.2.170) 4 ms 4 ms 4 ms
7 p1-0.bstnma1-ba2.bbnplanet.net (4.24.4.194) 4 ms 8 ms 8 ms
8 p2-1.nyc4-nbr3.bbnplanet.net (4.24.4.238) 8 ms 12 ms 12 ms
9 p1-0.nyc4-nbr2.bbnplanet.net (4.0.5.25) 8 ms 12 ms 8 ms
10 p4-0.sanjose1-nbr2.bbnplanet.net (4.0.5.97) 70 ms 70 ms 70 ms
11 p1-0.sanjose1-nbr1.bbnplanet.net (4.0.5.85) 70 ms 70 ms 70 ms
12 p4-0.paloalto-nbr2.bbnplanet.net (4.0.1.1) 70 ms 74 ms 70 ms
13 p0-0-0.paloalto-cr18.bbnplanet.net (4.0.3.86) 70 ms 74 ms 74 ms
14 h1-0.atteasylink.bbnplanet.net (4.1.142.254) 74 ms 74 ms 78 ms
15 199.37.127.234 (199.37.127.234) 78 ms 74 ms 78 ms
16 205.174.74.170 (205.174.74.170) 230 ms 238 ms 227 ms
17 202.97.9.65 (202.97.9.65) 238 ms 231 ms 223 ms
18 * 202.97.9.49 (202.97.9.49) 234 ms *
19 202.97.10.110 (202.97.10.110) 246 ms 250 ms *
20 202.97.24.178 (202.97.24.178) 234 ms 238 ms 238 ms
21 202.102.24.74 (202.102.24.74) 234 ms 254 ms *
五、Traceroute的命令参数:
Traceroute的用法为: Traceroute [options] <IP-address or domain-name> [data size]
[options]的内容有:
[-n]:显示的地址是用数字表示而不是符号
[-v]:长输出
[-p]:UDP端口设置(缺省为33434)
[-q]:设置TTL测试数目(缺省为3)
[-t]:设置测包的服务类型
[data size]:每次测试包的数据字节长度(缺省为38)
六、Traceroute的工作原理:
Traceroute最简单的基本用法是:traceroute hostname
Traceroute程序的设计是利用ICMP及IP header的TTL(Time To Live)栏位(field)。首先,traceroute送出一个TTL是1的IP datagram(其实,每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间标签)到目的地,当路径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此datagram丢掉,并送回一个「ICMP time exceeded」消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),traceroute 收到这个消息后,便知道这个路由器存在于这个路径上,接着traceroute 再送出另一个TTL是2 的datagram,发现第2 个路由器...... traceroute 每次将送出的datagram的TTL 加1来发现另一个路由器,这个重复的动作一直持续到某个datagram 抵达目的地。当datagram到达目的地后,该主机并不会送回ICMP time exceeded消息,因为它已是目的地了,那么traceroute如何得知目的地到达了呢?
Traceroute在送出UDP datagrams到目的地时,它所选择送达的port number 是一个一般应用程序都不会用的号码(30000 以上),所以当此UDP datagram 到达目的地后该主机会送回一个「ICMP port unreachable」的消息,而当traceroute 收到这个消息时,便知道目的地已经到达了。所以traceroute 在Server端也是没有所谓的Daemon 程式。
Traceroute提取发 ICMP TTL到期消息设备的IP地址并作域名解析。每次,Traceroute都打印出一系列数据,包括所经过的路由设备的域名及 IP地址,三个包每次来回所花时间。
Traceroute face="宋体" 有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP TTL到期消息的响应。然后,Traceroute给TTL记数器加1,继续进行。
*******网络测试常用命令
网络不通,求助于网管时,经常会看到网管检测和处理网络故障,用到一些命令,了解和掌握下面几个命令将会有助于你更快地检测到网络故障所在,从而节省时间,提高效率。
Ping
Ping是测试网络联接状况以及信息包发送和接收状况非常有用的工具,是网络测试最常用的命令。Ping向目标主机(地址)发送一个回送请求数据包,要求目标主机收到请求后给予答复,从而判断网络的响应时间和本机是否与目标主机(地址)联通。
如果执行Ping不成功,则可以预测故障出现在以下几个方面:网线故障,网络适配器配置不正确,IP地址不正确。如果执行Ping成功而网络仍无法使用,那么问题很可能出在网络系统的软件配置方面,Ping成功只能保证本机与目标主机间存在一条连通的物理路径。
命令格式:
ping IP地址或主机名 [-t] [-a] [-n count] [-l size]
参数含义:
-t不停地向目标主机发送数据;
-a 以IP地址格式来显示目标主机的网络地址 ;
-n count 指定要Ping多少次,具体次数由count来指定 ;
-l size 指定发送到目标主机的数据包的大小。
例如当您的机器不能访问Internet,首先您想确认是否是本地局域网的故障
。假定局域网的代理服务器IP地址为202.168.0.1,您可以使用Ping避免202.168.0.1命令查看本机是否和代理服务器联通。又如,测试本机的网卡是否正确安装的常用命令是ping 127.0.0.1。
Tracert
Tracert命令用来显示数据包到达目标主机所经过的路径,并显示到达每个节点的时间。命令功能同Ping类似,但它所获得的信息要比Ping命令详细得多,它把数据包所走的全部路径、节点的IP以及花费的时间都显示出来。该命令比较适用于大型网络。
命令格式:
tracert IP地址或主机名 [-d][-h maximumhops][-j host_list] [-w timeout]
参数含义:
-d 不解析目标主机的名字;
-h maximum_hops 指定搜索到目标地址的最大跳跃数;
-j host_list 按照主机列表中的地址释放源路由;
-w timeout 指定超时时间间隔,程序默认的时间单位是毫秒。
例如大家想要了解自己的计算机与目标主机www.cce.com.cn之间详细的传输路径信息,可以在MS-DOS方式输入tracertwww.ccidnet.com。
如果我们在Tracert命令后面加上一些参数,还可以检测到其他更详细的信息,例如使用参数-d,可以指定程序在跟踪主机的路径信息时,同时也解析目标主机的域名。
Netstat
Netstat命令可以帮助网络管理员了解网络的整体使用情况。它可以显示当前正在活动的网络连接的详细信息,例如显示网络连接、路由表和网络接口信息,可以统计目前总共有哪些网络连接正在运行。
利用命令参数,命令可以显示所有协议的使用状态,这些协议包括TCP协议、UDP协议以及IP协议等,另外还可以选择特定的协议并查看其具体信息,还能显示所有主机的端口号以及当前主机的详细路由信息。
命令格式:
netstat [-r] [-s] [-n] [-a]
参数含义:
-r 显示本机路由表的内容;
-s 显示每个协议的使用状态(包括TCP协议、UDP协议、IP协议);
-n 以数字表格形式显示地址和端口;
-a 显示所有主机的端口号。
Winipcfg
Winipcfg命令以窗口的形式显示IP协议的具体配置信息,命令可以显示网络适配器的物理地址、主机的IP地址、子网掩码以及默认网关等,还可以查看主机名、DNS服务器、节点类型等相关信息。其中网络适配器的物理地址在检测网络错误时非常有用。
命令格式:
winipcfg [/?] [/all]
参数含义:
/all 显示所有的有关IP地址的配置信息;
/batch [file] 将命令结果写入指定文件;
/renew_ all 重试所有网络适配器;
/release_all 释放所有网络适配器;
/renew N 复位网络适配器 N;
/release N 释放网络适配器 N。
在Microsoft的Windows 95及其以后的操作系统中,都可以运行以上命令
*****************祥解IPCONFIG
Ipconfig 细解
Ipconfig是调试计算机网络的常用命令,通常大家使用它显示计算机中网络适配器的IP地址、子网掩码及默认网关。其实这只是Ipconfig的不带参数用法,而它的带参数用法,在网络应用中也是相当不错的。
一、参数说明
1、/all
显示所有网络适配器(网卡、拨号连接等)的完整TCP/IP配置信息。与不带参数的用法相比,它的信息更全更多,如IP是否动态分配、显示网卡的物理地址等。
2、/batch 文件名
将Ipconfig所显示信息以文本方式写入指定文件。此参数可用来备份本机的网络配置。
3、/release_all和/release N
释放全部(或指定)适配器的由 DHCP分配的动态IP 地址。此参数适用于IP地址非静态分配的网卡,通常和下文的renew参数结合使用。
4、ipconfig /renew_all或ipconfig /renew N
为全部(或指定)适配器重新分配IP地址。此参数同样仅适用于IP地址非静态分配的网卡,通常和上文的release参数结合使用。
二、应用实例
1、备份网络设置
ipconfig /batch bak-netcfg
说明:将有关网络配置的信息备份到文件bak-netcfg中。
2、为网卡动态分配新地址
ipconfig /release 1
说明:去除网卡(适配器1)的动态IP地址。
ipconfig /renew 1
说明:为网卡重新动态分配IP地址
DNS:
8.8.8.8 and 8.8.4.4