优先理会 A 地点记录
参考资料
-
Windows 8 IPv4 与 IPv6 选择的要领:Connecting with IPv6 in Windows8
(https://blogs.msdn.microsoft.com/b8/2012/06/05/connecting-with-ipv6-in-windows-8/)
-
Windows 当 IPv6 不行用后的回退机制:Is there any setting for connection timeout when IPv6 fallback to IPv4?
(https://social.technet.microsoft.com/Forums/en-US/d09e938a-a594-4766-8898-3926a81fc5dc/is-there-any-setting-for-connection-timeout-when-ipv6-fallback-to-ipv4?forum=w7itpronetworking)
-
今朝普及行使的 IPv4 与 IPv6 优先选择算法为 Happy Eyeballs
(https://en.wikipedia.org/wiki/Happy_Eyeballs):
-
今朝行使此算法的项目有:Chrome, Opera 12.10, Firefox version 13, OS X, cURL
-
此算法会优先选择 IPv6 链路行使
-
此算法的道理可参考 RFC 6555(Happy Eyeballs: Success with Dual-Stack Hosts)
(https://tools.ietf.org/html/rfc6555)
-
此算法的大略事变流程如下:
-
当客户端是双栈情形时,客户端会向缓存 DNS 处事器提倡域名 A 记录与 AAAA 记录的理会哀求,并受到理会功效,对应下图中的 1-4
-
客户端获取到理会地点后,会同时行使 IPv4 与 IPv6 两种链路实行成立毗连,对应下图中的 6-7。当 IPv6 链路比 IPv4 链路先成立毗连,可能 IPv4 已经成立毗连,可是在很短的时距离断内,IPv6 也乐成成立毗连后,则这两种环境下客户端应该行使 IPv6 链路完成后续的收集哀求,对应图中的 8-12

测试要领
理会域名
C/ C ++
Linux
- #include <stdio.h>
- #include <netdb.h>
- #include <arpa/inet.h>
-
- int main(void)
- {
- int i = 0;
- char str[32] = {0};
- struct hostent* phost = NULL;
-
- phost = gethostbyname("IPv6test.ntes53.netease.com");
- printf("%s", inet_ntoa(*((struct in_addr*)phost->h_addr)));
-
- return 0;
- }
Windows
(编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|