Golang net.InterfaceAddrs() function example

package net

Golang net.InterfaceAddrs() function usage example

 package main

  import (
 "fmt"
 "net"
 "os"
  )

  func main() {

 addrs, err := net.InterfaceAddrs()

 if err != nil {
 fmt.Println(err)
 os.Exit(1)
 }

 for _, address := range addrs {

 // check the address type and if it is not a loopback the display it
 if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
 if ipnet.IP.To4() != nil {
 fmt.Println(ipnet.IP.String())
 }

 }
 }

  }

References :

http://golang.org/pkg/net/#InterfaceAddrs

https://www.socketloop.com/tutorials/golang-how-do-I-get-the-local-ip-non-loopback-address

Advertisement