Traceroute用法
 
网友:适兕 发布于: 2006.08.24 08:14 (共有条评论) 查看评论 | 我要评论
 
什么是Traceroute?  
               Internet,
即国际互联网,是目前世界上最大的计算机网络,更确切地说是网络的网络。它由遍布全球的几万局域网和数百万台计算机组成,并通过用于异构网络的
TCP/IP协议进行网间通信。互联网中,信息的传送是通过网中许多段的传输介质和设备(路由器,交换机,服务器,网关等等)从一端到达另一端。每一个连
接在Internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP地址。通过Traceroute我们可以知道信息从你的计算
机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能
会不一样,但基本上来说大部分时候所走的路由是相同的。UNIX系统中,我们称之为Traceroute,MS Windows中为Tracert。
Traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备Traceroute要测3次。输出结果中包
括每次测试的时间(ms)和设备的名称(如有的话)及其IP地址。
    
              在大多数情况下,作为网络工程技术人员或者系统管理员会在UNIX主机系统下,直接执行命令行:
    
                     Traceroute hostname
    
              而在Windows系统下是执行Tracert的命令:
    
               Tracerert hostname
    
              比如在北京地区使用windows NT 主机(已经与北京163建立了点对点的连接后)
    
              使用NT系统中的Tracert命令:(用户可用:开始->运行,输入"command"    
              调出command窗口使用此命令)
   
              
