text: Title: dns.asyncresolver timeout
  Body: Hi,
  While experimenting with `dns.asyncresolver` I encountered an error which occurs only on my Windows 10 machine and not on WSL or other Linux hosts.
  
  Running the following code throws a timeout exception:
  
  ```
  import asyncio
  import dns.asyncresolver
  import dns.asyncbackend
  import dns.exception
  from typing import List
  
  
  async def asyncquery(target, type="A"):
      record_type = "A"
      resolver = dns.asyncresolver.Resolver()
      resolver.nameservers = ["1.1.1.1", "8.8.8.8"]
      resolver.timeout = 10.0
      resolver.lifetime = 10.0
  
      try:
          answers = await resolver.resolve(target, rdtype=record_type)
          records = [rdata for rdata in answers]
      except dns.resolver.NoAnswer:
          print(f'{target} query returned no answer')
          return None
      except dns.exception.Timeout:
          print(f'{target} query timed out')
          return None
      return records
  
  
  if __name__ == "__main__":
      target = "google.com"
      res = asyncio.run(asyncquery(target, "A"))
      if res:
          print(f"Results")
          for r in res:
              print(r)
  ```
  
  I do see a valid response in Wireshark, but it doesn't seem to be captured by Python.
  ![תמונה](https://user-images.githubusercontent.com/60382890/108408722-0f8ea200-722e-11eb-90e2-1839ed09f7d1.png)
  
  The non-async resolver works just fine though 🤷‍♀️
  
  Python version: 3.9.1
  dnspython: 2.1.0
  
  Any ideas what can cause this?
  
  Thanks for the help!