diff --git a/net/ip.go b/net/ip.go
index 83d86c3bf86878835af26f8f06f0015125154696..dbf17fe3d44f5f4d0c7868995d0fff36e3e7260f 100644
--- a/net/ip.go
+++ b/net/ip.go
@@ -230,11 +230,11 @@ func (ip IP) ToNetIP() net.IP {
 
 // BitAtPosition returns the bit at position pos
 func (ip IP) BitAtPosition(pos uint8) bool {
-	if !ip.isLegacy {
-		return ip.bitAtPositionIPv6(pos)
+	if ip.isLegacy {
+		return ip.bitAtPositionIPv4(pos)
 	}
 
-	return ip.bitAtPositionIPv4(pos)
+	return ip.bitAtPositionIPv6(pos)
 }
 
 func (ip IP) bitAtPositionIPv4(pos uint8) bool {