C:\>tracert www.yahoo.com
    
              Tracing route to www.yahoo.com     
              [204.71.200.75]
    
              over a maximum of 30 hops:
    
              
    
              1 161 ms 150 ms 160 ms 202.99.38.67
    
              2 151 ms 160 ms 160 ms 202.99.38.65
    
              3 151 ms 160 ms 150 ms 202.97.16.170
    
              4 151 ms 150 ms 150 ms 202.97.17.90
    
              5 151 ms 150 ms 150 ms 202.97.10.5
    
              6 151 ms 150 ms 150 ms 202.97.9.9
    
              7 761 ms 761 ms 752 ms border7-serial3-0-0.Sacramento.cw.net     
              [204.70.122.69]
    
              8 751 ms 751 ms * core2-fddi-0.Sacramento.cw.net [204.70.164.49]
    
              9 762 ms 771 ms 751 ms border8-fddi-0.Sacramento.cw.net     
              [204.70.164.67]
    
              10 721 ms * 741 ms globalcenter.Sacramento.cw.net [204.70.123.6]
    
              11 * 761 ms 751 ms pos4-2-155M.cr2.SNV.globalcenter.net     
              [206.132.150.237]
    
              12 771 ms * 771 ms pos1-0-2488M.hr8.SNV.globalcenter.net     
              [206.132.254.41]
    
              13 731 ms 741 ms 751 ms bas1r-ge3-0-hr8.snv.yahoo.com     
              [208.178.103.62]
    
              14 781 ms 771 ms 781 ms www10.yahoo.com [204.71.200.75]
    
              
    
              Trace complete.
    
              您目前正在ONLINE状态的话,可以直接尝试一下。
    
              参数说明:
    
              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]     
               [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     
              有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP     
              TTL到期消息的响应。然后,Traceroute给TTL记数器加1,继续进行。

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/6303/showart_159630.html

网络路径查询traceroute的更多相关文章

  1. 网络路径排查工具使用/原理浅析(MTR、traceroute、tracepath、windows下besttrace)

    在请求网络资源获取缓慢或者有丢包过程中.经常会使用到网络路径探测工具.linux 下最常用的有mtr.traceroute.tracepath 等. 你是否有一点疑惑,路径探测的原理到底是如何完成的, ...

  2. .net 已知图片的网络路径,通过浏览器下载图片

    没什么技术含量,主要留给自己查找方便: 如题,知道图片的完整网络路径的情况下,在浏览器中下载图片的实现: 下面这个方法实现的是把图片读取为byte数组: private byte[] GetImage ...

  3. 无任何网络提供程序接受指定的网络路径(系统服务里没有workstation服务)

    今天同事访问公司服务器时,提示“无任何网络提供程序接受指定的网络路径”,网络ping正常,把防火墙关掉,再次尝试问题如故. 于是上网搜索: 1.服务停止:一般有workstation,server,c ...

  4. Android(java)学习笔记204:自定义SmartImageView(继承自ImageView,扩展功能为自动获取网络路径图片)

    1.有时候Android系统配置的UI控件,不能满足我们的需求,Android开发做到了一定程度,多少都会用到自定义控件,一方面是更加灵活,另一方面在大数据量的情况下自定义控件的效率比写布局文件更高. ...

  5. 通过网络路径获取的图片 btye 图片流互转

    楼主有一个需要用户用的网站要上传图片,图片不保存到网站,而是要专门存放到一个图片服务器上面,于是需要通过byte的形式来传输 之前写的一个本地图片流转于byte互转 后来发现通过网络路径获取的图片这个 ...

  6. android高德地图网络路径实现自定义marker并点击弹出自定义窗口

    android中使用地图的地方随处可见,今天记录一下网络路径生成自定义marker,点击标记弹出自定义的窗口(在这里使用的是高德地图) 在这里我们使用Grilde去加载网络图片,因为这个简直太方便了! ...

  7. swift 加载 本地html 和 网络路径

    先上代码: xcode 9.4  ios 11.4 import UIKit import WebKit class RootViewController: UIViewController, WKN ...

  8. iis访问网络路径映射问题(UNC share)

    最近在做一个功能,涉及到nas网络磁盘文件的保存和访问,在服务器上将对应的路径映射为Z盘,结果在iis上部署网站直接访问该路径,报无法找到该路径的错误. 用的是.net core开发,在vs直接启动程 ...

  9. 【转载】WIN7访问共享:0x80070035 找不到网络路径解决方法

    转载:http://blog.chinaunix.net/uid-12372814-id-3518571.html 昨天刚装WIN7系统,今天早上准备访问服务器安装些软件,结果出现网络错误,提示Win ...

随机推荐

  1. bzoj 3190 赛车 半平面交

    直接写的裸的半平面交,已经有点背不过模板了... 这题卡精度,要用long double ,esp设1e-20... #include<iostream> #include<cstd ...

  2. bzoj2757【scoi2012】Blinker的仰慕者

    题目描述 Blinker 有非常多的仰慕者,他给每个仰慕者一个正整数编号.而且这些编号还隐藏着特殊的意义,即编号的各位数字之积表示这名仰慕者对Blinker的重要度. 现在Blinker想知道编号介于 ...

  3. D. Vitya and Strange Lesson Codeforces Round #430 (Div. 2)

    http://codeforces.com/contest/842/problem/D 树 二进制(路径,每个节点代表一位) #include <cstdio> #include < ...

  4. HDU 6230

    Palindrome Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Tota ...

  5. poj 3685 二分

    Matrix Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 7415   Accepted: 2197 Descriptio ...

  6. servlet拦截器

    servlet拦截未登录的用户请求 java代码: package com.gavin.filter; import java.io.IOException; import javax.servlet ...

  7. 一篇很棒的 MySQL 触发器学习教程

    一.触发器概念 触发器(trigger):监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动 ...

  8. nginx配置详情(总结)

    Nginx简介 Nginx是一款开源代码的高性能HTTP服务器和反向代理服务器,同时支持IMAP/POP3/SMTP代理服务 Nginx工作原理 Nginx由内核和模块组成,完成工作是通过查找配置文件 ...

  9. core EFCore 开始尝试

    准备工作: 工程:core + console 引用包: Install-Package Microsoft.EntityFrameworkCore Install-Package Microsoft ...

  10. 出了一个js的题。

    class test { set xx(v){ console.log('i am set'); this.__ok = v; } get xx(){ console.log('i am get'); ...