Skip to content

Instantly share code, notes, and snippets.

@hightemp
Forked from ammario/ipint.go
Created October 29, 2024 13:11
Show Gist options
  • Save hightemp/6b6ab4fcdb832793178c9d263995b0a1 to your computer and use it in GitHub Desktop.
Save hightemp/6b6ab4fcdb832793178c9d263995b0a1 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