2015-11-03

(Go) Get local IP addresses


  • Sample Code
    myip.go
    package main
     
    import (
     "fmt"
     "net"
    )
     
    func main() {
     addrs, _ := net.InterfaceAddrs()
     
     for _, addr := range addrs {
      if addr.Network() == "ip+net" {
       if ipnet, ok := addr.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
        if ipnet.IP.To4() != nil {
         fmt.Println(ipnet.IP.String())
        }
       }
      } else if addr.Network() == "ip" {
       if addr.String() != "0.0.0.0" {
        fmt.Println(addr.String())
       }
      }
     }
    }

댓글 없음:

댓글 쓰기