diff --git a/ipv4/control_linux.go b/ipv4/control_linux.go
index 16f53d0..51b9a14 100644
--- a/ipv4/control_linux.go
+++ b/ipv4/control_linux.go
@@ -95,7 +95,7 @@
 	pi := &syscall.Inet4Pktinfo{}
 	pion := false
 	if ip := cm.Src.To4(); ip != nil {
-		copy(pi.Spec_dst[:], ip[0:net.IPv4len])
+		copy(pi.Spec_dst[:], ip[:net.IPv4len])
 		pion = true
 	}
 	if cm.IfIndex != 0 {
@@ -109,7 +109,7 @@
 		cmsg.Type = syscall.IP_PKTINFO
 		cmsg.SetLen(syscall.CmsgLen(syscall.SizeofInet4Pktinfo))
 		data := b[syscall.CmsgLen(0):]
-		copy(data[0:syscall.SizeofInet4Pktinfo], (*[syscall.SizeofInet4Pktinfo]byte)(unsafe.Pointer(pi))[:syscall.SizeofInet4Pktinfo])
+		copy(data[:syscall.SizeofInet4Pktinfo], (*[syscall.SizeofInet4Pktinfo]byte)(unsafe.Pointer(pi))[:syscall.SizeofInet4Pktinfo])
 		oob = append(oob, b...)
 	}
 	return
diff --git a/ipv4/header.go b/ipv4/header.go
index 09581bb..2e953fd 100644
--- a/ipv4/header.go
+++ b/ipv4/header.go
@@ -146,10 +146,10 @@
 	b[posProtocol] = byte(h.Protocol)
 	b[posChecksum], b[posChecksum+1] = byte(h.Checksum>>8), byte(h.Checksum)
 	if ip := h.Src.To4(); ip != nil {
-		copy(b[posSrc:posSrc+net.IPv4len], ip[0:net.IPv4len])
+		copy(b[posSrc:posSrc+net.IPv4len], ip[:net.IPv4len])
 	}
 	if ip := h.Dst.To4(); ip != nil {
-		copy(b[posDst:posDst+net.IPv4len], ip[0:net.IPv4len])
+		copy(b[posDst:posDst+net.IPv4len], ip[:net.IPv4len])
 	} else {
 		return nil, errMissingAddress
 	}
@@ -164,7 +164,7 @@
 	if len(b) < HeaderLen {
 		return nil, errHeaderTooShort
 	}
-	hdrlen := (int(b[0]) & 0x0f) << 2
+	hdrlen := int(b[0]&0x0f) << 2
 	if hdrlen > len(b) {
 		return nil, errBufferTooShort
 	}
diff --git a/ipv4/packet.go b/ipv4/packet.go
index 2e8f3a7..636cabd 100644
--- a/ipv4/packet.go
+++ b/ipv4/packet.go
@@ -49,7 +49,7 @@
 	if len(b) < HeaderLen {
 		return nil, nil, errHeaderTooShort
 	}
-	hdrlen := (int(b[0]) & 0x0f) << 2
+	hdrlen := int(b[0]&0x0f) << 2
 	return b[:hdrlen], b[hdrlen:], nil
 }
 
