INNER CODE UNIT · Go
getNodePrimaryIF
aws/amazon-vpc-cni-k8s · cmd/aws-vpc-cni-init/main.go:44
func getNodePrimaryIF() (string, error) {
var primaryIF string
primaryMAC, err := imds.GetMetaData("mac")
if err != nil {
return primaryIF, errors.Wrap(err, "Failed to get primary MAC from IMDS")
}
log.Infof("Found primaryMAC %s", primaryMAC)
nl := netlinkwrapper.NewNetLink()
links, err := nl.LinkList()
if err != nil {
return primaryIF, errors.Wrap(err, "Failed to list links")
}
for _, link := range links {
if link.Attrs().HardwareAddr.String() == primaryMAC {
primaryIF = link.Attrs().Name
break
}