• ldns: DNS C library, used to parse DNS packets
  • json-c: JSON C library, used to generate the output
  • pkg-config (Optional): Helper tool used to locate and json-c library folders to link in Makefile. If you don’t have pkg-config installed, you have to modify the Makefile according to this site.



  • Read from libpcap stream
  • Filter DNS packets (by UDP protocol & port 53)
  • Parse IPv4 Header information
  • Parse IPv6 Header information (partial)
  • Parse DNS Queries section