Conversation
This reverts commit d496f37. My server is hosted on an IPv6-only network with NAT64 and DNS64. Hence while ping, curl etc. works just fine towards IPv4-only hosts, with metasearch2 it fails with "Network unreachable". Reqwest makes reasonable decisions based on what geaddrinfo returns and which network protocols are configured on the local interfaces.
|
this works fine on my dual IPv4/IPv6 system too reqwest uses hyper which appears to support happy eyeballs hyperium/hyper#1316 (comment) so it should Just Work™ in most cases if @mat-1 or someone is having trouble with it, perhaps a config option would help? (though in those situations, you probably wanna just disable IPv6 on the device instead, since every other app that doesn't do happy eyeballs is gonna run into issues too) |
|
hmm... I take that back. IPv6 seems to work for marginalia but I'm not getting results for google, even though the hidden progress-updates thing says it got a response and parsed it |
|
This is probably fine and I don't remember why I added it anyways. I'll merge this and maybe add a config option when I have the time to test. |
|
did some debugging. on IPv6, google is returning |
This to me seems ISP specific. And I cannot replicate that with my ISP. But since this is so network specific, it could be nice to have a configurable IPv4 only option. |
|
sadly, it's a bit difficult to make anything about |
This reverts commit d496f37.
Patch was tested and fixes connectivity issues on my end.
My server is hosted on an IPv6-only network with NAT64 and DNS64. Hence while ping, curl etc. works just fine towards IPv4-only hosts, with metasearch2 it fails with "Network unreachable", because yeah, that host is on no IPv4 network.
Reqwest makes reasonable decisions based on what getaddrinfo returns and which network protocols are configured on the local interfaces.
More background on how NAT64 works:
The network only assigns an IPv6 address to clients. If you do a DNS query for an IPv4-only domain, the local DNS server returns a NAT64 IP starting which is 64:ff9b:: + the IPv4 address. Requests to 64:ff9b::/96 are then handled by the NAT64 gateway.