草庐IT

Golang net.Listen IPv6

coder 2023-06-29 原文

我试图让 IPv6 与 Golang net.Listen() 一起工作,但我不断收到以下错误:

listen tcp [xxxx::xxx:xxxx:fe4f:7e0b]:9443: bind: invalid argument

代码:

s.Listener, err = net.Listen("tcp", config.LocalNode().IP+":"+config.LocalNode().Port)

知道我为什么会遇到这个问题吗? IPv4 似乎可以工作 np

最佳答案

尝试绑定(bind)没有适当范围的链接范围的 ipv6 地址将导致操作系统出现此错误。如果你真的想要一个链接范围的地址,你必须提供正确的范围 ID,例如

"[fe80::4c3:3cff:fe4f:7e0b%eth0]:9443"

否则您需要使用有效的全局范围内的 ipv6 地址。

"[2600:1f18:63ef:e802:355f:aede:dbba:2c03]:9443"

关于Golang net.Listen IPv6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47888302/

有关Golang net.Listen IPv6的更多相关文章

随机推荐