Skip to content

Instantly share code, notes, and snippets.

@mrtdeh
Forked from ammario/ipint.go
Created May 20, 2024 06:57
Show Gist options
  • Save mrtdeh/c504d7f29b0ee68b0482d1a4519fa2d2 to your computer and use it in GitHub Desktop.
Save mrtdeh/c504d7f29b0ee68b0482d1a4519fa2d2 to your computer and use it in GitHub Desktop.
Golang IP <-> int conversion
func ip2int(ip net.IP) uint32 {
if len(ip) == 16 {
return binary.BigEndian.Uint32(ip[12:16])
}
return binary.BigEndian.Uint32(ip)
}
func int2ip(nn uint32) net.IP {
ip := make(net.IP, 4)
binary.BigEndian.PutUint32(ip, nn)
return ip
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment