This is what I thought at first as well. However as I mentioned I used 2
different tftp servers. I tried the yale version with and without inetd. I
will get a full packet capture and attach it to my next e-mail. it's
possible that it has nothing to do with the traffic being source port 0,
that was only the most obvious difference I could find between the normal
and dropped traffic.




On 1/12/07, Bruce M. Simpson <[EMAIL PROTECTED]> wrote:

Ricardo Nabinger Sanchez wrote:
> On Fri, 12 Jan 2007 12:03:17 -0500
> "Hug Me" <[EMAIL PROTECTED]> wrote:
>
>
>> We believe FreeBSD is not allowing a UDP source port of 0 and the
kernel is
>> dropping the packet before it ever reaches the tftp server but are
unable to
>> verify this hypothesis. I was hoping someone here could help shed some
light
>> on the problem.
>>
>
> But port 0 has special meaning to the kernel (ie, "give me some random
> port").  Also, it is a reserved one.  Please check IANA:
>
>       http://www.iana.org/assignments/port-numbers
>
> I'm afraid you'll have to select another port number.
>
Nope. A source port of 0 is perfectly legal for UDP.

I did an experiment with rpcbind whereby I performed a UDP based rpcinfo
query from one FreeBSD machine to another, captured the traffic, and
used tcpreplay to inject it from source port 0.

At first I thought the INPCB hash lookup was doing the wrong thing, then
I ktrace'd rpcbind and it was apparent that it was in fact being
delivered to rpcbind from udp_input().

rpcbind tries to reply to destination port 0. This was verified with
kdump and rpcbind -d. This quite rightly fails, and, indeed, we reject
this from the socket code.

So, FreeBSD appears to handle a UDP source port of 0 ok based on these
tests.

The most likely explanation for the failure in this case, without
looking further, is that inetd or the tftpd implementations can't handle
source port 0.

BMS







--
       *******************************************************************
       Don't ever forget to
               -*HUGME*-

       Yield to Temptation ... it may not pass your way again.
               -- Lazarus Long, "Time Enough for Love"
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to