--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
To post to this group, send email to grp...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/b4615a77-ec37-4d61-ad1b-3343fb74bf31%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/065574a4-0583-4fa9-9987-1cf5aaa606e9%40googlegroups.com.
Now next task is - how to make it work with ipv6?I have an ipv6 , set it up the AAAA in GoDaddyto point to it. How to make sure it will work with ipv6?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/8c027f31-4d0b-465e-9bc3-bba0c95f8259%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/1a00ffa6-9e92-4b7f-8d8b-1df113d8d252%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/619debc4-47d5-491a-bbe7-1704ba5d24ca%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/bbb98fbf-7825-4ec2-b4bc-0813189d7436%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/50559150-1083-4128-a5ff-02681cf9976c%40googlegroups.com.
>i) make sure ipv6 is working on your OS X.I suppose Sslabs is probably not authoritative answer.What do you recommend for i)?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/3362f208-e886-4917-a1ef-9265fb31e85e%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/c075d104-d04e-4a2b-87b7-c0cf23dac552%40googlegroups.com.
>replacing "www.myserver.net" with the real ipv6 addressI tried this - it is not workingAlso in real world the server needs to support both ipv4 and ipv6
> It is highly possible you listen on an ipv4 address.but net.Listen("tcp" is supposed to automatically switch between tcp4 and tcp6?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/90dbbec3-da0b-45b6-a07c-fe76da1e31af%40googlegroups.com.
tcpAddr, _ := net.ResolveTCPAddr("tcp", fmt.Sprintf("%s:%s", addr, port))fmt.Printf("\nnet.Listen:tcpAddr.Network:%v, tcpAddr.String:%v\n", tcpAddr.Network(), tcpAddr.String())I got ipv4 address (for the poset I canned it to 11.22.33.44)net.Listen:tcpAddr.Network:tcp, tcpAddr.String:11.22.33.44:443So "tcp" resolves to ipv4
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/ccbf7264-74c1-462d-8645-beac5718e549%40googlegroups.com.
So the right behavior of the server should be always listening to ipv6?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/7857dae9-4e9d-4b35-ac40-327c2c7cfea0%40googlegroups.com.
tcp_client_posix.c:149] socket error: connection refused
Apple requirements is new apps to support ipv6.
I tried this:tcpAddr, _ := net.ResolveTCPAddr("tcp6", fmt.Sprintf("%s:%s", addr, port))lis, err := net.Listen(tcpAddr.Network(), tcpAddr.String())now the server is listening to ipv6.A test with Golang trying to connect:conn, err := grpc.Dial(fmt.Sprintf("%s:%s", addr, port), opts...)
got the error:grpc: ClientConn.resetTransport failed to create client transport: ...connection refusedfrom my iOS9 App with gRPC:tcp_client_posix.c:149] socket error: connection refused
I suppose because I get ipv4 from the client name resolution but listening only to ipv6.On reason can be that my ping on ipv4 gives faster response than ping6 on ipv6.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/ca3e3773-87fa-4223-a668-17c54b83e1d1%40googlegroups.com.
On Wed, Sep 16, 2015 at 12:17 PM, Constantine Vassilev <ths...@gmail.com> wrote:Apple requirements is new apps to support ipv6.Your app does support ipv6. As long as dns only returns ipv6 address, your app uses ipv6. :-)I tried this:tcpAddr, _ := net.ResolveTCPAddr("tcp6", fmt.Sprintf("%s:%s", addr, port))lis, err := net.Listen(tcpAddr.Network(), tcpAddr.String())now the server is listening to ipv6.A test with Golang trying to connect:conn, err := grpc.Dial(fmt.Sprintf("%s:%s", addr, port), opts...)Can you simply dial the above ipv6 addr to make sure ipv6 works fine?
got the error:grpc: ClientConn.resetTransport failed to create client transport: ...connection refusedfrom my iOS9 App with gRPC:tcp_client_posix.c:149] socket error: connection refused
I suppose because I get ipv4 from the client name resolution but listening only to ipv6.On reason can be that my ping on ipv4 gives faster response than ping6 on ipv6.actually in golang, if name resolver returns multiple addresses, net.Dial will try to connect to them in parallel and choose the fastest one to be connected. So in your case, my speculation is that the name resolver only returns ipv4 address (no ipv6 address at all).
...
On Wednesday, September 16, 2015 at 12:26:56 PM UTC-7, Qi Zhao wrote:On Wed, Sep 16, 2015 at 12:17 PM, Constantine Vassilev <ths...@gmail.com> wrote:Apple requirements is new apps to support ipv6.Your app does support ipv6. As long as dns only returns ipv6 address, your app uses ipv6. :-)I tried this:tcpAddr, _ := net.ResolveTCPAddr("tcp6", fmt.Sprintf("%s:%s", addr, port))lis, err := net.Listen(tcpAddr.Network(), tcpAddr.String())now the server is listening to ipv6.A test with Golang trying to connect:conn, err := grpc.Dial(fmt.Sprintf("%s:%s", addr, port), opts...)Can you simply dial the above ipv6 addr to make sure ipv6 works fine?I cannot Dial directly with ipv6 address because I get transport: x509: cannot validate certificate for because it doesn't contain any IP SANs"
got the error:grpc: ClientConn.resetTransport failed to create client transport: ...connection refusedfrom my iOS9 App with gRPC:tcp_client_posix.c:149] socket error: connection refused
I suppose because I get ipv4 from the client name resolution but listening only to ipv6.On reason can be that my ping on ipv4 gives faster response than ping6 on ipv6.actually in golang, if name resolver returns multiple addresses, net.Dial will try to connect to them in parallel and choose the fastest one to be connected. So in your case, my speculation is that the name resolver only returns ipv4 address (no ipv6 address at all).Name revolver in Golang server?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/0c141ba1-0aab-4c00-8a8c-9396d189114d%40googlegroups.com.
...
I think the server should be able to listen to bothipv6 and ipv4. How to do that?
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/29a7c619-8d91-4b87-b2f2-42f4d113bd8c%40googlegroups.com.
...
how I would do that in code?I suppose something like this:lis, _ := net.Listen("tcp4", fmt.Sprintf("%s:%s", addr, port))lis2, _ := net.Listen("tcp6", fmt.Sprintf("%s:%s", addr, port))
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/502c6e61-621c-414b-9e6a-9216a00bfaf0%40googlegroups.com.
...
...
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/65176cb9-056a-4626-8305-7b5969c27fa3%40googlegroups.com.
...
...
It is little more complicated. On the server I need to supportalso a legacy server listening to different host address.So I need to specify the address.So far I implemented the Apple requirement for test environmentsetting up a local IPv6 DNS64/NAT64 network with my Mac Book Pro.
All 4 cases of gRPC communication are working.the only concern I am having is thatfir the new OS X 10.11 and iOS 9 Apple is recommendingusing higher levelNSURLSession and CFNetwork- layer APIs.Not sure what Objective-C gRPC is using.
...