This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/PROCESSOR-SDK-AM335X: UDHCP server does not assign IP addresses

Part Number: PROCESSOR-SDK-AM335X


Tool/software: Linux

Presently I have a beaglebone and a windows laptop connected together via a switch. 

Edited the /etc/network/interfaces to assign static ip address to eth0 as 192.168.1.21. Snapshot of the file is given below :

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
#
# The loopback interface
auto lo
iface lo inet loopback

# Wireless interfaces
iface wlan0 inet dhcp
        wireless_mode managed
        wireless_essid any
        wpa-driver wext
        wpa-conf /etc/wpa_supplicant.conf

iface tiwlan0 inet dhcp
        wireless_mode managed
        wireless_essid any

iface atml0 inet dhcp

# Wired or wireless interfaces
#auto eth0
#iface eth0 inet dhcp
#        pre-up /bin/grep -v -e "ip=[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+"
#/proc/cmdline > /dev/null
#        udhcpc_opts -R -b

#BE ifcace eth0 (wired)
auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
        address 192.168.1.21
        netmask 255.255.255.0

#auto eth0
#iface eth0 inet static
#    address 192.168.0.20
#    netmask 255.255.255.0
#    network 192.168.0.0
#    broadcast 192.168.0.255
#    gateway 192.168.0.1
#pre-up /bin/grep -v -e "ip=[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+"

iface eth1 inet dhcp

# Ethernet/RNDIS gadget (g_ether)
# ... or on host side, usbnet and random hwaddr
auto usb0
iface usb0 inet static
        address 192.168.7.2
        netmask 255.255.255.252

# Bluetooth networking
iface bnep0 inet dhcp

++++++++++

Then modified the /etc/udhcpd.conf to run the dhcp server from static address 192.168.1.21 (snapshot below):

# Sample udhcpd configuration file (/etc/udhcpd.conf)
# Values shown are defaults

# The start and end of the IP lease block
#start          192.168.0.20
#end            192.168.0.254

start           192.168.1.30
end             192.168.1.254

# The interface that udhcpd will use
interface       eth0
#interface      wlan0

# The maximum number of leases (includes addresses reserved
# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected
# if it's bigger than IP lease block, but it ok to make it
# smaller than lease block.
#max_leases     254
max_leases  100

# The amount of time that an IP will be reserved (leased to nobody)
# if a DHCP decline message is received (seconds)
#decline_time   3600
decline_time   3600

# The amount of time that an IP will be reserved
# if an ARP conflict occurs (seconds)
conflict_time   3600

# How long an offered address is reserved (seconds)
#offer_time     60
offer_time     60

# If client asks for lease below this value, it will be rounded up
# to this value (seconds)
#min_lease      60
min_lease      60

# The location of the pid file
#pidfile        /var/run/udhcpd.pid
pidfile        /var/run/udhcpd.pid

# The location of the leases file
#lease_file     /var/lib/misc/udhcpd.leases
lease_file     /var/lib/misc/udhcpd.leases

# The time period at which udhcpd will write out leases file.
# If this is 0, udhcpd will never automatically write leases file.
# Specified in seconds.
#auto_time      7200
auto_time      7200

# Every time udhcpd writes a leases file, the below script will be called
notify_file                     # default: no script
#notify_file    dumpleases      # useful for debugging
#notify_file  #default: no script is run


# The following are bootp specific options
# next server to use in bootstrap
#siaddr         192.168.0.22    # default: 0.0.0.0 (none)
# tftp server name
#sname          zorak           # default: none
# tftp file to download (e.g. kernel image)
#boot_file      /var/nfs_root   # default: none

# Static leases map
#static_lease 00:60:08:11:CE:4E 192.168.0.54
#static_lease 00:60:08:11:CE:3E 192.168.0.44
# The remainder of options are DHCP options and can be specified with the
# keyword 'opt' or 'option'. If an option can take multiple items, such
# as the dns option, they can be listed on the same line, or multiple
# lines.
# Examples:
opt     dns     8.8.8.8 8.8.4.4 #public google dns servers
option  subnet  255.255.255.0
#BE: commented out opt  router  192.168.10.1
#opt    wins    192.168.10.10
#option dns     129.219.13.81   # appended to above DNS servers for a total of 3
#option domain  local
option  lease   864000          # default: 10 days
# Arbitrary option in hex form:
#BE:commented out by Bashir
#option 0x08    01020304        # option
#8:
#"cookie
#server IP
#addr: 1.2.3.4"

# Currently supported options (for more info, see options.c):
#opt lease      NUM
#opt subnet     IP
BE: commented out opt  router  192.168.10.1
#opt    wins    192.168.10.10
#option dns     129.219.13.81   # appended to above DNS servers for a total of 3
#option domain  local
option  lease   864000          # default: 10 days
# Arbitrary option in hex form:
#BE:commented out by Bashir
#option 0x08    01020304        # option
#8:
#"cookie
#server IP
#addr: 1.2.3.4"

# Currently supported options (for more info, see options.c):
#opt lease      NUM
#opt subnet     IP
#opt broadcast  IP
#opt router     IP_LIST
#opt ipttl      NUM
#opt mtu        NUM
#opt hostname   STRING          # client's hostname
#opt domain     STRING          # client's domain suffix
#opt search     STRING_LIST     # search domains
#opt nisdomain  STRING
#opt timezone   NUM             # (localtime - UTC_time) in seconds. signed
#opt tftp       STRING          # tftp server name
#opt bootfile   STRING          # tftp file to download (e.g. kernel image)
#opt bootsize   NUM             # size of that file
#opt rootpath   STRING          # (NFS) path to mount as root fs
#opt wpad       STRING
#opt serverid   IP              # default: server's IP
#opt message    STRING          # error message (udhcpd sends it on success too)
#opt vlanid     NUM             # 802.1P VLAN ID
#opt vlanpriority NUM           # 802.1Q VLAN priority
# Options specifying server(s)
#opt dns        IP_LIST
#opt wins       IP_LIST
#opt nissrv     IP_LIST
#opt ntpsrv     IP_LIST
#opt lprsrv     IP_LIST

+++++++++++++++++++++++++++++

eth0 takes the static ip address, if after reboot I run /etc/init.d/networking reset.

ps -e shows the udhcpd is running:

root@am335x-evm:/etc/network# ps -e | grep udhc
  869 ?        00:00:00 udhcpd
+++++++++++++++++++++++++++ 

I restart the windows laptop and check  the ip address. I was hoping to see the assignment in 192.168.1.30  ----- 254 range. However I see autoconfigured  or 192.168.56.1 

A solution or insight would be appreciated.

Best regards