qLinux
… a distribution study


<< Prev
Pciutils-3.7.0

Next >>
Wget-1.21.2


A DHCP Client

Using DHCP makes the network interface(s) configuration much simpler if a DHCP server exists in the network. We provide sdhcp-0.1 and the ISC dhclient here. Sdhcp was initial the choice to use with qLinux. Unfortunately it breaks the network connection if an existing lease was renewed.

Sdhcp-0.1

Unfortunately sdhcp is available via git only, which is not available yet. Download:

git clone git://git.2f30.org/sdhcp

Apply a patches to fix the build system:

patch -Np1 -i sdhcp-0.1-bld-20220304.patch

Apply a patch to fix the location of  resolv.conf :

patch -Np1 -i sdhcp-0.1-src-20220304.patch

Build and install sdhcp

make
make install

ISC dhclient-4.4.3

Reference: DHCP-4.4.3. Download: dhcp-4.4.3.tar.gz

After extracting the package do extract the bundled bind package too:

cd bind && tar -xvf bind.tar.gz

Extracting the bind source tree manual is important because the following patches applies fixes to the bind tree too.

Apply a patch to fix the build system:

patch -Np1 -i dhcp-4.4.3-bld-20220404.patch

Apply a patch to fix the sources:

patch -Np1 -i dhcp-4.4.3-src-20220405.patch

Configure the package:

./configure --prefix=/qlnx \
            --sbindir=/qlnx/bin \
            --includedir=/qlnx/inc \
            --mandir=/qlnx/man \
            --sysconfdir=/qlnx/etc \
            --runstatedir=/qlnx/run \
            --localstatedir=/qlnx/var \
            --with-randomdev=/qlnx/dev/random

Build and install dhclient:

make
make -C client install
cp -v client/scripts/linux /qlnx/bin/libexec/dhclient-script
chmod 0750 /qlnx/bin/dhclient /qlnx/bin/libexec/dhclient-script

Create a config file  /qlnx/etc/shclient.conf  with the following content:

send host-name = pick-first-value(gethostname(), "ISC-dhclient");
script "/qlnx/bin/libexec/dhclient-script";

Run dhclient:

DEV=eth0 dhclient -d -cf /qlnx/etc/dhclient.conf \
                     -lf /qlnx/var/dhcp.leases \
                     -pf /qlnx/run/dhclient-eth0.pid $DEV

<< Prev
Pciutils-3.7.0

Next >>
Wget-1.21.2