Example #1
0
 public static void delete()
 {
     while (true)
     {
         dnsSnifferTableAdapters.req_tableTableAdapter reqta = new MyDnsSniffer.dnsSnifferTableAdapters.req_tableTableAdapter();
         DateTime time = DateTime.Now;
         Thread.Sleep(5000);
         reqta.DeleteQueryTime(time);
     }
 }
Example #2
0
        private static void device_OnPacketArrival(object sender, CaptureEventArgs e)
        {
            DateTime time = e.Packet.Timeval.Date;

            var packet = PacketDotNet.Packet.ParsePacket(e.Packet.LinkLayerType, e.Packet.Data);

            var udpPacket = PacketDotNet.UdpPacket.GetEncapsulated(packet); //PacketDotNet.TcpPacket.GetEncapsulated(packet);
            if (udpPacket != null)
            {
                var ipPacket = (PacketDotNet.IpPacket)udpPacket.ParentPacket;
                System.Net.IPAddress srcIp = ipPacket.SourceAddress;

                System.Net.IPAddress dstIp = ipPacket.DestinationAddress;

                // MessageBox.Show(srcIp.ToString() + "  " + dstIp.ToString());

                int srcPort = udpPacket.SourcePort;
                int dstPort = udpPacket.DestinationPort;
                if ((srcPort == 53) || (dstPort == 53))
                {
                    IPEndPoint a = new IPEndPoint(ipPacket.SourceAddress, srcPort);
                    response = new Response(a, udpPacket.PayloadData);

                    if ((response.header.QR == false))// && (srcIp == IPAddress.Parse("10.12.11.74")))
                    {
                        Console.WriteLine("Got an Question...");
                        display();

                        dnsSnifferTableAdapters.req_tableTableAdapter reqta = new MyDnsSniffer.dnsSnifferTableAdapters.req_tableTableAdapter();
                        reqta.Insert(Convert.ToDecimal(response.header.ID), Convert.ToDecimal(srcPort), dstIp.ToString(), response.Questions[0].QName.ToString(),time);
                    }
                    else if ((response.header.QR == true))// && (dstIp == IPAddress.Parse("10.12.11.74")))
                    {
                        Console.WriteLine("Got an Answer..");
                        if (response.Answers.Count > 0)
                        {
                            Console.WriteLine("Got an Answer..");
                            display();
                        }
                        dnsSnifferTableAdapters.res_tableTableAdapter resta = new MyDnsSniffer.dnsSnifferTableAdapters.res_tableTableAdapter();

                        foreach (AnswerRR answerRR in response.Answers)
                        {
                          resta.Insert(Convert.ToDecimal(response.header.ID), Convert.ToDecimal(dstPort), srcIp.ToString(), r_id, answerRR.NAME.ToString(), answerRR.RECORD.ToString(), time);
                        }
                        dnsSnifferTableAdapters.additional_host_ipTableAdapter addta = new MyDnsSniffer.dnsSnifferTableAdapters.additional_host_ipTableAdapter();
                        foreach (AdditionalRR additionalRR in response.Additionals)
                        {
                            if(additionalRR.RECORD.ToString()!="not-used")
                            addta.Insert(r_id,additionalRR.NAME.ToString(), additionalRR.RECORD.ToString());
                        }

                        r_id++;
                    }

                }
            }
        }