Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2018 07:39:33 +0700
From:      Eugene Grosbein <eugen@grosbein.net>
To:        "Ronald F. Guilmette" <rfg@tristatelogic.com>, freebsd-net@freebsd.org
Subject:   Re: Raw Sockets: Two Questions
Message-ID:  <5AB1A9C5.9050707@grosbein.net>
In-Reply-To: <98551.1521576540@segfault.tristatelogic.com>
References:  <98551.1521576540@segfault.tristatelogic.com>

next in thread | previous in thread | raw e-mail | index | archive | help
21.03.2018 3:09, Ronald F. Guilmette wrote:

> I'm going to be doing some stuff with raw sockets pretty soon, and
> while scrounging around, looking for some nice coding examples, I
> found the following very curious comment on one particular message
> board:
> 
>     https://stackoverflow.com/questions/7048448/raw-sockets-on-bsd-operating-systems
> 
>       "Using raw sockets isn't hard but it's not entirely portable. For
>       instance, both in BSD and in Linux you can send whatever you want,
>       but in BSD you can't receive anything that has a handler (like TCP
>       and UDP)."
> 
> So, first question:  Is the above comment actually true & accurate?

Not for FreeBSD.
 
> Second question:  If the above assertion is actually true, then how can
> nmap manage to work so well on FreeBSD, despite what would appear to be
> this insurmountable stumbling block (of not being able to receive replies)?

nmap uses libdnet that provides some portability layer, including RAW socket operations.
It uses bundled stripped-down version but we have "normal" one as net/libdnet port/package.
You should consider using it too as convenience layer.






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5AB1A9C5.9050707>