go 建议:网络:导出支持IPv4,支持IPv6,支持IPv4Map

4xrmg8kj  于 6个月前  发布在  Go
关注(0)|答案(1)|浏览(49)

提案详情

net 包查询和缓存系统IP堆栈的功能,并在用户代码调用 DialListen 等函数时调用这些功能来确定打开哪种类型的套接字。如果手动打开套接字的用户代码可以方便地调用这些现有函数,而不是在用户代码中重复该功能,或者诉诸于链接名,那就太好了。
提案是添加以下内容:

// SupportsIPv4 reports whether the platform supports IPv4 networking
// functionality.
func SupportsIPv4() bool

// SupportsIPv6 reports whether the platform supports IPv6 networking
// functionality.
func SupportsIPv6() bool

// SupportsIPv4map reports whether the platform supports mapping an
// IPv4 address inside an IPv6 address at transport layer
// protocols. See RFC 4291, RFC 4038 and RFC 3493.
func SupportsIPv4map() bool

如果接受此提案,将允许 tfo-go 将其链接名与 net.favoriteAddrFamily 解除关联。
针对 #67401 (评论)。

相关问题