#!/usr/sbin/dtrace -s #pragma D option quiet dtrace:::BEGIN { printf("Tracing... Hit Ctrl-C to end.\n"); } ip:::send, ip:::receive /args[2]->ip_ver == 4/ { @num[args[2]->ip_saddr, args[2]->ip_daddr, args[4]->ipv4_protostr] = count(); } ip:::send, ip:::receive /args[2]->ip_ver == 6/ { @num[args[2]->ip_saddr, args[2]->ip_daddr, args[5]->ipv6_nextstr] = count(); } dtrace:::END { printf(" %-28s %-28s %6s %8s\n", "SADDR", "DADDR", "PROTO", "COUNT"); printa(" %-28s %-28s %6s %@8d\n", @num); }