in internal/ip/ip.go [204:215]
func getSendSocket(af int) (int, error) {
fd, err := syscall.Socket(af, syscall.SOCK_RAW, syscall.IPPROTO_RAW)
if err != nil {
return 0, err
}
if err = syscall.SetsockoptInt(fd, syscall.IPPROTO_IP, syscall.IP_HDRINCL, 1); err != nil {
return 0, err
}
return fd, nil
}