Skip to content

Instantly share code, notes, and snippets.

@royge
Forked from jniltinho/myip.go
Created January 27, 2018 13:09
Show Gist options
  • Save royge/7817ea8f88539dc16fd149d9b5e06e47 to your computer and use it in GitHub Desktop.
Save royge/7817ea8f88539dc16fd149d9b5e06e47 to your computer and use it in GitHub Desktop.
Get My IP Golang
package main
/*
URL: https://github.com/mccoyst/myip/blob/master/myip.go
URL: http://changsijay.com/2013/07/28/golang-get-ip-address/
*/
import (
"net"
"os"
)
func main() {
addrs, err := net.InterfaceAddrs()
if err != nil {
os.Stderr.WriteString("Oops: " + err.Error() + "\n")
os.Exit(1)
}
for _, a := range addrs {
if ipnet, ok := a.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
if ipnet.IP.To4() != nil {
os.Stdout.WriteString(ipnet.IP.String() + "\n")
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment