Пример #1
0
 def test_answer_1(self):
     #prepare the packet
     a_packet = DnsPacket(False)
     a_packet.id = 0
     a_packet.AA = True
     a_packet.TC = True
     a_packet.answer_records.append(
         DnsRRecordA('test.local.', 120, '127.0.0.1'))
     r = DnsRRecordAAAA('test.local.', 120, '::1')
     r.flush_cache = True
     a_packet.additional_records.append(r)
     #test encoding
     self.assertEqual(
         a_packet.encode(),
         b'\x00\x00\x86\x00\x00\x00\x00\x01\x00\x00\x00\x01\x04test\x05local\x00\x00\x01\x00\x01\x00\x00\x00x\x00\x04\x7f\x00\x00\x01\xc0\x0c\x00\x1c\x80\x01\x00\x00\x00x\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01'
     )
Пример #2
0
 def test_query_1(self):
     #prepare the packet
     q_packet = DnsPacket(True)
     q_packet.id = 0
     q_packet.AA = True
     q_packet.RD = True
     q_packet.question_records.append(
         DnsQRecord('test.local.', DnsType.A, DnsClass.IN))
     q_packet.question_records.append(
         DnsQRecord('_service.test.local.', DnsType.ANY, DnsClass.IN))
     q_packet.question_records.append(
         DnsQRecord('test._tcp.local.', DnsType.TXT, DnsClass.IN))
     #test encoding
     self.assertEqual(
         q_packet.encode(),
         b'\x00\x00\x05\x00\x00\x03\x00\x00\x00\x00\x00\x00\x04test\x05local\x00\x00\x01\x00\x01\x08_service\xc0\x0c\x00\xff\x00\x01\x04test\x04_tcp\xc0\x11\x00\x10\x00\x01'
     )