Hello,
First of all thanks a lot for this excellent material for beaglebone. I like it very much.
I am trying to update a set of BBB from the nerwork (I have no access to the sdcard)
For this purpose I would like to boot the BBB to be updated on NFS.
My test set up is including:
- the BBB to be booted on nfs (flashed with debian 8.2 25/10)
- another BBB acting as tftp & nfs server
- a router with static dhcp addresses defined for the two BBB (server: 192.168.3.100; client: 192.168.3.201)
The uEnv.txt on the client BBB is:
##Rename as: uEnv.txt to boot via nfs
##https://www.kernel.org/doc/Documentation/filesystems/nfs/nfsroot.txt
##SERVER: sudo apt-get install tftpd-hpa
##SERVER:
##SERVER: zImage boot:
##SERVER: TFTP_DIRECTORY defined in /etc/default/tftpd-hpa
##SERVER: zImage/.dtb need to be located here:
##SERVER: TFTP_DIRECTORY/zImage
##SERVER: TFTP_DIRECTORY/dtbs/.dtb
##SERVER:
##SERVER: uname_r boot:
##SERVER: TFTP_DIRECTORY defined in /etc/default/tftpd-hpa
##SERVER: Change TFTP_DIRECTORY to /NFSEXPORT/boot
##SERVER: TFTP_DIRECTORY/vmlinuz-${uname_r}
##SERVER: TFTP_DIRECTORY/dtbs/${uname_r}/*.dtb
##client_ip needs to be set for u-boot to try booting via nfs
client_ip=192.168.3.201
#u-boot defaults: uncomment and override where needed
server_ip=192.168.3.100
gw_ip=192.168.3.1
#netmask=255.255.255.0
#hostname=
#device=eth0
#autoconf=off
root_dir=/home/debian/rootfs
#nfs_options=,vers=3
#nfsrootfstype=ext4 rootwait fixrtc
##use uname_r= only if TFTP SERVER is setup for uname_r boot:
#uname_r=
The problems I am facing seems to be:
- upon startup the client BBB defines its local address 192.168.3.201 and performs tftp operations ok
- at some stage, the client BBB makes a DHCP request with another IP address (192.168.3.124, which is an address previously used by this device)
- the router rejects this request (DHCP NAK)
- the nfs mount is then not accessible
Furthermore, it shall be noted that the full process completes OK if I use the 192.168.3.124 address instead of 192.168.3.201 in the configuration files.
Please let me kown if there would be a way of the boot process not to perform this dhcp request with a deprecated ip address.
Links to console output:
Screen copy of the dhcp nak:
https://lh3.googleusercontent.com/-TPGu5u5ruaw/Vkb8GpVEbsI/AAAAAAAAAAc/SKPIAeojwUk/s1600/bootp.png
Regards
Christophe