我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python网络工具供以后使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python网络工具供以后使用

1.DNS解析

#!/usr/bin/envpython

#coding=utf8

'''

数据包格式:

(<IPfrag=0 proto=udp class="lazy" data-src=192.168.1.61dst=202.96.209.5 |<UDPsport=domaindpo

rt=domain|<DNSid=1 qr=0 opcode=QUERY tc=0rd=1 qdcount=1 ancount=0 nscount=0

arcount=0qd=<DNSQRqname='www.qq.com' qtype=Aqclass=IN |> |>>>, <IPversion=

4L ihl=5L tos=0x0len=88 id=53905 flags=DF frag=0L ttl=248 proto=udp chksum=0x4e

b7 class="lazy" data-src=202.96.209.5dst=192.168.1.61 options=[] |<UDPsport=domain dport=domain

len=68 chksum=0x2652 |<DNSid=1 qr=1L opcode=QUERY aa=0L tc=0L rd=1Lra=1L z=0

L rcode=ok qdcount=1ancount=2 nscount=0 arcount=0 qd=<DNSQRqname='www.qq.com.

' qtype=A qclass=IN|> an=<DNSRRrrname='www.qq.com.'type=A rclass=IN ttl=265

rdata='101.226.103.106'|<DNSRRrrname='www.qq.com.' type=Arclass=IN ttl=265 r

data='101.226.129.158'|>> ns=None ar=None |>>>)

'''


from scapy.allimport *


def DnsQuery(sip):

ip_header=IP(class="lazy" data-src=sip,dst="202.96.209.5")

udp_header=UDP(dport=53)

dns_header=DNS(id=1,qr=0,opcode=0,tc=0,rd=1,qdcount=1,ancount=0,nscount=0,arcount=0)#构造标准的DNS数据包

dns_header.qd=DNSQR(qname="www.qq.com",qtype=1,qclass=1)#构造DNS资源记录

packet=ip_header/udp_header/dns_header

ans,unans=sr(packet,timeout=1,verbose=0)

type_dict={1:'A',5:'CNAME'}

#print ans[0]

for s,r in ans:

print "Received_IP:%s"%(r[IP].dst)

print "Query Domain:%s"%(r[DNS].qd.qname)

print "%s\t%s"%("Type","IP(Domain)")

print "-"*30

for i in xrange(15):

try:

print "%s\t%s"%(type_dict[r[DNS].an[i].type],r[DNS].an[i].rdata)

except:

pass

print "*"*30



for x in [61]:

ip="192.168.1."+str(x)

#print ip

DnsQuery(ip)



2.Scan Syn扫描

#!/usr/bin/envpython

#coding=utf8

'''

数据包格式:

(<IPfrag=0 proto=tcp dst=192.168.1.1|<TCPsport=16334 dport=tcpmuxflags=S |

>>,<IPversion=4L ihl=5L tos=0x0 len=40id=19281 flags= frag=0L ttl=255 proto=

tcp chksum=0xe4efclass="lazy" data-src=192.168.1.1 dst=192.168.1.61 options=[] |<TCPsport=tcpmu

x dport=16334 seq=0ack=1 dataofs=5L reserved=0L flags=RA window=0 chksum=0xe471

urgptr=0 |<Paddingload='\x00\x00\x00\x00\x00\x00'|>>>)

'''

from scapy.allimport *


#ans,unans=sr(IP(dst="192.168.1.1")/TCP(dport=[23],flags="S"),timeout=2,verbose=0)

ans,unans=sr(IP(dst="192.168.1.1")/TCP(sport=RandShort(),dport=(1,1024),flags="S"),timeout=2,verbose=0)#发送SYN包

status_dict={18:'open',20:'closed'}

#print ans[0]

for s,r in ans:

sport,flags=r[TCP].sport,status_dict[r[TCP].flags]#获取返回的数据包源端口和响应状态,是ACK+SYN,还是RST+ACK,若是ACK+SYN则是open,否则是closed

if flags!="closed":

print "{0}{1}".format(sport,flags)


3.arp扫描,获取存活主机的Mac

#!/usr/bin/envpython

#coding=utf8

'''

数据包格式

[(<Etherdst=ff:ff:ff:ff:ff:ff type=0x806|<ARPpdst=192.168.1.1 |>>,

<Etherdst=00:0c:29:a4:0c:45 class="lazy" data-src=00:18:b9:00:50:bftype=0x806 |<ARPhwtype=0x1pxype=0x800 hwlen=6 plen=4 op=is-at hwclass="lazy" data-src=00:18:b9:00:50:bf pclass="lazy" data-src=192.168.1.1hwdst=00:0c:29:a4:0c:45 pdst=192.168.1.61 |<Paddingload='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'|>>>)]

'''

from scapy.allimport *


