title: gRPC HelloWorld - Error sending message to ASP.NET Core server from Python client
body: <p>I set up an ASP.NET Core client using this <a href="https://docs.microsoft.com/en-us/aspnet/core/tutorials/grpc/grpc-start?view=aspnetcore-3.1&amp;tabs=visual-studio" rel="nofollow noreferrer">Tutorial: Create a gRPC client and server in ASP.NET Core</a></p>
  
  <p>My endpoint is at <a href="https://localhost:5001" rel="nofollow noreferrer">https://localhost:5001</a>
  And from what I have read in the <a href="https://docs.microsoft.com/en-us/aspnet/core/grpc/aspnetcore?view=aspnetcore-3.1&amp;tabs=visual-studio" rel="nofollow noreferrer">documentation</a> it says </p>
  
  <blockquote>
    <p>"Kestrel endpoints used for gRPC should be secured with TLS. In
    development, an endpoint secured with TLS is automatically created at
    <a href="https://localhost:5001" rel="nofollow noreferrer">https://localhost:5001</a> when the ASP.NET Core development certificate
    is present"</p>
  </blockquote>
  
  <p>In my python code I have </p>
  
  <pre><code>"""The Python implementation of the GRPC helloworld.Greeter client."""
  
  from __future__ import print_function
  import logging
  
  import grpc
  
  import greet_pb2
  import greet_pb2_grpc
  
  
  def run():
      # NOTE(gRPC Python Team): .close() is possible on a channel and should be
      # used in circumstances in which the with statement does not fit the needs
      # of the code.
      with grpc.insecure_channel('https://localhost:5001') as channel:
          stub = greet_pb2_grpc.GreeterStub(channel)
          response = stub.SayHello(greet_pb2.HelloRequest(name='you'))
      print("Greeter client received: " + response.message)
  
  
  if __name__ == '__main__':
      logging.basicConfig()
      run()
  </code></pre>
  
  <p>But when I run it I get this error</p>
  
  <pre><code>Traceback (most recent call last):
    File "greet_client.py", line 37, in &lt;module&gt;
      run()
    File "greet_client.py", line 31, in run
      response = stub.SayHello(greet_pb2.HelloRequest(name='you'))
    File "D:\Anaconda\lib\site-packages\grpc\_channel.py", line 824, in __call__
      return _end_unary_response_blocking(state, call, False, None)
    File "D:\Anaconda\lib\site-packages\grpc\_channel.py", line 726, in _end_unary_response_blocking
      raise _InactiveRpcError(state)
  grpc._channel._InactiveRpcError: &lt;_InactiveRpcError of RPC that terminated with:
          status = StatusCode.UNAVAILABLE
          details = "DNS resolution failed"
          debug_error_string = "{"created":"@1580765368.309000000","description":"Failed to pick subchannel","file":"src/core/ext/filters/client_channel/client_channel.cc","file_line":3941,"referenced_errors":[{"created":"@1580765368.309000000","description":"Resolver transient failure","file":"src/core/ext/filters/client_channel/resolving_lb_policy.cc","file_line":262,"referenced_errors":[{"created":"@1580765368.309000000","description":"DNS resolution failed","file":"src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc","file_line":202,"grpc_status":14,"referenced_errors":[{"created":"@1580765368.309000000","description":"OS Error","file":"src/core/lib/iomgr/resolve_address_windows.cc","file_line":96,"os_error":"No such host is known.\r\n","syscall":"getaddrinfo","wsa_error":11001}]}]}]}"
  </code></pre>