首頁 > Python教程 > Python應用 > Python教程:實現TCP探測目標服務路由軌跡的原理與方法詳解

法国昂热商学院学费:Python教程:實現TCP探測目標服務路由軌跡的原理與方法詳解

時間:2019-09-15    作者:cakincqm   來源:互聯網

法国昂热国立音乐学院 www.sxrkbx.com.cn 本文實例講述了Python實現TCP探測目標服務路由軌跡的原理與方法。分享給大家供大家參考,具體如下:

一 點睛

在此次實踐中,通過scapy的traceroute()方法實現探測機到目標服務器的路由軌跡,整個過程的原理見下圖,首先通過探測機以SYN方式進行TCP服務掃描,同時啟動tcpdump進行抓包,捕獲掃描過程經過的所有路由點,再通過graph()方法進行路由IP軌?;嬤?,中間調用ASN映射查詢IP地理信息并生成svg流程文檔,最后使用ImageMagick工 具將svg格式轉換成png,流程結束。

二 代碼

# -*- coding: utf-8 -*-
import os,sys,time,subprocess
import warnings,logging
#屏蔽scapy 無用告警信息
warnings.filterwarnings("ignore", category=DeprecationWarning)
#屏蔽??镮Pv6 多余告警
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
from scapy.all import traceroute
#接受輸入的域名或IP
domains = raw_input('Please input one or more IP/domain: ')
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", ASres=None, type="svg")  #生成svg矢量圖形
  time.sleep(1)
  #svg轉png格式
  subprocess.Popen("/usr/bin/convert test.svg test.png", shell=True)
else:
  print "IP/domain number of errors,exit"

三 結果

四 參考

https://github.com/secdev/scapy/issues/1480

希望本文所述對大家Python程序設計有所幫助。

相關推薦
用Python爬取B站5000 條視頻,揭秘為何千萬人為它流淚!
Python教程:如何用xlrd和xlwt庫讀和寫Excel表格?
Python安裝MySQL-python:EnvironmentError的解決辦法
分享:Python2和Python3有那些差異?
Python 的內置對象都藏了哪些小秘密?
實戰干貨!用案例讓你一文搞懂python網絡爬蟲
Python教程:圖像處理??閚dimage用法實例分析
Python教程:代理IP爬蟲的使用方法
Python教程:如何使用scipy??槭迪忠晃砘慫閌糾??
Python:關于內存分配時的那些小秘密分享
python技巧:global關鍵字的用法詳解
Python教程:深入了解python在HDA中的應用
python技巧:SSLerror的requests證書問題解決方法
PyCharm教程:搭建Spark開發環境的幾個步驟
Python開發技巧:openpyxl讀取單元格字體顏色過程解析
Python教程:面向對象之Web靜態服務器
Python教程:如何為終端提供持久性歷史記錄
Python技巧分享:自動登錄淘寶并保存登錄信息的方法
Python數據分析:利用Flask動態展示 Pyecharts 圖表數據方法
python3教程:如何搭建微型的web服務器?
python技巧:xlwt如何設置單元格的自定義背景顏色
如何解決Python字符串和正則表達式中的反斜杠('\')問題?
Python開發技巧:編寫一個簡單登錄功能過程解析
Python編程:postman傳遞當前時間戳實例詳解
Python爬蟲教程:使用beautifulSoup4爬取名言網案例代碼分享
python開發:動態遷移solr數據過程分享
python數據分析:用線性回歸預測股票價格的代碼分析
Python教程:數據分析??閜andas用法詳解
Python3教程:pandas.merge用法詳解
Python爬蟲案例:如何爬取豆瓣電影信息?附代碼實例
python開發:如何編寫簡單端口掃描器?
Django框架教程:Pagination分頁實現代碼實例
python爬蟲實例:貓眼電影和電影天堂數據csv和mysql存儲過程

精彩推薦

熱門教程