查看 net/interface.go 代码,似乎获取接口标志的唯一方法是字符串。这是真的?
if strings.Contains(i.Flags.String(), "broadcast") {
Run Code Online (Sandbox Code Playgroud)
感觉很恶心
net.Interface.Flags是位掩码。要查看接口是否具有特定标志,请使用按位 AND 运算符( &)。例如:
if i.Flags&net.FlagBroadcast != 0 {
// interface has broadcast
}
Run Code Online (Sandbox Code Playgroud)