Python教程

python3 scapy 实现ping 功能

本文主要是介绍python3 scapy 实现ping 功能,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import logging
import sys
shuchuliu=sys.stdout #保存标准输出流

logging.getLogger("scapy.runtime").setLevel(logging.ERROR) #防止scapy模块出现错误而生成的日志

from scapy.all import * #导入scapy模块
from  random import randint #随机模块random 调用randint随机整数方法


def  ping_one(host):
    id_ip=randint(1,65535)#随机产生IP ID位
    id_ping=randint(1,65535)#随机产生ping ID位
    seq_ping=randint(1,65535)#随机产生ping序列号位
    packet =IP(dst=host,ttl=1,id=id_ip)/ICMP(id=id_ping,seq=seq_ping)/b'whl' #构造一个数据包
    ping =sr1(packet)#使用ping发送给host中的IP
    with open('2.txt','w+') as  file:
        sys.stdout=file #使用标准输出流
        print("开始使用自定义输出流")
        ping.show()
    sys.stdout=shuchuliu
    print("恢复标准输出流")

if __name__=='__main__':
    ping_one(sys.argv[1])

 

这篇关于python3 scapy 实现ping 功能的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!