买的君子兰送了生根粉肥料怎么栽配置

3.3.2 实践:实现TCP探测目标服务路由轨迹
本文所属图书&>&
Praise 本书赞誉
市面上介绍互动的、面向对象的Python编程语言的书有很多,其强大而又灵活的特性,使其成为很多企图通过工具来实现工作(半)自动化的运营同学的首选。更难得的是,本书作者以其在腾讯游戏运&&
在此次实践中,通过scapy的traceroute()方法实现探测机到目标服务器的路由轨迹,整个过程的原理见图3-14,首先通过探测机以SYN方式进行TCP服务扫描,同时启动tcpdump进行抓包,捕获扫描过程经过的所有路由点,再通过graph()方法进行路由IP轨迹绘制,中间调用ASN映射查询IP地理信息并生成svg流程文档,最后使用ImageMagick工具将svg格式转换成png,流程结束。
本次实践通过traceroute()方法实现路由的跟踪,跟踪结果动态生成图片格式。功能实现如下:
【/home/test/scapy/simple1.py】
# -*- coding: utf-8 -*-
import os,sys,time,subprocess
import warnings,logging
warnings.filterwarnings(&ignore&, category=DeprecationWarning) #屏蔽scapy无用告警信息
logging.getLogger(&scapy.runtime&).setLevel(logging.ERROR) #屏蔽模块IPv6多余告警
from scapy.all import traceroute
domains = raw_input('Please input one or more IP/domain: ') #接受输入的域名或IP
target = &domains.split(' ')
dport = [80] & &#扫描的端口列表
if len(target) &= 1 and target[0]!='':
& & res,unans = traceroute(target,dport=dport,retry=-2) #启动路由跟踪
& & res.graph(target=&& test.svg&) & &#生成svg矢量图形
& & time.sleep(1)
& & subprocess.Popen(&/usr/bin/convert test.svg test.png&, shell=True) #svg转png格式
& & print &IP/domain number of errors,exit&
代码运行结果见图3-15,&-&表示路由节点无回应或超时;&11&表示扫描的指定服务无回应;&SA&表示扫描的指定服务有回应,一般是最后一个主机IP。
生成的路由轨迹图见图3-16(仅局部),&-&将使用unk*单元代替,重点路由节点将通过ASN获取所处的运营商或IDC位置,如IP&202.102.69.210&为&CHINANET-JS-AS-AP AS Number for CHINANET jiangsu province backbone,CN&意思为该IP所处中国电信江苏省骨干网。
通过路由轨迹图,我们可以非常清晰地看到探测点到目标节点的路由走向,运营商时常会做路由节点分流,不排除会造成选择的路由线路不是最优的,该视图可以帮助我们了解到这个信息。另外IE8以上及chrome都已支持SVG格式文件,可以直接浏览,无需转换成png或其他格式,可以轻松整合到我们的运营平台当中。
3.3.1节scapy方法参数说明参考http://www.secdev.org/projects/scapy/doc/usage.html。
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。◆◆欢迎进入网路岗技术博客!技术问题请咨询:400 630 6112
记住本站网址:/blog/
当前位置 :
> Traceroute的路由追踪实现与原理
Traceroute的路由追踪实现与原理
摘要:traceroute 有使用两种:使用ICMP的和使用UDP的。Microsoft使用ICMP,所以win95上发出的traceRT应使用的是ICMP,但我没有用 sniffer查过;其它包括unix和cisco router都使用UDP. ICMP traceroute: 使用ICMP Echo Request, Echo Reply and TTL-expired. 源发出 ICMP Equest,第一个request的TTL为1,第二个request的TTL为2,以后依此递增直至第30个;中间的router送回ICMP TTL-expired ( ICMP type 11)...
traceroute 有使用两种:使用ICMP的和使用UDP的。Microsoft使用ICMP,所以win95上发出的traceRT应使用的是ICMP,但我没有用 sniffer查过;其它包括unix和cisco router都使用UDP. ICMP traceroute: 使用ICMP Echo Request, Echo Reply and TTL-expired. 源发出 ICMP Equest,第一个request的TTL为1,第二个request的TTL为2,以后依此递增直至第30个;中间的router送回ICMP TTL-expired ( ICMP type 11)通知source,(packet同时因TTL超时而被drop),由此source知晓一路上经过的每一个router;最后的destination送回ICMP Echo Reply。 所以中间任何一个router上如果封了ICMP Echo Request,traceroute就不能工作;如果封了type 11 (TTL-expired), 中间的router全看不到,但能看到packet到达了最后的destination;如果封了ICMP Echo Reply,中间的全能看到,最后的destination看不到。 UDP traceroute: ========== 使用ICMP TTL-expired(type 11), ICMP port unreachable(type 3, code 3), UDP port &32768. source发出UDP packet, source port使用随机的任何大于32768的高段port#, destination port #从33434开始每送个probe依此递增,直至33434+29,(cisco router上使用extended-traceroute命令可以修改这个起始的33434 port #),同时TTL从1开始依此递增,直至1+29=30(最多送30个probe)。中间的router送回 ICMP TTL-expired,使得source得知了中间的每一个router,最后的destination送回TTL-expired 和ICMP port unreachable (因为任何主机上都没有应用使用UDP port# &32768这样的高段port#)。 所以中间某处封掉UDP port&32768回导致traceroute不工作;封掉TTL超时会使source看不到中间的router(有的router根本不支持回送TTL超时);封掉type3, code3可能看不到destination. 另外需要知道的是,由于回送TTL-expired的信息需要CPU生成一个packet,必须打断 CPU,为保证其它工作的正常进行,ciscorouter每隔一秒才处理traceroute,所以在source 上你可能看到中间一路 * * *,但却看得到最后的destination.这时你应知道这是中间的router CPU太忙或者中间路由器不回送TTL-expired包的原因,不必大惊小怪的。上次看ping 命令的时候,有提到过,当ping -R的时候,可以将前9个途经的路由器都记录在内...但对于多过9个的就无法记录了,这时候就需要用到traceroute,而它实现的原理是怎么样的呢???首先,发送一份ttl为1的数据报文给目的主机,当到第一个路由器的时候,路由器会将它的ttl值减1下去,并且丢掉该包,然后发一个表示超时的包回来。那样我们就获得了经过的第一个路由器的地址和时间(往返时间/2得到单程时间);然后,发一个ttl为2的包,那么就会停在途中的第2个路由器那里,同样也得到第2个路由器的时间。如此一直到到达目的地,那么,怎么知道到了目的地呢?traceroute是发的一个udp包,端口在30000以上,一般来说没有程序在用,所以会由对方返回一个&端口不可达&的icmp消息回来。也就是说,traceroute如果收到的包是icmp的超时包,它就认为这是中间一个路由器,如果收到端口不可达的消息,则认为是达到了目的,由目的主机发出的。天缘调试路由的时候,曾经用traceroute跟踪失败的消息...就是到了某个路由器就没有回应了...这说明什么呢?以前不明白,这里知道了,原来是那个路由器的管理员将该路由器设置为禁止发送icmp消息(汗,一般都是禁止接受icmp,或者禁止发送-8的消息;这个居然是禁止所有icmp...看来还是比较安全的。)
网络知识 / &&&&&&
&&( 10:9:45)&&( 13:6:17)&&( 17:11:13)&&( 17:7:54)&&( 14:58:50)&&( 14:56:6)&&( 14:28:40)&&( 16:17:29)&&( 16:9:16)&&( 14:55:38)}

我要回帖

更多关于 买的君子兰送了生根粉肥料怎么栽 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信