from scapy.all import * from scapy.layers.inet import IP,TCP,Ether,UDP,ICMP print(dir(scapy.layers)) print(explore(scapy.layers.l2)) print("=====IP===========") print(ls(IP)) print(ls(TCP)) print(ls(Ether)) print(ls(UDP)) print("==============================")
#构造数据包 from scapy.layers.inet import TCP, IP, UDP, ICMP from scapy.layers.l2 import Ether from scapy.all import * #======构造包====== #3层的包 pkt = IP(src="192.168.56.1",dst="192.168.56.100")/UDP(sport=1880,dport=23) #UDP协议 print(pkt.show()) pkt = IP(src="192.168.56.1",dst="192.168.56.100")/TCP(sport=1880,dport=23) #TCP协议 print(pkt.show()) #2层的包 pkt = Ether(src="01:80:90:80:70:60",dst="ff-ff-ff-ff-ff-ff") print(pkt.show()) #构造HTTP.ICMP的包 pkt = IP(dst="192.168.56.100")/ICMP() # sr(pkt).show() print("============") sr1(pkt).show() print("======summary======") print(ls(pkt)) print(pkt.summary()) #======数据包的存储,读取 pkt1 = IP(src="192.168.56.1",dst="192.168.56.100")/TCP() pkt2 = IP()/ICMP() pkts = [pkt1,pkt2] #保存为test.cap # print(ls(pkt1)) # wrpcap("test.cap",pkts) print("====read====") rd = rdpcap("test.cap") print(rd) print(rd[0].summary()) print(rd[0].show()) print(conf.ifaces) #查看本机所有网卡 print(conf.route) #查看本机所有路由