Home / Class/ DnsNameResolverClientSubnetTest Class — netty Architecture

DnsNameResolverClientSubnetTest Class — netty Architecture

Architecture documentation for the DnsNameResolverClientSubnetTest class in DnsNameResolverClientSubnetTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  35064837_d86c_203d_a77d_3744c4a9d5e9["DnsNameResolverClientSubnetTest"]
  1644a98f_1346_83ad_4b64_6661df2e5a4e["DnsNameResolverClientSubnetTest.java"]
  35064837_d86c_203d_a77d_3744c4a9d5e9 -->|defined in| 1644a98f_1346_83ad_4b64_6661df2e5a4e
  49b7312e_17e0_3a45_8b48_c6109c345113["testSubnetQuery()"]
  35064837_d86c_203d_a77d_3744c4a9d5e9 -->|method| 49b7312e_17e0_3a45_8b48_c6109c345113
  8f842676_b93d_2c27_fe1f_c5b3c9618822["DnsNameResolverBuilder()"]
  35064837_d86c_203d_a77d_3744c4a9d5e9 -->|method| 8f842676_b93d_2c27_fe1f_c5b3c9618822

Relationship Graph

Source Code

resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverClientSubnetTest.java lines 34–70

public class DnsNameResolverClientSubnetTest {

    // See https://www.gsic.uva.es/~jnisigl/dig-edns-client-subnet.html
    // Ignore as this needs to query real DNS servers.
    @Disabled
    @Test
    public void testSubnetQuery() throws Exception {
        EventLoopGroup group = new MultiThreadIoEventLoopGroup(1, NioIoHandler.newFactory());
        DnsNameResolver resolver = newResolver(group).build();
        try {
            // Same as:
            // # /.bind-9.9.3-edns/bin/dig @ns1.google.com www.google.es +client=157.88.0.0/24
            Future<List<InetAddress>> future = resolver.resolveAll("www.google.es",
                    Collections.<DnsRecord>singleton(
                            // Suggest max payload size of 1024
                            // 157.88.0.0 / 24
                            new DefaultDnsOptEcsRecord(1024, 24,
                                                       SocketUtils.addressByName("157.88.0.0").getAddress())));
            for (InetAddress address: future.syncUninterruptibly().getNow()) {
                System.out.println(address);
            }
        } finally {
            resolver.close();
            group.shutdownGracefully(0, 0, TimeUnit.SECONDS);
        }
    }

    private static DnsNameResolverBuilder newResolver(EventLoopGroup group) {
        return new DnsNameResolverBuilder(group.next())
                .datagramChannelType(NioDatagramChannel.class)
                .nameServerProvider(
                        new SingletonDnsServerAddressStreamProvider(SocketUtils.socketAddress("8.8.8.8", 53)))
                .maxQueriesPerResolve(1)
                .optResourceEnabled(false)
                .ndots(1);
    }
}

Frequently Asked Questions

What is the DnsNameResolverClientSubnetTest class?
DnsNameResolverClientSubnetTest is a class in the netty codebase, defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverClientSubnetTest.java.
Where is DnsNameResolverClientSubnetTest defined?
DnsNameResolverClientSubnetTest is defined in resolver-dns/src/test/java/io/netty/resolver/dns/DnsNameResolverClientSubnetTest.java at line 34.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free