🐛 Add missing GetInterfaceIP

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
This commit is contained in:
Itxaka
2023-03-29 13:46:00 +02:00
parent 2c52e1cda4
commit 77ed7ba298

View File

@@ -7,6 +7,7 @@ import (
"fmt"
"gopkg.in/yaml.v3"
"image"
"net"
"os"
"os/exec"
"os/signal"
@@ -198,3 +199,31 @@ func ListToOutput(rels []string, output string) []string {
return rels
}
}
func GetInterfaceIP(in string) string {
ifaces, err := net.Interfaces()
if err != nil {
fmt.Println("failed getting system interfaces")
return ""
}
for _, i := range ifaces {
if i.Name == in {
addrs, _ := i.Addrs()
// handle err
for _, addr := range addrs {
var ip net.IP
switch v := addr.(type) {
case *net.IPNet:
ip = v.IP
case *net.IPAddr:
ip = v.IP
}
if ip != nil {
return ip.String()
}
}
}
}
return ""
}