dnsjit(1) | General Commands Manual | dnsjit(1) |
dnsjit - DNS engine based around LuaJIT for capturing, parsing, replaying and statistics gathering
dnsjit file.lua ...
#!/usr/bin/env dnsjit
...
dnsjit is a combination of parts taken from dsc, dnscap, drool, and put together around Lua to create a script-based engine for easy capturing, parsing and statistics gathering of DNS message while also providing facilities for replaying DNS traffic.
One of the core functionality that dnsjit brings is to tie together C and Lua modules through a receiver/receive interface. This allows creation of custom chains of functionality to meet various requirements. Another core functionality is the ability to parse and process DNS messages even if the messages are non-compliant with the DNS standards.
NOTE current implementation is ALPHA which means functionality are not set and may be changed or removed.
The following Lua module categories exists:
See each category's man-page for more information.
The following Lua global variables are defined:
Following example display the DNS ID found in queries.
local input = require("dnsjit.input.pcapthread").new()
local output = require("dnsjit.filter.lua").new()
output:func(function(filter, object)
local packet = object:cast()
local dns = require("dnsjit.core.object.dns").new(packet)
dns:parse()
print(dns.id)
end)
input:open_offline("file.pcap")
input:only_queries(true)
input:receiver(output)
input:run()
See more examples in the examples directory.
dnsjit.core(3), dnsjit.lib(3), dnsjit.input(3), dnsjit.filter(3), dnsjit.output(3)
Jerry Lundström, DNS-OARC
Maintained by DNS-OARC
For issues and feature requests please use:
For question and help please use:
1.3.0 | dnsjit |