diskless boot, nfs server behind router

Rick Macklem rmacklem at uoguelph.ca
Tue Jun 29 15:20:35 UTC 2010



On Mon, 28 Jun 2010, Daniel Braniss wrote:

>>
>>
>> On Mon, 28 Jun 2010, alexs at ulgsm.ru wrote:
>>
>>>
>>>
>>> kernel built with:
>>> options     BOOTP          # Use BOOTP to obtain IP address/hostname
>>> options     BOOTP_NFSROOT  # NFS mount root file system using BOOTP info
>>> options     BOOTP_NFSV3
>>>
>> Try building a kernel without the above options, but with
>> options NFS_ROOT
>> specified. I think that's what most pxeboot users do and it was what
>> I had assumed when I looked at the code.
>>
>> If that doesn't fix the problem...I haven't got a solution for you, rick
>
> I use:
> options         BOOTP_NFSV3             # Use NFS v3 to NFS mount root
>

Here's the critical snippet of code:
#if defined(BOOTP_NFSROOT) && defined(BOOTP)
 	bootpc_init();		/* use bootp to get nfs_diskless filled in */
#elif defined(NFS_ROOT)
 	nfs_setup_diskless();
#endif

Just fyi, as you can see, unless you have BOOTP_NFSROOT and BOOTP options, 
it does things the NFS_ROOT way and basically ignores BOOTP_NFSV3.
(At least thats the way it looks to me. I've been tricked by convoluted
code before:-)

> but the best advice I can give, on the server run tcpdump/wireshark
> it is very enlighting.
>
Yes, that might tell us why the case with BOOTPxxx options doesn't
work through the gateway, although I'm afraid that the packets that
tell us why it doesn't get past the gateway might not be getting to
the server. I suggested ways to capture them in the other reply.

Btw, thanks for your help testing the NFSv3 pxeboot stuff among other
things you've tested, rick



More information about the freebsd-stable mailing list