@IntegrationTest public static void testTcpAnswer() throws IOException { DNSClient client = new DNSClient(new LRUCache(1024)); client.setAskForDnssec(true); client.setDisableResultFilter(true); DNSMessage result = client.query("www-nsec.example.com", Record.TYPE.A); assertNotNull(result); assertTrue(result.toArray().length > 512); }
@IntegrationTest public static void testExampleCom() throws IOException { DNSClient client = new DNSClient(new LRUCache(1024)); String exampleIp4 = "93.184.216.34"; // stable? String exampleIp6 = "2606:2800:220:1:248:1893:25c8:1946"; // stable? assertEquals( client.query("example.com", Record.TYPE.A).answerSection.get(0).payloadData.toString(), exampleIp4); assertEquals( client.query("www.example.com", Record.TYPE.A).answerSection.get(0).payloadData.toString(), exampleIp4); assertEquals( client.query("example.com", Record.TYPE.AAAA).answerSection.get(0).payloadData.toString(), exampleIp6); assertEquals( client .query("www.example.com", Record.TYPE.AAAA) .answerSection .get(0) .payloadData .toString(), exampleIp6); DNSMessage nsRecords = client.query("example.com", Record.TYPE.NS); List<String> values = new ArrayList<>(); for (Record<? extends Data> record : nsRecords.answerSection) { values.add(record.payloadData.toString()); } Collections.sort(values); assertEquals(values.get(0), "a.iana-servers.net."); assertEquals(values.get(1), "b.iana-servers.net."); }
@IntegrationTest public static NSID testNsidLRoot() { DNSClient client = new DNSClient(null) { @Override protected Builder newQuestion(Builder message) { message.getEdnsBuilder().addEdnsOption(NSID.REQUEST); return super.newQuestion(message); } }; DNSMessage response = null; Question q = new Question("de", TYPE.NS); for (InetAddress lRoot : IterativeDNSClient.getRootServer('l')) { try { response = client.query(q, lRoot); } catch (IOException e) { continue; } break; } NSID nsid = response.getEdns().getEdnsOption(OptionCode.NSID); assertNotNull(nsid); return nsid; }