到达远程主机的路由探测程序的设计摘 要 :本文主要讲述了路由追踪的基本程序设计与实现,并给出了一种基于IP网络的路由追踪命令Tracert,详细分析了实现路由追踪的基本原理,归纳了路由追踪的基本流程。Tracert通过ICMP协议和IP header中TTL(存活时间)利用路由器对数据报存活时间的处理方式来实现路由探测的。首先根据任务书设计好流程图,然后编写程序代码,运行得到Traceroute的命令窗口。提取tracert的输出,再结合现有IP数据库及自建地名- 坐标数据库对路由中各节点IP进行定位,最终实现了动态显示追踪的详细信息和路径。关键词: IP 地址,ICMP 协议,TTL,Tracert 路由追踪1 引 言Internet,是目前世界上最大的计算机网络,更确切的说是网络中的网络,它由遍布全球的几万局域网和数百万台计算机组成,并通过用于异构网络的 TCP/IP 协议进行网间通信。互联网中,信息的传送是通过网中许多段的传输介质和设备从一端到达另一端。每一个连接在 Internet 上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP 地址。通过 Traceroute 我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路劲。当然每次数据包由某一同样的出发点到达某一同样的目的地走的路劲可能会不同,但基本上来说大部分时候所走的路由是相同的。随着 Internet(国际互联网)的进展,越来越多的服务通过网络提供给大众,与此同时,针对互联网的攻击事件也越来越频繁。所谓路由追踪实际上就是在 IP 网络上推断从源到达目的所经过的路由器的 IP 地址,其基本的实现手段都是向目的地发送数据包以猎取经过的路由器的 IP。由于 Internet 上的路由协议是动态的,所以每次形成的数据包从同一个出发点到达目的地的路由可能会不一样但由于路由算法有一定的稳定性,在大部分时侯所走的路由会是相同的。1.1 课程设计目的1.这次课程设计,主要为了加深同学们对计算机网络网络的理解和认识2.了解信息在计算机网络与网络之间的传送和接收3.进一步加深了解网络与网络之间的协议4.理解网络中的 IP 地址以及路由之间的相关命令。1.2 课程设计内容1.已知参数:输入:目的节点 IP 地址或主机名;输出:从控制台屏幕输出 IP 报文由本机出发到达目的主机所经过的路由信息。2.设计要求:通过原始套接字编程,实现 Tracert 的基本功能2.1 初始化 Windows Sockets 网络环境;2.2 解析命令行参数,构造目的端 socket 地址;2.3 定...