diff --git a/CHANGES b/CHANGES index d9cf414a2..c7875f5f6 100644 --- a/CHANGES +++ b/CHANGES @@ -29,6 +29,8 @@ DayOfTheWeek, Month DD, YYYY / The Tcpdump Group Add --print-sampling to print every Nth packet instead of all. Print the supported time stamp types (-J) to stdout instead of stderr. Print the list of data link types (-L) to stdout instead of stderr. + Add --overview to print an overview of the contents of the capture + Add --no-print to suppress printing of individual packets (useful with --overview) Source code: Use %zu when printing a sizeof to squelch compiler warnings Remove unused missing/snprintf.c. diff --git a/ethertype.h b/ethertype.h index 8f8acff04..e4e0c4e2c 100644 --- a/ethertype.h +++ b/ethertype.h @@ -216,4 +216,11 @@ #define ETHERTYPE_ARISTA 0xd28b /* Arista Networks vendor specific EtherType */ #endif +/* + * Length of an Ethernet header; note that some compilers may pad + * "struct ether_header" to a multiple of 4 bytes, for example, so + * "sizeof (struct ether_header)" may not give the right answer. + */ +#define ETHER_HDRLEN 14 + extern const struct tok ethertype_values[]; diff --git a/netdissect.h b/netdissect.h index d953a464e..5a94b2efe 100644 --- a/netdissect.h +++ b/netdissect.h @@ -238,6 +238,9 @@ struct netdissect_options { const u_char *ndo_packetp; const u_char *ndo_snapend; + int ndo_dlt; /* datalink type */ + int ndo_length_type; /* */ + /* stack of saved packet boundary and buffer information */ struct netdissect_saved_packet_info *ndo_packet_info_stack; diff --git a/print-ether.c b/print-ether.c index b1865d179..85a38ab93 100644 --- a/print-ether.c +++ b/print-ether.c @@ -42,13 +42,6 @@ struct ether_header { nd_uint16_t ether_length_type; }; -/* - * Length of an Ethernet header; note that some compilers may pad - * "struct ether_header" to a multiple of 4 bytes, for example, so - * "sizeof (struct ether_header)" may not give the right answer. - */ -#define ETHER_HDRLEN 14 - const struct tok ethertype_values[] = { { ETHERTYPE_IP, "IPv4" }, { ETHERTYPE_MPLS, "MPLS unicast" }, @@ -200,6 +193,7 @@ ether_common_print(netdissect_options *ndo, const u_char *p, u_int length, */ recurse: length_type = GET_BE_U_2(p); + ndo->ndo_length_type = length_type; length -= 2; caplen -= 2; @@ -237,6 +231,7 @@ ether_common_print(netdissect_options *ndo, const u_char *p, u_int length, * Keep processing type/length fields. */ length_type = GET_BE_U_2(p); + ndo->ndo_length_type = length_type; ND_ICHECK_U(caplen, <, 2); length -= 2; @@ -281,6 +276,8 @@ ether_common_print(netdissect_options *ndo, const u_char *p, u_int length, } length_type = GET_BE_U_2(p + 2); + ndo->ndo_length_type = length_type; + p += 4; length -= 4; caplen -= 4; diff --git a/tcpdump.c b/tcpdump.c index 08e038963..e4aca60c0 100644 --- a/tcpdump.c +++ b/tcpdump.c @@ -167,6 +167,8 @@ The Regents of the University of California. All rights reserved.\n"; #include "fptype.h" +#include "ethertype.h" + #ifndef PATH_MAX #define PATH_MAX 1024 #endif @@ -221,6 +223,8 @@ static int Jflag; /* list available time stamp types */ static int jflag = -1; /* packet time stamp source */ #endif static int lflag; /* line-buffered output */ +static int overviewFlag = 0; /* overview mode */ +static int noPrintFlag = 0; /* don't print packets */ static int pflag; /* don't go promiscuous */ #ifdef HAVE_PCAP_SETDIRECTION static int Qflag = -1; /* restrict captured packet by send/receive direction */ @@ -240,6 +244,29 @@ static int count_mode; static int infodelay; static int infoprint; +#define MAX_ADDR_LEN 100 + +struct endpoint_stats { + char src[MAX_ADDR_LEN]; + char dst[MAX_ADDR_LEN]; + u_int64_t kilobytes; + u_int64_t bytes; + u_int64_t packets; +}; + +#define MAX_ENDPOINT_PAIRS 1000 + +static struct endpoint_stats endpoint_overview_stats[MAX_ENDPOINT_PAIRS]; +static int endpoint_overview_stats_len = 0; +static struct timeval capture_start_time; +static struct timeval capture_end_time; + +/* Column headers for overview option */ +#define COLUMN_HEADER_SRC "SRC" +#define COLUMN_HEADER_DST "DST" +#define COLUMN_HEADER_PACKETS "PACKETS" +#define COLUMN_HEADER_BYTES "BYTES" + char *program_name; /* Forwards */ @@ -253,6 +280,11 @@ static void print_packet(u_char *, const struct pcap_pkthdr *, const u_char *); static void dump_packet_and_trunc(u_char *, const struct pcap_pkthdr *, const u_char *); static void dump_packet(u_char *, const struct pcap_pkthdr *, const u_char *); +static void add_to_endpoint_statistics(const char* src, const char* dst, int packet_bytes); +static void print_with_spaces(const char* str, size_t padding_len, int prefix_spaces); +static size_t count_digits(u_int64_t n); +static void print_endpoint_statistics(void); + #ifdef SIGNAL_REQ_INFO static void requestinfo(int); #endif @@ -270,6 +302,7 @@ static void flushpcap(int); static void info(int); static u_int packets_captured; +static u_int64_t bytes_captured; #ifdef HAVE_PCAP_FINDALLDEVS static const struct tok status_flags[] = { @@ -692,6 +725,8 @@ show_remote_devices_and_exit(void) #define OPTION_FP_TYPE 135 #define OPTION_COUNT 136 #define OPTION_PRINT_SAMPLING 137 +#define OPTION_OVERVIEW 138 +#define OPTION_NO_PRINT 139 static const struct option longopts[] = { #if defined(HAVE_PCAP_CREATE) || defined(_WIN32) @@ -741,6 +776,8 @@ static const struct option longopts[] = { { "print", no_argument, NULL, OPTION_PRINT }, { "print-sampling", required_argument, NULL, OPTION_PRINT_SAMPLING }, { "version", no_argument, NULL, OPTION_VERSION }, + { "overview", no_argument, NULL, OPTION_OVERVIEW }, + { "no-print", no_argument, NULL, OPTION_NO_PRINT }, { NULL, 0, NULL, 0 } }; @@ -1466,6 +1503,14 @@ open_interface(const char *device, netdissect_options *ndo, char *ebuf) return (pc); } +static int +no_printf(netdissect_options *ndo, const char *fmt, ...) +{ + ndo++; + fmt++; + return (0); +} + int main(int argc, char **argv) { @@ -1474,7 +1519,6 @@ main(int argc, char **argv) char *cp, *infile, *cmdbuf, *device, *RFileName, *VFileName, *WFileName; char *endp; pcap_handler callback; - int dlt; const char *dlt_name; struct bpf_program fcode; #ifndef _WIN32 @@ -1525,7 +1569,7 @@ main(int argc, char **argv) VFileName = NULL; VFile = NULL; WFileName = NULL; - dlt = -1; + ndo->ndo_dlt = -1; if ((cp = strrchr(argv[0], PATH_SEPARATOR)) != NULL) ndo->program_name = program_name = cp + 1; else @@ -2013,6 +2057,14 @@ main(int argc, char **argv) count_mode = 1; break; + case OPTION_OVERVIEW: + overviewFlag = 1; + break; + + case OPTION_NO_PRINT: + noPrintFlag = 1; + break; + default: print_usage(stderr); exit_tcpdump(S_ERR_HOST_PROGRAM); @@ -2142,18 +2194,18 @@ main(int argc, char **argv) error("unable to limit pcap descriptor"); } #endif - dlt = pcap_datalink(pd); - dlt_name = pcap_datalink_val_to_name(dlt); + ndo->ndo_dlt = pcap_datalink(pd); + dlt_name = pcap_datalink_val_to_name(ndo->ndo_dlt); fprintf(stderr, "reading from file %s", RFileName); if (dlt_name == NULL) { - fprintf(stderr, ", link-type %u", dlt); + fprintf(stderr, ", link-type %u", ndo->ndo_dlt); } else { fprintf(stderr, ", link-type %s (%s)", dlt_name, - pcap_datalink_val_to_description(dlt)); + pcap_datalink_val_to_description(ndo->ndo_dlt)); } fprintf(stderr, ", snapshot length %d\n", pcap_snapshot(pd)); #ifdef DLT_LINUX_SLL2 - if (dlt == DLT_LINUX_SLL2) + if (ndo->ndo_dlt == DLT_LINUX_SLL2) fprintf(stderr, "Warning: interface names might be incorrect\n"); #endif } else if (dflag && !device) { @@ -2522,8 +2574,8 @@ DIAG_ON_ASSIGN_ENUM pcap_userdata = (u_char *)&dumpinfo; } if (print) { - dlt = pcap_datalink(pd); - ndo->ndo_if_printer = get_if_printer(dlt); + ndo->ndo_dlt = pcap_datalink(pd); + ndo->ndo_if_printer = get_if_printer(ndo->ndo_dlt); dumpinfo.ndo = ndo; } else dumpinfo.ndo = NULL; @@ -2533,8 +2585,14 @@ DIAG_ON_ASSIGN_ENUM pcap_dump_flush(pdd); #endif } else { - dlt = pcap_datalink(pd); - ndo->ndo_if_printer = get_if_printer(dlt); + ndo->ndo_dlt = pcap_datalink(pd); + ndo->ndo_if_printer = get_if_printer(ndo->ndo_dlt); + + /* If no printing of packets is desired, override the printf function to suppress printing packets */ + if (noPrintFlag) { + ndo->ndo_printf = no_printf; + } + callback = print_packet; pcap_userdata = (u_char *)ndo; } @@ -2600,14 +2658,14 @@ DIAG_ON_ASSIGN_ENUM program_name); } else (void)fprintf(stderr, "%s: ", program_name); - dlt = pcap_datalink(pd); - dlt_name = pcap_datalink_val_to_name(dlt); + ndo->ndo_dlt = pcap_datalink(pd); + dlt_name = pcap_datalink_val_to_name(ndo->ndo_dlt); (void)fprintf(stderr, "listening on %s", device); if (dlt_name == NULL) { - (void)fprintf(stderr, ", link-type %u", dlt); + (void)fprintf(stderr, ", link-type %u", ndo->ndo_dlt); } else { (void)fprintf(stderr, ", link-type %s (%s)", dlt_name, - pcap_datalink_val_to_description(dlt)); + pcap_datalink_val_to_description(ndo->ndo_dlt)); } (void)fprintf(stderr, ", snapshot length %d bytes\n", ndo->ndo_snaplen); (void)fflush(stderr); @@ -2681,7 +2739,7 @@ DIAG_ON_ASSIGN_ENUM } #endif new_dlt = pcap_datalink(pd); - if (new_dlt != dlt) { + if (new_dlt != ndo->ndo_dlt) { /* * The new file has a different * link-layer header type from the @@ -2709,8 +2767,8 @@ DIAG_ON_ASSIGN_ENUM * and recompile the filter with * the new DLT. */ - dlt = new_dlt; - ndo->ndo_if_printer = get_if_printer(dlt); + ndo->ndo_dlt = new_dlt; + ndo->ndo_if_printer = get_if_printer(ndo->ndo_dlt); if (pcap_compile(pd, &fcode, cmdbuf, Oflag, netmask) < 0) error("%s", pcap_geterr(pd)); } @@ -2724,14 +2782,14 @@ DIAG_ON_ASSIGN_ENUM /* * Report the new file. */ - dlt_name = pcap_datalink_val_to_name(dlt); + dlt_name = pcap_datalink_val_to_name(ndo->ndo_dlt); fprintf(stderr, "reading from file %s", RFileName); if (dlt_name == NULL) { - fprintf(stderr, ", link-type %u", dlt); + fprintf(stderr, ", link-type %u", ndo->ndo_dlt); } else { fprintf(stderr, ", link-type %s (%s)", dlt_name, - pcap_datalink_val_to_description(dlt)); + pcap_datalink_val_to_description(ndo->ndo_dlt)); } fprintf(stderr, ", snapshot length %d\n", pcap_snapshot(pd)); } @@ -2743,6 +2801,11 @@ DIAG_ON_ASSIGN_ENUM fprintf(stdout, "%u packet%s\n", packets_captured, PLURAL_SUFFIX(packets_captured)); + /* If overview mode was specified, print the overview */ + if (overviewFlag) { + print_endpoint_statistics(); + } + free(cmdbuf); pcap_freecode(&fcode); exit_tcpdump(status == -1 ? S_ERR_HOST_PROGRAM : S_SUCCESS); @@ -3185,11 +3248,157 @@ print_packet(u_char *user, const struct pcap_pkthdr *h, const u_char *sp) if (!count_mode) pretty_print_packet((netdissect_options *)user, h, sp, packets_captured); + /* If overview mode was selected on the command line, store the statistics + between each src/dst pair for each ethernet packet. */ + if (overviewFlag && h && sp && user) { + const struct ip* ipPacket; + netdissect_options* ndo; + + ndo = (netdissect_options*)user; + + if (ndo->ndo_dlt == DLT_EN10MB && ndo->ndo_length_type == 0x800) { + + if (capture_start_time.tv_sec == 0) + capture_start_time.tv_sec = h->ts.tv_sec; + + capture_end_time.tv_sec = h->ts.tv_sec; + + ipPacket = (const struct ip*)(sp + ndo->ndo_ll_hdr_len); + + add_to_endpoint_statistics( + ipaddr_string(ndo, ipPacket->ip_src), + ipaddr_string(ndo, ipPacket->ip_dst), + h->len); + } + } + --infodelay; if (infoprint) info(0); } +static void add_to_endpoint_statistics(const char* src, const char* dst, int packet_bytes) +{ + struct endpoint_stats* stats = NULL; + + /* Add to the total bytes */ + bytes_captured += packet_bytes; + + /* Lookup src and dst strings in overview_stats. */ + for (int i = 0; i < endpoint_overview_stats_len && stats == NULL; i++) { + if (!strcmp(endpoint_overview_stats[i].src, src) && !strcmp(endpoint_overview_stats[i].dst, dst)) { + stats = &endpoint_overview_stats[i]; + } + } + + /* Add a new array element if needed. */ + if (!stats && endpoint_overview_stats_len < MAX_ENDPOINT_PAIRS) { + endpoint_overview_stats_len++; + stats = &endpoint_overview_stats[endpoint_overview_stats_len - 1]; + strncpy(stats->src, src, MAX_ADDR_LEN); + stats->src[MAX_ADDR_LEN - 1] = 0; + strncpy(stats->dst, dst, MAX_ADDR_LEN); + stats->dst[MAX_ADDR_LEN - 1] = 0; + } + + /* Add to the stats. */ + if (stats) { + stats->packets++; + stats->bytes += packet_bytes; + } +} + +void print_with_spaces(const char* str, size_t padding_len, int prefix_spaces_flag) +{ + size_t spaces = 0; + + if (!prefix_spaces_flag) printf("%s", str); + + spaces = padding_len - strlen(str); + while (spaces) { + printf(" "); + spaces--; + } + + if (prefix_spaces_flag) printf("%s", str); +} + +size_t count_digits(u_int64_t n) +{ + size_t count = 0; + + if (n == 0) + return 1; + while (n != 0) { + n = n / 10; + ++count; + } + return count; +} + +void print_endpoint_statistics(void) +{ + struct endpoint_stats* stats = NULL; + size_t max_src_len = strlen(COLUMN_HEADER_SRC); + size_t max_dst_len = strlen(COLUMN_HEADER_DST); + size_t max_packets_len = strlen(COLUMN_HEADER_PACKETS); + size_t max_bytes_len = strlen(COLUMN_HEADER_BYTES); + size_t len = 0; + char str[MAX_ADDR_LEN]; + + struct timeval delta_time; + double hours; + + delta_time.tv_sec = capture_end_time.tv_sec - capture_start_time.tv_sec; + hours = (double)delta_time.tv_sec / 3600.0; + + printf("\n"); + printf("OVERVIEW\n"); + printf("--------\n"); + printf("packets_captured: %d\n", packets_captured); + printf("bytes_captured: %ld\n", bytes_captured); + printf("seconds: %ld\n", delta_time.tv_sec); + printf("hours: %2.2f\n", hours); + printf("\n"); + + for (int i = 0; i < endpoint_overview_stats_len; i++) { + stats = &endpoint_overview_stats[i]; + if ((len = strlen(stats->src)) > max_src_len) { + max_src_len = len; + } + if ((len = strlen(stats->dst)) > max_dst_len) { + max_dst_len = len; + } + if ((len = count_digits(stats->packets)) > max_packets_len) { + max_packets_len = len; + } + if ((len = count_digits(stats->bytes)) > max_bytes_len) { + max_bytes_len = len; + } + } + + print_with_spaces(COLUMN_HEADER_SRC, max_src_len + 1, 0); + print_with_spaces(COLUMN_HEADER_DST, max_dst_len + 1, 0); + print_with_spaces(COLUMN_HEADER_PACKETS, max_packets_len + 1, 1); + print_with_spaces(COLUMN_HEADER_BYTES, max_bytes_len + 1, 1); + printf("\n"); + + for (int i = 0; i < endpoint_overview_stats_len; i++) { + stats = &endpoint_overview_stats[i]; + + print_with_spaces(stats->src, max_src_len + 1, 0); + print_with_spaces(stats->dst, max_dst_len + 1, 0); + + sprintf(str, "%ld", stats->packets); + print_with_spaces(str, max_packets_len + 1, 1); + + sprintf(str, "%ld", stats->bytes); + print_with_spaces(str, max_bytes_len + 1, 1); + + printf("\n"); + } +} + #ifdef SIGNAL_REQ_INFO static void requestinfo(int signo _U_) @@ -3310,4 +3519,6 @@ print_usage(FILE *f) #endif (void)fprintf(f, "\t\t[ -z postrotate-command ] [ -Z user ] [ expression ]\n"); + (void)fprintf(f, +"\t\t[ --overview ] [ --no-print ]\n"); } diff --git a/tests/TESTLIST b/tests/TESTLIST index ecc733044..bb5ec8df2 100644 --- a/tests/TESTLIST +++ b/tests/TESTLIST @@ -909,3 +909,9 @@ quic_handshake quic_handshake.pcap quic_handshake.out -v quic_handshake_truncated quic_handshake_truncated.pcap quic_handshake_truncated.out -v quic_retry quic_retry.pcap quic_retry.out -v gquic gquic.pcap gquic.out -v + +# Overview tests +overview1 overview.pcap overview1.out --overview --no-print +overview2 overview.pcap overview2.out --overview -t +overview3 overview.pcap overview3.out --no-print + diff --git a/tests/overview.pcap b/tests/overview.pcap new file mode 100644 index 000000000..8c59d8b34 Binary files /dev/null and b/tests/overview.pcap differ diff --git a/tests/overview1.out b/tests/overview1.out new file mode 100644 index 000000000..60bfeb249 --- /dev/null +++ b/tests/overview1.out @@ -0,0 +1,69 @@ + +OVERVIEW +-------- +packets_captured: 331 +bytes_captured: 131903 +seconds: 7 +hours: 0.00 + +SRC DST PACKETS BYTES +192.168.1.73 239.255.133.141 7 1101 +192.168.1.74 239.255.133.141 69 8665 +192.168.1.112 34.107.221.82 1 66 +192.168.1.71 239.255.133.141 9 774 +34.107.221.82 192.168.1.112 1 66 +192.168.1.75 239.255.133.141 13 1615 +192.168.1.112 34.160.144.191 2 178 +34.160.144.191 192.168.1.112 2 178 +192.168.1.142 224.0.0.251 2 140 +192.168.1.116 224.0.0.251 8 712 +192.168.1.112 192.168.100.1 2 200 +192.168.1.76 239.255.133.141 8 688 +192.168.1.108 224.0.0.251 9 843 +192.168.100.1 192.168.1.112 2 261 +192.168.1.110 224.0.0.251 8 712 +192.168.1.71 239.255.255.250 9 3309 +192.168.1.76 239.255.255.250 9 3309 +192.168.1.70 239.255.133.141 5 430 +192.168.1.72 239.255.133.141 6 1022 +192.168.1.75 239.255.255.250 9 3309 +192.168.1.122 255.255.255.255 2 120 +192.168.1.104 224.0.0.251 7 535 +192.168.1.71 224.0.0.251 1 80 +192.168.1.100 224.0.0.251 1 394 +192.168.1.74 224.0.0.251 1 80 +192.168.1.124 224.0.0.251 1 394 +192.168.1.119 224.0.0.251 1 402 +192.168.1.75 224.0.0.251 1 80 +192.168.1.76 224.0.0.251 1 80 +192.168.1.73 224.0.0.251 1 80 +192.168.1.70 224.0.0.251 1 80 +192.168.1.16 192.168.1.255 3 189 +192.168.1.72 224.0.0.251 1 80 +192.168.1.71 224.0.0.147 1 236 +192.168.1.112 72.21.91.29 5 330 +72.21.91.29 192.168.1.112 5 330 +192.168.1.76 224.0.0.147 1 236 +192.168.1.74 224.0.0.147 1 236 +192.168.1.112 104.76.214.179 1 66 +192.168.1.112 23.34.242.11 1 66 +192.168.1.112 18.67.79.46 1 66 +192.168.1.73 224.0.0.147 1 235 +104.76.214.179 192.168.1.112 1 66 +23.34.242.11 192.168.1.112 1 66 +18.67.79.46 192.168.1.112 1 66 +192.168.1.75 224.0.0.147 1 236 +192.168.1.112 75.75.77.2 8 1173 +192.168.1.112 208.80.154.224 27 2415 +75.75.77.2 192.168.1.112 9 1121 +208.80.154.224 192.168.1.112 24 90030 +192.168.1.112 142.251.163.94 1 66 +142.251.163.94 192.168.1.112 1 66 +192.168.1.16 239.255.255.250 1 143 +192.168.1.70 224.0.0.147 1 236 +192.168.1.70 239.255.255.250 9 3309 +192.168.1.72 224.0.0.147 1 235 +192.168.1.112 104.18.32.68 5 270 +104.18.32.68 192.168.1.112 5 300 +192.168.1.112 172.253.115.94 1 66 +172.253.115.94 192.168.1.112 1 66 diff --git a/tests/overview2.out b/tests/overview2.out new file mode 100644 index 000000000..a74e62c30 --- /dev/null +++ b/tests/overview2.out @@ -0,0 +1,406 @@ + 1 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 2 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 3 IP 192.168.1.112.55708 > 34.107.221.82.80: Flags [.], ack 1828165485, win 501, options [nop,nop,TS val 3851194350 ecr 2581379145], length 0 + 4 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 5 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 6 IP 34.107.221.82.80 > 192.168.1.112.55708: Flags [.], ack 1, win 265, options [nop,nop,TS val 2581389385 ecr 3851163631], length 0 + 7 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 8 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 9 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 10 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 11 IP 192.168.1.112.38402 > 34.160.144.191.443: Flags [P.], seq 3702547014:3702547060, ack 3091258539, win 501, options [nop,nop,TS val 3657904794 ecr 2566982231], length 46 + 12 IP 34.160.144.191.443 > 192.168.1.112.38402: Flags [.], ack 46, win 269, options [nop,nop,TS val 2567040436 ecr 3657904794], length 0 + 13 IP 34.160.144.191.443 > 192.168.1.112.38402: Flags [P.], seq 1:47, ack 46, win 269, options [nop,nop,TS val 2567040436 ecr 3657904794], length 46 + 14 IP 192.168.1.112.38402 > 34.160.144.191.443: Flags [.], ack 47, win 501, options [nop,nop,TS val 3657904866 ecr 2567040436], length 0 + 15 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 16 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 17 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 18 IP 192.168.1.142.5353 > 224.0.0.251.5353: 0 A (QM)? ADM1.local. (28) + 19 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 20 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 21 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 22 IP 192.168.1.112.36334 > 192.168.100.1.53: 15418+ [1au] AAAA? connectivity-check.ubuntu.com. (58) + 23 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 24 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 25 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 26 IP 192.168.100.1.53 > 192.168.1.112.36334: 15418 0/1/1 (119) + 27 IP 192.168.1.112.53524 > 192.168.100.1.53: 64076+ [1au] AAAA? connectivity-check.ubuntu.com. (58) + 28 IP 192.168.100.1.53 > 192.168.1.112.53524: 64076 0/0/1 (58) + 29 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 30 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 31 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 32 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 33 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 34 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 35 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 36 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 37 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 38 IP 192.168.1.74.4777 > 239.255.133.141.4777: UDP, length 537 + 39 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 40 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 364 + 41 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 364 + 42 IP 192.168.1.70.329 > 239.255.133.141.329: UDP, length 44 + 43 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 44 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 311 + 45 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 311 + 46 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 302 + 47 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 302 + 48 a4:13:4e:8c:64:20 > 01:01:c1:00:00:00, ethertype Unknown (0x9003), length 60: + 0x0000: 0100 eaa1 8667 a413 4e8c 6420 0100 0300 .....g..N.d..... + 0x0010: 0cf4 1f54 95b4 f26f bcd2 e8d0 a100 6793 ...T...o......g. + 0x0020: 4e28 75a5 0000 0000 0000 0000 0000 N(u........... + 49 IP 192.168.1.72.329 > 239.255.133.141.329: UDP, length 44 + 50 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 51 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 364 + 52 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 364 + 53 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 54 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 311 + 55 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 311 + 56 ARP, Request who-has 192.168.1.1 (ff:ff:ff:ff:ff:ff) tell 192.168.1.73, length 46 + 57 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 364 + 58 IP 192.168.1.122.41100 > 255.255.255.255.41100: UDP, length 11 + 59 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 302 + 60 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 302 + 61 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 311 + 62 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 63 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 64 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 364 + 65 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 364 + 66 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 302 + 67 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? Android.local. (31) + 68 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 AAAA (QU)? Android.local. (31) + 69 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/2 (Cache flush) A 192.168.1.108 (89) + 70 IP6 fe80::ff9d:7f92:1bcc:f5c0.5353 > ff02::fb.5353: 0*- [0q] 1/0/2 (Cache flush) A 192.168.1.108 (89) + 71 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? npP1x0025ED1D30B4.local. (41) + 72 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? npP1x0025ED1D7DB5.local. (41) + 73 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? npP1x0025ED1D8033.local. (41) + 74 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? nuvo.local. (28) + 75 IP 192.168.1.104.5353 > 224.0.0.251.5353: 0 A (QU)? nuvo.local. (28) + 76 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 311 + 77 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 311 + 78 IP 192.168.1.71.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.71 (38) + 79 IP 192.168.1.100.5353 > 224.0.0.251.5353: 0*- [0q] 5/0/0 (Cache flush) TXT "zoneTitle=Office" "buildVersion=" "friendlyVersion=Development build" "hwRevision=0" "model=P10" "MAC=00:25:ED:1D:30:B4" "updatePort=2847" "udpHttpPort=80" "serialNumber=", PTR v1-nvp1x0025ED1D30B4-dev0025ed1e4e0b-KT7OPjcb._nuvokeypad._tcp.local., (Cache flush) SRV npP1x0025ED1D30B4.local.:4747 0 0, (Cache flush) A 192.168.1.100, PTR _nuvokeypad._tcp.local. (352) + 80 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 81 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 64 + 82 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 83 IP 192.168.1.74.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.74 (38) + 84 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 85 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 86 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 87 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 364 + 88 IP 192.168.1.124.5353 > 224.0.0.251.5353: 0*- [0q] 5/0/0 (Cache flush) TXT "zoneTitle=Gym" "buildVersion=3c9e1cd2" "friendlyVersion=v2.2" "hwRevision=0" "model=P10" "MAC=00:25:ED:1D:80:33" "updatePort=2847" "udpHttpPort=80" "serialNumber=16162615", PTR v1-nvp1x0025ED1D8033-dev0025ed224e8c-hfpsWOo5._nuvokeypad._tcp.local., (Cache flush) SRV npP1x0025ED1D8033.local.:4747 0 0, (Cache flush) A 192.168.1.124, PTR _nuvokeypad._tcp.local. (352) + 89 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 90 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 91 IP 192.168.1.119.5353 > 224.0.0.251.5353: 0*- [0q] 5/0/0 (Cache flush) TXT "zoneTitle=Family Room" "buildVersion=3c9e1cd2" "friendlyVersion=v2.2" "hwRevision=0" "model=P10" "MAC=00:25:ED:1D:7D:B5" "updatePort=2847" "udpHttpPort=80" "serialNumber=16162612", PTR v1-nvp1x0025ED1D7DB5-dev0025ed1dcee8-eY5zugM7._nuvokeypad._tcp.local., (Cache flush) SRV npP1x0025ED1D7DB5.local.:4747 0 0, (Cache flush) A 192.168.1.119, PTR _nuvokeypad._tcp.local. (360) + 92 IP 192.168.1.75.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.75 (38) + 93 IP 192.168.1.76.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.76 (38) + 94 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 95 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 96 IP 192.168.1.73.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.73 (38) + 97 IP 192.168.1.70.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.70 (38) + 98 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 99 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 100 IP 192.168.1.16.46537 > 192.168.1.255.32414: UDP, length 21 + 101 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 102 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 103 IP 192.168.1.71.1900 > 239.255.255.250.1900: UDP, length 302 + 104 IP 192.168.1.76.1900 > 239.255.255.250.1900: UDP, length 302 + 105 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 106 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 107 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 108 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 109 STP 802.1s, Rapid STP, CIST Flags [Proposal, Learn, Forward, Agreement], length 102 + 110 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 311 + 111 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 112 IP 192.168.1.72.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 A 192.168.1.72 (38) + 113 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 114 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 115 IP 192.168.1.72.4777 > 239.255.133.141.4777: UDP, length 550 + 116 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 117 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 118 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 302 + 119 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 120 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 121 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 122 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 364 + 123 IP 192.168.1.71.40699 > 224.0.0.147.7401: UDP, length 194 + 124 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 311 + 125 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 126 IP 192.168.1.70.329 > 239.255.133.141.329: UDP, length 44 + 127 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 128 IP 192.168.1.75.1900 > 239.255.255.250.1900: UDP, length 302 + 129 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 130 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 131 IP 192.168.1.142.5353 > 224.0.0.251.5353: 0 A (QM)? ADM1.local. (28) + 132 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 133 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 134 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 135 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 136 IP 192.168.1.110.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.110 (47) + 137 IP 192.168.1.108.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.108 (47) + 138 IP 192.168.1.116.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 192.168.1.116 (47) + 139 IP 192.168.1.112.57648 > 72.21.91.29.80: Flags [.], ack 417025706, win 501, options [nop,nop,TS val 3563746208 ecr 2163093160], length 0 + 140 IP 192.168.1.112.57652 > 72.21.91.29.80: Flags [.], ack 835664479, win 501, options [nop,nop,TS val 3563746208 ecr 2416336260], length 0 + 141 IP 192.168.1.112.57660 > 72.21.91.29.80: Flags [.], ack 1396080866, win 501, options [nop,nop,TS val 3563746208 ecr 2163093160], length 0 + 142 IP 192.168.1.112.57662 > 72.21.91.29.80: Flags [.], ack 3374925911, win 501, options [nop,nop,TS val 3563746208 ecr 752039257], length 0 + 143 IP 72.21.91.29.80 > 192.168.1.112.57652: Flags [.], ack 1, win 131, options [nop,nop,TS val 2416346496 ecr 3563714312], length 0 + 144 IP 72.21.91.29.80 > 192.168.1.112.57648: Flags [.], ack 1, win 131, options [nop,nop,TS val 2163103395 ecr 3563714166], length 0 + 145 IP 72.21.91.29.80 > 192.168.1.112.57660: Flags [.], ack 1, win 131, options [nop,nop,TS val 2163103395 ecr 3563714162], length 0 + 146 IP 72.21.91.29.80 > 192.168.1.112.57662: Flags [.], ack 1, win 131, options [nop,nop,TS val 752049492 ecr 3563715869], length 0 + 147 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 148 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 149 IP 192.168.1.70.329 > 239.255.133.141.329: UDP, length 44 + 150 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 151 IP 192.168.1.76.55110 > 224.0.0.147.7401: UDP, length 194 + 152 IP 192.168.1.74.60464 > 224.0.0.147.7401: UDP, length 194 + 153 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 154 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 155 IP 192.168.1.112.48010 > 104.76.214.179.80: Flags [.], ack 2214160544, win 501, options [nop,nop,TS val 1209221338 ecr 2379647056], length 0 + 156 IP 192.168.1.112.53836 > 23.34.242.11.80: Flags [.], ack 2274783087, win 501, options [nop,nop,TS val 1860881977 ecr 281514817], length 0 + 157 IP 192.168.1.112.49706 > 18.67.79.46.80: Flags [.], ack 3496136908, win 501, options [nop,nop,TS val 3279530410 ecr 3843919618], length 0 + 158 IP 192.168.1.73.55278 > 224.0.0.147.7401: UDP, length 193 + 159 IP 104.76.214.179.80 > 192.168.1.112.48010: Flags [.], ack 1, win 501, options [nop,nop,TS val 2379657284 ecr 1209160126], length 0 + 160 IP 23.34.242.11.80 > 192.168.1.112.53836: Flags [.], ack 1, win 501, options [nop,nop,TS val 281525050 ecr 1860820777], length 0 + 161 IP 18.67.79.46.80 > 192.168.1.112.49706: Flags [.], ack 1, win 131, options [nop,nop,TS val 3843929850 ecr 3279438459], length 0 + 162 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 163 IP 192.168.1.73.4777 > 239.255.133.141.4777: UDP, length 543 + 164 IP 192.168.1.72.329 > 239.255.133.141.329: UDP, length 44 + 165 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 166 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 167 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 168 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 169 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 170 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 171 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 172 IP 192.168.1.75.53575 > 224.0.0.147.7401: UDP, length 194 + 173 IP 192.168.1.75.4777 > 239.255.133.141.4777: UDP, length 541 + 174 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 175 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 176 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 1652810799:1652810855, ack 2639829560, win 501, options [nop,nop,TS val 1817537674 ecr 2793912606], length 56 + 177 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 56:215, ack 1, win 501, options [nop,nop,TS val 1817537674 ecr 2793912606], length 159 + 178 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 215:271, ack 1, win 501, options [nop,nop,TS val 1817537674 ecr 2793912606], length 56 + 179 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 271:430, ack 1, win 501, options [nop,nop,TS val 1817537674 ecr 2793912606], length 159 + 180 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 430:486, ack 1, win 501, options [nop,nop,TS val 1817537676 ecr 2793912606], length 56 + 181 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [P.], seq 486:645, ack 1, win 501, options [nop,nop,TS val 1817537677 ecr 2793912606], length 159 + 182 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [P.], seq 1444687706:1444687816, ack 4288968344, win 4603, options [nop,nop,TS val 445851059 ecr 3689694683], length 110 + 183 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [.], ack 215, win 39096, options [nop,nop,TS val 2793918619 ecr 1817537674], length 0 + 184 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [.], ack 430, win 41992, options [nop,nop,TS val 2793918619 ecr 1817537674], length 0 + 185 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [.], ack 645, win 44888, options [nop,nop,TS val 2793918619 ecr 1817537676], length 0 + 186 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 1:22, ack 645, win 49232, options [nop,nop,TS val 2793918620 ecr 1817537676], length 21 + 187 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 22:158, ack 645, win 49232, options [nop,nop,TS val 2793918620 ecr 1817537676], length 136 + 188 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 158:196, ack 645, win 49956, options [nop,nop,TS val 2793918620 ecr 1817537676], length 38 + 189 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [.], ack 196, win 501, options [nop,nop,TS val 1817537701 ecr 2793918620], length 0 + 190 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 196:325, ack 645, win 49956, options [nop,nop,TS val 2793918620 ecr 1817537676], length 129 + 191 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 325:364, ack 645, win 50680, options [nop,nop,TS val 2793918620 ecr 1817537676], length 39 + 192 IP 75.75.77.2.443 > 192.168.1.112.48176: Flags [P.], seq 364:528, ack 645, win 50680, options [nop,nop,TS val 2793918621 ecr 1817537676], length 164 + 193 IP 192.168.1.112.48176 > 75.75.77.2.443: Flags [.], ack 528, win 501, options [nop,nop,TS val 1817537703 ecr 2793918620], length 0 + 194 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 1:2897, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 2896 + 195 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 2897, win 4648, options [nop,nop,TS val 445851097 ecr 3689722463], length 0 + 196 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 2897:8689, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 5792 + 197 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 8689, win 4739, options [nop,nop,TS val 445851098 ecr 3689722463], length 0 + 198 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 18729:25969, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 7240 + 199 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 8689, win 4852, options [nop,nop,TS val 445851098 ecr 3689722463,nop,nop,sack 1 {18729:25969}], length 0 + 200 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 25969:30313, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 4344 + 201 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 8689, win 4920, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:30313}], length 0 + 202 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 8689:11585, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 2896 + 203 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 11585, win 4965, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:30313}], length 0 + 204 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 30313:31761, ack 110, win 83, options [nop,nop,TS val 3689722464 ecr 445851059], length 1448 + 205 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 11585, win 4987, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:31761}], length 0 + 206 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 11585:13033, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 1448 + 207 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 13033, win 5010, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:31761}], length 0 + 208 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 31761:33209, ack 110, win 83, options [nop,nop,TS val 3689722464 ecr 445851059], length 1448 + 209 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 13033, win 5033, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:33209}], length 0 + 210 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 13033:14481, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 1448 + 211 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 14481, win 5055, options [nop,nop,TS val 445851099 ecr 3689722463,nop,nop,sack 1 {18729:33209}], length 0 + 212 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 14481:15833, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 1352 + 213 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 15833, win 5078, options [nop,nop,TS val 445851100 ecr 3689722463,nop,nop,sack 1 {18729:33209}], length 0 + 214 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 15833:17281, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 1448 + 215 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 17281, win 5101, options [nop,nop,TS val 445851100 ecr 3689722463,nop,nop,sack 1 {18729:33209}], length 0 + 216 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 33209:34776, ack 110, win 83, options [nop,nop,TS val 3689722464 ecr 445851059], length 1567 + 217 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 17281, win 5125, options [nop,nop,TS val 445851100 ecr 3689722463,nop,nop,sack 1 {18729:34776}], length 0 + 218 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 17281:18729, ack 110, win 83, options [nop,nop,TS val 3689722463 ecr 445851059], length 1448 + 219 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 34776, win 5148, options [nop,nop,TS val 445851100 ecr 3689722463], length 0 + 220 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 8689:15833, ack 110, win 83, options [nop,nop,TS val 3689722498 ecr 445851098], length 7144 + 221 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 34776, win 5148, options [nop,nop,TS val 445851131 ecr 3689722463,nop,nop,sack 1 {8689:15833}], length 0 + 222 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 15833:18729, ack 110, win 83, options [nop,nop,TS val 3689722503 ecr 445851099], length 2896 + 223 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 34776, win 5148, options [nop,nop,TS val 445851136 ecr 3689722463,nop,nop,sack 1 {15833:18729}], length 0 + 224 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 225 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 64 + 226 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 227 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [P.], seq 110:375, ack 34776, win 5148, options [nop,nop,TS val 445851220 ecr 3689722463], length 265 + 228 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 229 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 230 IP 192.168.1.112.59906 > 142.251.163.94.80: Flags [.], ack 2934425610, win 501, options [nop,nop,TS val 1097686862 ecr 3564558500], length 0 + 231 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 34776:36300, ack 375, win 83, options [nop,nop,TS val 3689722621 ecr 445851220], length 1524 + 232 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 36300, win 5172, options [nop,nop,TS val 445851253 ecr 3689722621], length 0 + 233 IP 142.251.163.94.80 > 192.168.1.112.59906: Flags [.], ack 1, win 286, options [nop,nop,TS val 3564568743 ecr 1097615412], length 0 + 234 STP 802.1s, Rapid STP, CIST Flags [Proposal, Learn, Forward, Agreement], length 102 + 235 IP 192.168.1.16.48381 > 239.255.255.250.1900: UDP, length 101 + 236 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [P.], seq 375:489, ack 36300, win 5172, options [nop,nop,TS val 445851341 ecr 3689722621], length 114 + 237 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 36300:47884, ack 489, win 83, options [nop,nop,TS val 3689722742 ecr 445851341], length 11584 + 238 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 47884, win 5353, options [nop,nop,TS val 445851375 ecr 3689722742], length 0 + 239 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 47884:52171, ack 489, win 83, options [nop,nop,TS val 3689722742 ecr 445851341], length 4287 + 240 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 52171, win 5419, options [nop,nop,TS val 445851376 ecr 3689722742], length 0 + 241 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 52171:59411, ack 489, win 83, options [nop,nop,TS val 3689722742 ecr 445851341], length 7240 + 242 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 59411, win 5464, options [nop,nop,TS val 445851376 ecr 3689722742], length 0 + 243 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 59411:60859, ack 489, win 83, options [nop,nop,TS val 3689722743 ecr 445851341], length 1448 + 244 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 60859, win 5455, options [nop,nop,TS val 445851376 ecr 3689722743], length 0 + 245 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 60859:66651, ack 489, win 83, options [nop,nop,TS val 3689722743 ecr 445851341], length 5792 + 246 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 66651, win 5495, options [nop,nop,TS val 445851377 ecr 3689722743], length 0 + 247 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 66651:69547, ack 489, win 83, options [nop,nop,TS val 3689722744 ecr 445851341], length 2896 + 248 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 69547, win 5479, options [nop,nop,TS val 445851377 ecr 3689722744], length 0 + 249 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [.], seq 69547:73891, ack 489, win 83, options [nop,nop,TS val 3689722744 ecr 445851341], length 4344 + 250 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 73891, win 5502, options [nop,nop,TS val 445851378 ecr 3689722744], length 0 + 251 IP 208.80.154.224.443 > 192.168.1.112.57350: Flags [P.], seq 73891:78407, ack 489, win 83, options [nop,nop,TS val 3689722745 ecr 445851341], length 4516 + 252 IP 192.168.1.112.57350 > 208.80.154.224.443: Flags [.], ack 78407, win 5474, options [nop,nop,TS val 445851378 ecr 3689722745], length 0 + 253 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 254 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 255 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 256 IP 192.168.1.70.60233 > 224.0.0.147.7401: UDP, length 194 + 257 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 258 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 259 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 260 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 261 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 262 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 263 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 264 IP 192.168.1.16.43110 > 192.168.1.255.32412: UDP, length 21 + 265 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 364 + 266 IP 192.168.1.70.329 > 239.255.133.141.329: UDP, length 44 + 267 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 268 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 269 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 270 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 311 + 271 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 272 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 273 IP 192.168.1.72.329 > 239.255.133.141.329: UDP, length 44 + 274 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 275 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 302 + 276 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 364 + 277 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 311 + 278 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 279 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 280 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 302 + 281 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 282 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 283 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 284 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 285 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 364 + 286 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 311 + 287 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 288 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 289 IP 192.168.1.70.1900 > 239.255.255.250.1900: UDP, length 302 + 290 IP 192.168.1.71.329 > 239.255.133.141.329: UDP, length 44 + 291 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 292 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 293 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 64 + 294 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 295 IP 192.168.1.76.329 > 239.255.133.141.329: UDP, length 44 + 296 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 297 STP 802.1s, Rapid STP, CIST Flags [Proposal, Learn, Forward, Agreement], length 102 + 298 IP 192.168.1.73.329 > 239.255.133.141.329: UDP, length 44 + 299 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 300 IP 192.168.1.72.35120 > 224.0.0.147.7401: UDP, length 193 + 301 IP 192.168.1.70.329 > 239.255.133.141.329: UDP, length 44 + 302 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 303 a4:13:4e:8c:64:20 > 01:01:c1:00:00:00, ethertype Unknown (0x9003), length 60: + 0x0000: 0100 dea3 8667 a413 4e8c 6420 0100 0300 .....g..N.d..... + 0x0010: 372f 5923 d290 96a5 0d3c 84fc 8040 918d 7/Y#.....<...@.. + 0x0020: 4f5d 1289 0000 0000 0000 0000 0000 O]............ + 304 ARP, Request who-has 192.168.1.222 tell 192.168.1.122, length 46 + 305 IP 192.168.1.112.38960 > 104.18.32.68.80: Flags [.], ack 2777470008, win 501, length 0 + 306 IP 192.168.1.112.38942 > 104.18.32.68.80: Flags [.], ack 988698847, win 501, length 0 + 307 IP 192.168.1.112.38946 > 104.18.32.68.80: Flags [.], ack 953550486, win 501, length 0 + 308 IP 192.168.1.112.38938 > 104.18.32.68.80: Flags [.], ack 1554158039, win 501, length 0 + 309 IP 192.168.1.112.38922 > 104.18.32.68.80: Flags [.], ack 3732908445, win 501, length 0 + 310 IP 104.18.32.68.80 > 192.168.1.112.38960: Flags [.], ack 1, win 8, length 0 + 311 IP 104.18.32.68.80 > 192.168.1.112.38942: Flags [.], ack 1, win 8, length 0 + 312 IP 104.18.32.68.80 > 192.168.1.112.38946: Flags [.], ack 1, win 8, length 0 + 313 IP 104.18.32.68.80 > 192.168.1.112.38938: Flags [.], ack 1, win 8, length 0 + 314 IP 104.18.32.68.80 > 192.168.1.112.38922: Flags [.], ack 1, win 8, length 0 + 315 IP 192.168.1.72.329 > 239.255.133.141.329: UDP, length 44 + 316 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 317 IP 192.168.1.72.329 > 239.255.133.141.329: UDP, length 44 + 318 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 319 IP 192.168.1.122.41100 > 255.255.255.255.41100: UDP, length 11 + 320 IP 192.168.1.74.1941 > 239.255.133.141.1941: UDP, length 332 + 321 IP 192.168.1.112.44384 > 172.253.115.94.80: Flags [.], ack 3911157370, win 501, options [nop,nop,TS val 3368674093 ecr 131684836], length 0 + 322 IP 172.253.115.94.80 > 192.168.1.112.44384: Flags [.], ack 1, win 261, options [nop,nop,TS val 131695077 ecr 3368582093], length 0 + 323 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 324 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + 325 IP 192.168.1.74.329 > 239.255.133.141.329: UDP, length 44 + 326 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 44 + 327 IP 192.168.1.16.46537 > 192.168.1.255.32414: UDP, length 21 + 328 IP 192.168.1.112.57664 > 72.21.91.29.80: Flags [.], ack 1520100536, win 501, options [nop,nop,TS val 3563750560 ecr 3530660795], length 0 + 329 IP 72.21.91.29.80 > 192.168.1.112.57664: Flags [.], ack 1, win 135, options [nop,nop,TS val 3530671036 ecr 3563718503], length 0 + 330 IP 192.168.1.75.329 > 239.255.133.141.329: UDP, length 44 + 331 IP 192.168.1.74.330 > 239.255.133.141.330: UDP, length 54 + +OVERVIEW +-------- +packets_captured: 331 +bytes_captured: 131903 +seconds: 7 +hours: 0.00 + +SRC DST PACKETS BYTES +192.168.1.73 239.255.133.141 7 1101 +192.168.1.74 239.255.133.141 69 8665 +192.168.1.112 34.107.221.82 1 66 +192.168.1.71 239.255.133.141 9 774 +34.107.221.82 192.168.1.112 1 66 +192.168.1.75 239.255.133.141 13 1615 +192.168.1.112 34.160.144.191 2 178 +34.160.144.191 192.168.1.112 2 178 +192.168.1.142 224.0.0.251 2 140 +192.168.1.116 224.0.0.251 8 712 +192.168.1.112 192.168.100.1 2 200 +192.168.1.76 239.255.133.141 8 688 +192.168.1.108 224.0.0.251 9 843 +192.168.100.1 192.168.1.112 2 261 +192.168.1.110 224.0.0.251 8 712 +192.168.1.71 239.255.255.250 9 3309 +192.168.1.76 239.255.255.250 9 3309 +192.168.1.70 239.255.133.141 5 430 +192.168.1.72 239.255.133.141 6 1022 +192.168.1.75 239.255.255.250 9 3309 +192.168.1.122 255.255.255.255 2 120 +192.168.1.104 224.0.0.251 7 535 +192.168.1.71 224.0.0.251 1 80 +192.168.1.100 224.0.0.251 1 394 +192.168.1.74 224.0.0.251 1 80 +192.168.1.124 224.0.0.251 1 394 +192.168.1.119 224.0.0.251 1 402 +192.168.1.75 224.0.0.251 1 80 +192.168.1.76 224.0.0.251 1 80 +192.168.1.73 224.0.0.251 1 80 +192.168.1.70 224.0.0.251 1 80 +192.168.1.16 192.168.1.255 3 189 +192.168.1.72 224.0.0.251 1 80 +192.168.1.71 224.0.0.147 1 236 +192.168.1.112 72.21.91.29 5 330 +72.21.91.29 192.168.1.112 5 330 +192.168.1.76 224.0.0.147 1 236 +192.168.1.74 224.0.0.147 1 236 +192.168.1.112 104.76.214.179 1 66 +192.168.1.112 23.34.242.11 1 66 +192.168.1.112 18.67.79.46 1 66 +192.168.1.73 224.0.0.147 1 235 +104.76.214.179 192.168.1.112 1 66 +23.34.242.11 192.168.1.112 1 66 +18.67.79.46 192.168.1.112 1 66 +192.168.1.75 224.0.0.147 1 236 +192.168.1.112 75.75.77.2 8 1173 +192.168.1.112 208.80.154.224 27 2415 +75.75.77.2 192.168.1.112 9 1121 +208.80.154.224 192.168.1.112 24 90030 +192.168.1.112 142.251.163.94 1 66 +142.251.163.94 192.168.1.112 1 66 +192.168.1.16 239.255.255.250 1 143 +192.168.1.70 224.0.0.147 1 236 +192.168.1.70 239.255.255.250 9 3309 +192.168.1.72 224.0.0.147 1 235 +192.168.1.112 104.18.32.68 5 270 +104.18.32.68 192.168.1.112 5 300 +192.168.1.112 172.253.115.94 1 66 +172.253.115.94 192.168.1.112 1 66 diff --git a/tests/overview3.out b/tests/overview3.out new file mode 100644 index 000000000..e69de29bb