Microsoft建议不要在IPv6上使用“gethostname”,而应使用“getaddrinfo”或“getnameinfo”。
http://msdn.microsoft.com/en-us/library/ms899604.aspx
但是'gethostname'在IPv6上似乎没有任何问题。有谁知道为什么不建议在IPv6上使用“gethostname”的原因吗?
最佳答案
主要区别在于最大主机名长度,gethostname()
允许255 + 1个字符,getnameinfo()
支持1024 + 1的完整DNS长度。如果您使用的是微不足道的代码主机名之类的技术,则这将变得更加相关。其他区别是,使用gethostname()
时,您不能保证获得FQDN。
http://en.wikipedia.org/wiki/Internationalized_domain_name