org.xbill.DNS.Message.newQuery()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(11.2k)|赞(0)|评价(0)|浏览(301)

本文整理了Java中org.xbill.DNS.Message.newQuery()方法的一些代码示例,展示了Message.newQuery()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.newQuery()方法的具体详情如下:
包路径:org.xbill.DNS.Message
类名称:Message
方法名:newQuery

Message.newQuery介绍

暂无

代码示例

代码示例来源:origin: julian-klode/dns66

  1. @Test
  2. public void testDnsQuery() throws Exception {
  3. Message message = Message.newQuery(new ARecord(new Name("notblocked.example.com."),
  4. 0x01,
  5. 3600,

代码示例来源:origin: org.apache.whirr/whirr-core

  1. Message response = resolver.send(newQuery(record));

代码示例来源:origin: apache/attic-whirr

  1. Message response = resolver.send(newQuery(record));

代码示例来源:origin: org.apache.james/apache-jspf

  1. private Message makeQuery(DNSRequest request, int id) throws TextParseException {
  2. Name name = Name.fromString(request.getHostname(), Name.root);
  3. int type;
  4. switch (request.getRecordType()) {
  5. case DNSRequest.A: type = Type.A; break;
  6. case DNSRequest.AAAA: type = Type.AAAA; break;
  7. case DNSRequest.MX: type = Type.MX; break;
  8. case DNSRequest.PTR: type = Type.PTR; break;
  9. case DNSRequest.SPF: type = Type.SPF; break;
  10. case DNSRequest.TXT: type = Type.TXT; break;
  11. default:
  12. throw new UnsupportedOperationException("Unknown query type: "+request.getRecordType());
  13. }
  14. Record question = Record.newRecord(name, type, DClass.ANY);
  15. Message query = Message.newQuery(question);
  16. query.getHeader().setID(id);
  17. return query;
  18. }
  19. }

代码示例来源:origin: org.apache.james.jspf/apache-jspf-resolver

  1. private Message makeQuery(DNSRequest request, int id) throws TextParseException {
  2. Name name = Name.fromString(request.getHostname(), Name.root);
  3. int type;
  4. switch (request.getRecordType()) {
  5. case DNSRequest.A: type = Type.A; break;
  6. case DNSRequest.AAAA: type = Type.AAAA; break;
  7. case DNSRequest.MX: type = Type.MX; break;
  8. case DNSRequest.PTR: type = Type.PTR; break;
  9. case DNSRequest.SPF: type = Type.SPF; break;
  10. case DNSRequest.TXT: type = Type.TXT; break;
  11. default:
  12. throw new UnsupportedOperationException("Unknown query type: "+request.getRecordType());
  13. }
  14. Record question = Record.newRecord(name, type, DClass.ANY);
  15. Message query = Message.newQuery(question);
  16. query.getHeader().setID(id);
  17. return query;
  18. }
  19. }

代码示例来源:origin: julian-klode/dns66

  1. @Test
  2. public void testBlockedDnsQuery() throws Exception {
  3. Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
  4. 0x01,
  5. 3600,

代码示例来源:origin: DSpace/DSpace

  1. Message query = Message.newQuery(rec);
  2. Message response = res.send(query);

代码示例来源:origin: dnsjava/dnsjava

  1. Message newQuery = Message.newQuery(rec);
  2. if (res == null)
  3. res = new SimpleResolver(server);

代码示例来源:origin: net.sf.dnsjava-osgi/dnsjava-osgi

  1. Message query = Message.newQuery(question);
  2. Message response = null;
  3. try {

代码示例来源:origin: org.dspace/dspace-stats

  1. public static String reverseDns(String hostIp) throws IOException {
  2. Resolver res = new ExtendedResolver();
  3. // set the timeout, defaults to 200 milliseconds
  4. int timeout = ConfigurationManager.getIntProperty("solr-statistics", "resolver.timeout", 200);
  5. res.setTimeout(0, timeout);
  6. Name name = ReverseMap.fromAddress(hostIp);
  7. int type = Type.PTR;
  8. int dclass = DClass.IN;
  9. Record rec = Record.newRecord(name, type, dclass);
  10. Message query = Message.newQuery(rec);
  11. Message response = res.send(query);
  12. Record[] answers = response.getSectionArray(Section.ANSWER);
  13. if (answers.length == 0)
  14. {
  15. return hostIp;
  16. }
  17. else
  18. {
  19. return answers[0].rdataToString();
  20. }
  21. }
  22. }

代码示例来源:origin: DSpace/DSpace

  1. /**
  2. * Resolve an IP address to a host name.
  3. *
  4. * @param hostIp dotted decimal IPv4 address.
  5. * @return name if resolved, or the address.
  6. * @throws IOException from infrastructure.
  7. */
  8. public static String reverseDns(String hostIp) throws IOException {
  9. Resolver res = new ExtendedResolver();
  10. // set the timeout, defaults to 200 milliseconds
  11. int timeout = ConfigurationManager.getIntProperty("usage-statistics", "resolver.timeout", 200);
  12. res.setTimeout(0, timeout);
  13. Name name = ReverseMap.fromAddress(hostIp);
  14. int type = Type.PTR;
  15. int dclass = DClass.IN;
  16. Record rec = Record.newRecord(name, type, dclass);
  17. Message query = Message.newQuery(rec);
  18. Message response = res.send(query);
  19. Record[] answers = response.getSectionArray(Section.ANSWER);
  20. if (answers.length == 0) {
  21. return hostIp;
  22. } else {
  23. return answers[0].rdataToString();
  24. }
  25. }

代码示例来源:origin: julian-klode/dns66

  1. @Test
  2. public void testBlockedInet6DnsQuery() throws Exception {
  3. Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
  4. 0x01,
  5. 3600,

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. @Test
  2. public void testContainerRegistrationPersistanceAbsent() throws Exception {
  3. ServiceRecord record = marshal.fromBytes("somepath",
  4. CONTAINER_RECORD_YARN_PERSISTANCE_ABSENT.getBytes());
  5. registryDNS.register(
  6. "/registry/users/root/services/org-apache-slider/test1/components/"
  7. + "ctr-e50-1451931954322-0016-01-000003",
  8. record);
  9. Name name =
  10. Name.fromString("ctr-e50-1451931954322-0016-01-000002.dev.test.");
  11. Record question = Record.newRecord(name, Type.A, DClass.IN);
  12. Message query = Message.newQuery(question);
  13. byte[] responseBytes = registryDNS.generateReply(query, null);
  14. Message response = new Message(responseBytes);
  15. assertEquals("Excepting NXDOMAIN as Record must not have regsisterd wrong",
  16. Rcode.NXDOMAIN, response.getRcode());
  17. }

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. /**
  2. * Create a query to forward to the primary DNS server (if configured).
  3. * NOTE: Experimental
  4. *
  5. * @param query the inbound query.
  6. * @return the query to forward to the primary server.
  7. * @throws NameTooLongException
  8. * @throws TextParseException if query creation fails.
  9. */
  10. private Message createPrimaryQuery(Message query)
  11. throws NameTooLongException, TextParseException {
  12. Name name = query.getQuestion().getName();
  13. if (name.labels() > 0 && name.labels() <= 2) {
  14. // short relative or absolute name. this code may not be necessary -
  15. // OS resolution utilities probably append the search paths defined
  16. // in resolv.conf prior to the lookup
  17. int id = query.getHeader().getID();
  18. String queryName = name.getLabelString(0);
  19. Name qualifiedName = Name.concatenate(Name.fromString(queryName),
  20. Name.fromString(domainName));
  21. LOG.info("Received query {}. Forwarding query {}", name, qualifiedName);
  22. Record question = Record.newRecord(qualifiedName,
  23. query.getQuestion().getType(),
  24. query.getQuestion().getDClass());
  25. query = Message.newQuery(question);
  26. query.getHeader().setID(id);
  27. }
  28. return query;
  29. }

代码示例来源:origin: github/elasticsearch-srv-discovery

  1. @Override
  2. public Message send(Message query) throws IOException {
  3. final String HOSTNAME = "localhost.";
  4. if (query.getQuestion().getName().toString().equals(Constants.TEST_QUERY)) {
  5. Record question = Record.newRecord(query.getQuestion().getName(), Type.SRV, DClass.IN);
  6. Message queryMessage = Message.newQuery(question);
  7. Message result = new Message();
  8. result.setHeader(queryMessage.getHeader());
  9. result.addRecord(question, Section.QUESTION);
  10. result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_0_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
  11. result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_1_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
  12. result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_2_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
  13. result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_3_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
  14. result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_4_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
  15. return result;
  16. }
  17. if (query.getQuestion().getName().toString().equals(HOSTNAME)) {
  18. Record question = Record.newRecord(query.getQuestion().getName(), Type.A, DClass.IN);
  19. Message queryMessage = Message.newQuery(question);
  20. Message result = new Message();
  21. result.setHeader(queryMessage.getHeader());
  22. result.addRecord(question, Section.QUESTION);
  23. result.addRecord(new ARecord(query.getQuestion().getName(), DClass.IN, 1, InetAddress.getLoopbackAddress()), Section.ANSWER);
  24. return result;
  25. }
  26. throw new IllegalArgumentException("Unknown test query: " + query.getQuestion().getName().toString());
  27. }
  28. };

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. @Test
  2. public void testNoContainerIP() throws Exception {
  3. ServiceRecord record = getMarshal().fromBytes("somepath",
  4. CONTAINER_RECORD_NO_IP.getBytes());
  5. getRegistryDNS().register(
  6. "/registry/users/root/services/org-apache-slider/test1/components/"
  7. + "ctr-e50-1451931954322-0016-01-000002",
  8. record);
  9. // start assessing whether correct records are available
  10. Name name =
  11. Name.fromString("ctr-e50-1451931954322-0016-01-000002.dev.test.");
  12. Record question = Record.newRecord(name, Type.A, DClass.IN);
  13. Message query = Message.newQuery(question);
  14. byte[] responseBytes = getRegistryDNS().generateReply(query, null);
  15. Message response = new Message(responseBytes);
  16. assertEquals("wrong status", Rcode.NXDOMAIN, response.getRcode());
  17. }

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. @Test
  2. public void testMissingReverseLookup() throws Exception {
  3. ServiceRecord record = getMarshal().fromBytes("somepath",
  4. CONTAINER_RECORD.getBytes());
  5. getRegistryDNS().register(
  6. "/registry/users/root/services/org-apache-slider/test1/components/"
  7. + "ctr-e50-1451931954322-0016-01-000002",
  8. record);
  9. // start assessing whether correct records are available
  10. Name name = Name.fromString("19.1.17.172.in-addr.arpa.");
  11. Record question = Record.newRecord(name, Type.PTR, DClass.IN);
  12. Message query = Message.newQuery(question);
  13. OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
  14. query.addRecord(optRecord, Section.ADDITIONAL);
  15. byte[] responseBytes = getRegistryDNS().generateReply(query, null);
  16. Message response = new Message(responseBytes);
  17. assertEquals("Missing record should be: ", Rcode.NXDOMAIN,
  18. response.getRcode());
  19. }

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. Record[] assertDNSQueryNotNull(String lookup, int type, int answerCount)
  2. throws IOException {
  3. Name name = Name.fromString(lookup);
  4. Record question = Record.newRecord(name, type, DClass.IN);
  5. Message query = Message.newQuery(question);
  6. OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
  7. query.addRecord(optRecord, Section.ADDITIONAL);
  8. byte[] responseBytes = getRegistryDNS().generateReply(query, null);
  9. Message response = new Message(responseBytes);
  10. assertEquals("not successful", Rcode.NOERROR, response.getRcode());
  11. assertNotNull("Null response", response);
  12. assertEquals("Questions do not match", query.getQuestion(),
  13. response.getQuestion());
  14. Record[] recs = response.getSectionArray(Section.ANSWER);
  15. assertEquals(answerCount, recs.length);
  16. assertEquals(recs[0].getType(), type);
  17. return recs;
  18. }

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. Message query = Message.newQuery(question);

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry

  1. Record[] assertDNSQuery(String lookup, int type, int numRecs)
  2. throws IOException {
  3. Name name = Name.fromString(lookup);
  4. Record question = Record.newRecord(name, type, DClass.IN);
  5. Message query = Message.newQuery(question);
  6. OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
  7. query.addRecord(optRecord, Section.ADDITIONAL);
  8. byte[] responseBytes = getRegistryDNS().generateReply(query, null);
  9. Message response = new Message(responseBytes);
  10. assertEquals("not successful", Rcode.NOERROR, response.getRcode());
  11. assertNotNull("Null response", response);
  12. assertEquals("Questions do not match", query.getQuestion(),
  13. response.getQuestion());
  14. Record[] recs = response.getSectionArray(Section.ANSWER);
  15. assertEquals("wrong number of answer records",
  16. isSecure() ? numRecs * 2 : numRecs, recs.length);
  17. if (isSecure()) {
  18. boolean signed = false;
  19. for (Record record : recs) {
  20. signed = record.getType() == Type.RRSIG;
  21. if (signed) {
  22. break;
  23. }
  24. }
  25. assertTrue("No signatures found", signed);
  26. }
  27. return recs;
  28. }

相关文章