Skip to content

Permanent error on AAAA request #428

@pavlyuts

Description

@pavlyuts

What is Happening / What is expected

DPS logs fault, associated to AAAA request on container name
Log entry:

Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]: 08:28:44.878 [Thread-41      ] WAR c.m.d.server.dns.RequestHandlerDefault            l=93   m=solve0                          status=solverFailed, currentSolverTime=8, totalTime=8, solver=SolverDocker, query=query=AAAA:db.docker, eClass=NullPointerException, msg=null
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]: java.lang.NullPointerException: null
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.Objects.requireNonNull(Objects.java:233)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.Optional.of(Optional.java:113)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.stream.FindOps$FindSink$OfRef.get(FindOps.java:194)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.stream.FindOps$FindSink$OfRef.get(FindOps.java:191)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.docker.ContainerSolvingService.findBestMatch(ContainerSolvingService.java:50)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.SolverDocker.lambda$handle$0(SolverDocker.java:40)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.HostnameMatcher.match(HostnameMatcher.java:22)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.SolverDocker.handle(SolverDocker.java:39)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.solve0(RequestHandlerDefault.java:75)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.lambda$handleRes$0(SolverCache.java:38)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.commons.caching.LruTTLCache.lambda$computeIfAbsentWithTTL$1(LruTTLCache.java:94)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.commons.caching.LruTTLCache.lambda$computeIfAbsentWithTTL$2(LruTTLCache.java:88)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.commons.caching.LruTTLCache.computeIfAbsentWithTTL(LruTTLCache.java:86)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.handleRes(SolverCache.java:36)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.solver.SolverCache.handle(SolverCache.java:31)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.solve(RequestHandlerDefault.java:51)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.RequestHandlerDefault.handle(RequestHandlerDefault.java:42)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.UDPServer.handle(UDPServer.java:54)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at com.mageddo.dnsproxyserver.server.dns.UDPServer.lambda$start0$0(UDPServer.java:42)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:317)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at [email protected]/java.lang.Thread.run(Thread.java:1589)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:775)
Dec 07 11:28:44 pavlyuts.ru dns-proxy-server[448]:         at org.graalvm.nativeimage.builder/com.oracle.svm.core.posix.thread.PosixPlatformThreads.pthreadStartRoutine(PosixPlatformThreads.java:203)

To reproduce:

  1. Setup Docker
  2. Setup DPS standaone mode and configure it
  3. Create container with docker default network conection and name 'test'
  4. dig @127.0.0.1 test.docker AAAA
  5. Check DPS logs

DPS config file

{
  "version": 2,
  "remoteDnsServers": [ ],
  "envs": [
    {
      "name": "",
      "hostnames": [ ]
    }
  ],
  "activeEnv": "",
  "webServerPort": 5380,
  "dnsServerPort": 53,
  "logLevel": "INFO",
  "logFile": "console",
  "registerContainerNames": true,
  "domain": "docker",
  "dpsNetwork": false,
  "dpsNetworkAutoConnect": false,
  "defaultDns": false,
  "hostMachineHostname" : "host.docker",
  "serverProtocol": "UDP_TCP",
  "dockerHost": null,
  "resolvConfOverrideNameServers": false,
  "noRemoteServers": true,
  "noEntriesResponseCode": 3
}

Specs

  • OS: Debian 11, Oracle Linux 8
  • Docker Version: 24.0.7
  • DPS Version: 3.15.13-snapshot

Metadata

Metadata

Assignees

Labels

bugconfirmedUnexpected behavior (bug) which was reproduced by repo owners

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions