本文整理了Java中org.xbill.DNS.Message.newQuery()
方法的一些代码示例,展示了Message.newQuery()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.newQuery()
方法的具体详情如下:
包路径:org.xbill.DNS.Message
类名称:Message
方法名:newQuery
暂无
代码示例来源:origin: julian-klode/dns66
@Test
public void testDnsQuery() throws Exception {
Message message = Message.newQuery(new ARecord(new Name("notblocked.example.com."),
0x01,
3600,
代码示例来源:origin: org.apache.whirr/whirr-core
Message response = resolver.send(newQuery(record));
代码示例来源:origin: apache/attic-whirr
Message response = resolver.send(newQuery(record));
代码示例来源:origin: org.apache.james/apache-jspf
private Message makeQuery(DNSRequest request, int id) throws TextParseException {
Name name = Name.fromString(request.getHostname(), Name.root);
int type;
switch (request.getRecordType()) {
case DNSRequest.A: type = Type.A; break;
case DNSRequest.AAAA: type = Type.AAAA; break;
case DNSRequest.MX: type = Type.MX; break;
case DNSRequest.PTR: type = Type.PTR; break;
case DNSRequest.SPF: type = Type.SPF; break;
case DNSRequest.TXT: type = Type.TXT; break;
default:
throw new UnsupportedOperationException("Unknown query type: "+request.getRecordType());
}
Record question = Record.newRecord(name, type, DClass.ANY);
Message query = Message.newQuery(question);
query.getHeader().setID(id);
return query;
}
}
代码示例来源:origin: org.apache.james.jspf/apache-jspf-resolver
private Message makeQuery(DNSRequest request, int id) throws TextParseException {
Name name = Name.fromString(request.getHostname(), Name.root);
int type;
switch (request.getRecordType()) {
case DNSRequest.A: type = Type.A; break;
case DNSRequest.AAAA: type = Type.AAAA; break;
case DNSRequest.MX: type = Type.MX; break;
case DNSRequest.PTR: type = Type.PTR; break;
case DNSRequest.SPF: type = Type.SPF; break;
case DNSRequest.TXT: type = Type.TXT; break;
default:
throw new UnsupportedOperationException("Unknown query type: "+request.getRecordType());
}
Record question = Record.newRecord(name, type, DClass.ANY);
Message query = Message.newQuery(question);
query.getHeader().setID(id);
return query;
}
}
代码示例来源:origin: julian-klode/dns66
@Test
public void testBlockedDnsQuery() throws Exception {
Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
0x01,
3600,
代码示例来源:origin: DSpace/DSpace
Message query = Message.newQuery(rec);
Message response = res.send(query);
代码示例来源:origin: dnsjava/dnsjava
Message newQuery = Message.newQuery(rec);
if (res == null)
res = new SimpleResolver(server);
代码示例来源:origin: net.sf.dnsjava-osgi/dnsjava-osgi
Message query = Message.newQuery(question);
Message response = null;
try {
代码示例来源:origin: org.dspace/dspace-stats
public static String reverseDns(String hostIp) throws IOException {
Resolver res = new ExtendedResolver();
// set the timeout, defaults to 200 milliseconds
int timeout = ConfigurationManager.getIntProperty("solr-statistics", "resolver.timeout", 200);
res.setTimeout(0, timeout);
Name name = ReverseMap.fromAddress(hostIp);
int type = Type.PTR;
int dclass = DClass.IN;
Record rec = Record.newRecord(name, type, dclass);
Message query = Message.newQuery(rec);
Message response = res.send(query);
Record[] answers = response.getSectionArray(Section.ANSWER);
if (answers.length == 0)
{
return hostIp;
}
else
{
return answers[0].rdataToString();
}
}
}
代码示例来源:origin: DSpace/DSpace
/**
* Resolve an IP address to a host name.
*
* @param hostIp dotted decimal IPv4 address.
* @return name if resolved, or the address.
* @throws IOException from infrastructure.
*/
public static String reverseDns(String hostIp) throws IOException {
Resolver res = new ExtendedResolver();
// set the timeout, defaults to 200 milliseconds
int timeout = ConfigurationManager.getIntProperty("usage-statistics", "resolver.timeout", 200);
res.setTimeout(0, timeout);
Name name = ReverseMap.fromAddress(hostIp);
int type = Type.PTR;
int dclass = DClass.IN;
Record rec = Record.newRecord(name, type, dclass);
Message query = Message.newQuery(rec);
Message response = res.send(query);
Record[] answers = response.getSectionArray(Section.ANSWER);
if (answers.length == 0) {
return hostIp;
} else {
return answers[0].rdataToString();
}
}
代码示例来源:origin: julian-klode/dns66
@Test
public void testBlockedInet6DnsQuery() throws Exception {
Message message = Message.newQuery(new ARecord(new Name("blocked.example.com."),
0x01,
3600,
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
@Test
public void testContainerRegistrationPersistanceAbsent() throws Exception {
ServiceRecord record = marshal.fromBytes("somepath",
CONTAINER_RECORD_YARN_PERSISTANCE_ABSENT.getBytes());
registryDNS.register(
"/registry/users/root/services/org-apache-slider/test1/components/"
+ "ctr-e50-1451931954322-0016-01-000003",
record);
Name name =
Name.fromString("ctr-e50-1451931954322-0016-01-000002.dev.test.");
Record question = Record.newRecord(name, Type.A, DClass.IN);
Message query = Message.newQuery(question);
byte[] responseBytes = registryDNS.generateReply(query, null);
Message response = new Message(responseBytes);
assertEquals("Excepting NXDOMAIN as Record must not have regsisterd wrong",
Rcode.NXDOMAIN, response.getRcode());
}
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
/**
* Create a query to forward to the primary DNS server (if configured).
* NOTE: Experimental
*
* @param query the inbound query.
* @return the query to forward to the primary server.
* @throws NameTooLongException
* @throws TextParseException if query creation fails.
*/
private Message createPrimaryQuery(Message query)
throws NameTooLongException, TextParseException {
Name name = query.getQuestion().getName();
if (name.labels() > 0 && name.labels() <= 2) {
// short relative or absolute name. this code may not be necessary -
// OS resolution utilities probably append the search paths defined
// in resolv.conf prior to the lookup
int id = query.getHeader().getID();
String queryName = name.getLabelString(0);
Name qualifiedName = Name.concatenate(Name.fromString(queryName),
Name.fromString(domainName));
LOG.info("Received query {}. Forwarding query {}", name, qualifiedName);
Record question = Record.newRecord(qualifiedName,
query.getQuestion().getType(),
query.getQuestion().getDClass());
query = Message.newQuery(question);
query.getHeader().setID(id);
}
return query;
}
代码示例来源:origin: github/elasticsearch-srv-discovery
@Override
public Message send(Message query) throws IOException {
final String HOSTNAME = "localhost.";
if (query.getQuestion().getName().toString().equals(Constants.TEST_QUERY)) {
Record question = Record.newRecord(query.getQuestion().getName(), Type.SRV, DClass.IN);
Message queryMessage = Message.newQuery(question);
Message result = new Message();
result.setHeader(queryMessage.getHeader());
result.addRecord(question, Section.QUESTION);
result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_0_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_1_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_2_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_3_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
result.addRecord(new SRVRecord(query.getQuestion().getName(), DClass.IN, 1, 1, 1, Constants.NODE_4_TRANSPORT_TCP_PORT, Name.fromString(HOSTNAME)), Section.ANSWER);
return result;
}
if (query.getQuestion().getName().toString().equals(HOSTNAME)) {
Record question = Record.newRecord(query.getQuestion().getName(), Type.A, DClass.IN);
Message queryMessage = Message.newQuery(question);
Message result = new Message();
result.setHeader(queryMessage.getHeader());
result.addRecord(question, Section.QUESTION);
result.addRecord(new ARecord(query.getQuestion().getName(), DClass.IN, 1, InetAddress.getLoopbackAddress()), Section.ANSWER);
return result;
}
throw new IllegalArgumentException("Unknown test query: " + query.getQuestion().getName().toString());
}
};
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
@Test
public void testNoContainerIP() throws Exception {
ServiceRecord record = getMarshal().fromBytes("somepath",
CONTAINER_RECORD_NO_IP.getBytes());
getRegistryDNS().register(
"/registry/users/root/services/org-apache-slider/test1/components/"
+ "ctr-e50-1451931954322-0016-01-000002",
record);
// start assessing whether correct records are available
Name name =
Name.fromString("ctr-e50-1451931954322-0016-01-000002.dev.test.");
Record question = Record.newRecord(name, Type.A, DClass.IN);
Message query = Message.newQuery(question);
byte[] responseBytes = getRegistryDNS().generateReply(query, null);
Message response = new Message(responseBytes);
assertEquals("wrong status", Rcode.NXDOMAIN, response.getRcode());
}
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
@Test
public void testMissingReverseLookup() throws Exception {
ServiceRecord record = getMarshal().fromBytes("somepath",
CONTAINER_RECORD.getBytes());
getRegistryDNS().register(
"/registry/users/root/services/org-apache-slider/test1/components/"
+ "ctr-e50-1451931954322-0016-01-000002",
record);
// start assessing whether correct records are available
Name name = Name.fromString("19.1.17.172.in-addr.arpa.");
Record question = Record.newRecord(name, Type.PTR, DClass.IN);
Message query = Message.newQuery(question);
OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
query.addRecord(optRecord, Section.ADDITIONAL);
byte[] responseBytes = getRegistryDNS().generateReply(query, null);
Message response = new Message(responseBytes);
assertEquals("Missing record should be: ", Rcode.NXDOMAIN,
response.getRcode());
}
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
Record[] assertDNSQueryNotNull(String lookup, int type, int answerCount)
throws IOException {
Name name = Name.fromString(lookup);
Record question = Record.newRecord(name, type, DClass.IN);
Message query = Message.newQuery(question);
OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
query.addRecord(optRecord, Section.ADDITIONAL);
byte[] responseBytes = getRegistryDNS().generateReply(query, null);
Message response = new Message(responseBytes);
assertEquals("not successful", Rcode.NOERROR, response.getRcode());
assertNotNull("Null response", response);
assertEquals("Questions do not match", query.getQuestion(),
response.getQuestion());
Record[] recs = response.getSectionArray(Section.ANSWER);
assertEquals(answerCount, recs.length);
assertEquals(recs[0].getType(), type);
return recs;
}
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
Message query = Message.newQuery(question);
代码示例来源:origin: org.apache.hadoop/hadoop-yarn-registry
Record[] assertDNSQuery(String lookup, int type, int numRecs)
throws IOException {
Name name = Name.fromString(lookup);
Record question = Record.newRecord(name, type, DClass.IN);
Message query = Message.newQuery(question);
OPTRecord optRecord = new OPTRecord(4096, 0, 0, Flags.DO, null);
query.addRecord(optRecord, Section.ADDITIONAL);
byte[] responseBytes = getRegistryDNS().generateReply(query, null);
Message response = new Message(responseBytes);
assertEquals("not successful", Rcode.NOERROR, response.getRcode());
assertNotNull("Null response", response);
assertEquals("Questions do not match", query.getQuestion(),
response.getQuestion());
Record[] recs = response.getSectionArray(Section.ANSWER);
assertEquals("wrong number of answer records",
isSecure() ? numRecs * 2 : numRecs, recs.length);
if (isSecure()) {
boolean signed = false;
for (Record record : recs) {
signed = record.getType() == Type.RRSIG;
if (signed) {
break;
}
}
assertTrue("No signatures found", signed);
}
return recs;
}
内容来源于网络,如有侵权,请联系作者删除!