1# SPDX-License-Identifier: GPL-2.0-only 2# This file is part of Scapy 3# See https://scapy.net/ for more information 4# Copyright (C) Gabriel Potter 5 6 7# https://github.com/secdev/scapy/issues/1791 8 9from common import * 10 11# Router IP 12dest = conf.route.route("0.0.0.0")[2] 13 14send_tcp = True 15send_icmp = False 16 17pkts = [] 18for i in range(1,50): 19 a = IP(dst=dest) / TCP(flags="S", seq=i, sport=65000, dport=55556) 20 b = IP(dst=dest)/ICMP() 21 if send_tcp: 22 pkts.append(a) 23 if send_icmp: 24 pkts.append(b) 25 26ans, unans = sr(pkts, filter="host {0}".format(dest), inter=0, timeout=1, prebuild=True) 27 28print("scapy version: {}".format(conf.version)) 29 30average = 0 31 32for pkt in ans: 33 sent = pkt[0] 34 received = pkt[1] 35 res = (received.time - sent.sent_time) 36 average += res 37 print("%s %s : %s" % (received.time, sent.sent_time, res)) 38 39print("AVERAGE RESPONSE TIME: %ss" % (average / len(ans))) 40