Documentation
¶
Overview ¶
This file contains the name mapping data used to convert various DNS IDs to their string values.
Index ¶
Constants ¶
const ( Query = false Response = true )
Constants used to associate the DNS QR flag with a meaningful value.
const ( NonDnsPacketMsg = "Packet's data could not be decoded as DNS." DuplicateQueryMsg = "Another query with the same DNS ID from this client " + "was received so this query was closed without receiving a response." OrphanedResponseMsg = "Response was received without an associated query." NoResponse = "No response to this query was received." )
Notes that are added to messages during exceptional conditions.
const ( TransportTcp = iota TransportUdp )
const MaxDnsTupleRawSize = 16 + 16 + 2 + 2 + 4 + 1
Variables ¶
var TransportNames = []string{
"tcp",
"udp",
}
Functions ¶
This section is empty.
Types ¶
type Dns ¶
type DnsMessage ¶
type DnsMessage struct {
Ts time.Time // Time when the message was received.
Tuple common.IpPortTuple // Source and destination addresses of packet.
CmdlineTuple *common.CmdlineTuple
Data *layers.DNS // Parsed DNS packet data.
Length int // Length of the DNS message in bytes.
}
DnsMessage contains a single DNS message.
type DnsStream ¶
type DnsStream struct {
// contains filtered or unexported fields
}
DnsStream contains DNS data from one side of a TCP transmission. A pair of DnsStream's are used to represent the full conversation.
type DnsTransaction ¶
type DnsTransaction struct {
ResponseTime int32 // Elapsed time in milliseconds between the request and response.
Src common.Endpoint
Dst common.Endpoint
Transport Transport
Notes []string
Request *DnsMessage
Response *DnsMessage
// contains filtered or unexported fields
}
type DnsTuple ¶
type DnsTuple struct {
Ip_length int
Src_ip, Dst_ip net.IP
Src_port, Dst_port uint16
Transport Transport
Id uint16
// contains filtered or unexported fields
}
DnsTuple contains source IP/port, destination IP/port, transport protocol, and DNS ID.
func DnsTupleFromIpPort ¶
func DnsTupleFromIpPort(t *common.IpPortTuple, trans Transport, id uint16) DnsTuple
func (*DnsTuple) ComputeHashebles ¶
func (t *DnsTuple) ComputeHashebles()
func (*DnsTuple) Hashable ¶
func (t *DnsTuple) Hashable() HashableDnsTuple
Hashable returns a hashable value that uniquely identifies the DNS tuple.
func (*DnsTuple) RevHashable ¶
func (t *DnsTuple) RevHashable() HashableDnsTuple
Hashable returns a hashable value that uniquely identifies the DNS tuple after swapping the source and destination.
type HashableDnsTuple ¶
type HashableDnsTuple [MaxDnsTupleRawSize]byte