ans,unans=srp(Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst="192.168.1.0/24"),timeout=2,verbose=0)

#print ans[0]#打印接收到的第1个包

for s,r in ans:#递归每一个包(包中包含发送与接收包),s发送包,r接收包

print r[Ether].class="lazy" data-src,r[ARP].pclass="lazy" data-src#打印MAC=>IP


如果想了解更多,请关注我们的公众号
公众号ID:opdevos
扫码关注

gongzhouhao.jpg


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python网络工具供以后使用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python网络工具供以后使用

1.DNS解析#!/usr/bin/envpython#coding=utf8'''数据包格式:(
2023-01-31

linux网络配置工具的使用

本文介绍了RHEL8网络服务和网络配置工具,以及网络防火墙和规则管理工具。NetworkManager网络管理工具NetworkManager提供了RHEL8的网络服务,每一个网络设备都关联一个NetworkMa
2022-06-04

Linux常用网络工具如何使用路由扫描工具mtr

这篇文章主要讲解了“Linux常用网络工具如何使用路由扫描工具mtr”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux常用网络工具如何使用路由扫描工具mtr”吧!mtr在某些方面比tr
2023-06-13

Linux常用网络工具如何使用路由扫描工具traceroute

本篇内容介绍了“Linux常用网络工具如何使用路由扫描工具traceroute”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!路由扫描主要是查
2023-06-13

怎么使用Python-nmap网络扫描和嗅探工具包

这篇文章将为大家详细讲解有关怎么使用Python-nmap网络扫描和嗅探工具包,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。nmap概念NMap,也称为网络映射器,最初是Linux下的网络扫
2023-06-02

Windows网络调优工具TCPOptimizer怎么使用

要使用TCPOptimizer进行Windows网络调优,可以按照以下步骤进行操作:1. 下载和安装TCPOptimizer:在浏览器中搜索"TCPOptimizer"并进入官方网站。从网站上下载适合您的Windows版本的TCPOptim
2023-09-22

Linux常用网络工具之如何使用主机扫描工具fping

本篇内容介绍了“Linux常用网络工具之如何使用主机扫描工具fping”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Linux下有很多强大网
2023-06-13

Linux几种网络配置工具的使用

这篇文章主要介绍“Linux几种网络配置工具的使用”,在日常操作中,相信很多人在Linux几种网络配置工具的使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux几种网络配置工具的使用”的疑惑有所帮助!
2023-06-05

网络安全审计工具Nmap如何使用

网络安全审计工具Nmap如何使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一.软件下载https://nmap.org/download.html二.扫描IPnmap
2023-06-04

Linux常用网络工具之如何使用高级主机扫描工具hping

本篇内容介绍了“Linux常用网络工具之如何使用高级主机扫描工具hping”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!之前介绍了主机扫描工
2023-06-13

Linux 网络状态工具 ss 命令怎么使用

这篇文章跟大家分析一下“Linux 网络状态工具 ss 命令怎么使用”。内容详细易懂,对“Linux 网络状态工具 ss 命令怎么使用”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习
2023-06-28

Linux常用网络工具之如何使用批量主机服务扫描工具nmap

本篇内容主要讲解“Linux常用网络工具之如何使用批量主机服务扫描工具nmap”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux常用网络工具之如何使用批量主机服务扫描工具nmap”吧!Li
2023-06-13

Linux常用网络工具之如何使用批量主机服务扫描工具netcat

这篇文章主要讲解了“Linux常用网络工具之如何使用批量主机服务扫描工具netcat”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux常用网络工具之如何使用批量主机服务扫描工具netc
2023-06-13

如何在CentOS 7中使用nmcli工具管理网络

nmcli是用于控制NetworkManager和报告网络状态的命令行工具。nmcli用于创建、显示、编辑、删除、激活和停用网络连接,以及控制和显示网络设备状态。基本用法
2023-06-05

Python的pywifi无线网络库的具体使用

PythonPyWiFi无线网络库使用指南PyWiFi库允许Python程序员与无线网络交互。本文介绍基本操作,包括:扫描WiFi网络连接到WiFi网络修改网络设置高级功能包括:创建虚拟WiFi网络监听WiFi事件处理WiFi帧安装方法:pipinstallpywifi故障排除:无法扫描网络:确保无线接口已启用。无法连接到网络:检查密码和网络支持。无法修改设置:检查权限和接口支持。
Python的pywifi无线网络库的具体使用
2024-04-02

如何使用Linux系统中nmap网络扫描工具命令

这篇文章主要讲解了“如何使用Linux系统中nmap网络扫描工具命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Linux系统中nmap网络扫描工具命令”吧!1.名称 nmap-网
2023-06-12

怎么使用Python+tkinter实现网站下载工具

今天小编给大家分享一下怎么使用Python+tkinter实现网站下载工具的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。开发
2023-07-05

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录