Print Help
m23helpViewer - Help: Using m23 with an external DHCP server<!--new v10.3-->

Help: Using m23 with an external DHCP server

Scenario: There is an existing DHCP server in your network, that distributes network settings (IP, netmask, ...) to all your computers and an m23 server, that should install the clients.

Problem: The installation of the m23 clients doesn't work, because the other DHCP server assigns the network settings faster that the m23 server.

Reason: The m23 server needs to assign the IP and other network settings to let the client boot and install via the network. If these settings are distributed by another DHCP server, the client cannot find the m23 server, cannot download the network bootimage and cannot be installed. This cannot be changed generally, because there are standards in the network and boot protocols, that define a standardised network booting procedure.

The other DHCP server can be deactivated

Solutions:

  • Disable the other DHCP server for the MAC addresses of the clients you want to install (at least) during the operating system installation.
  • Or: Reconfigure the DHCP server to make it send its network settings with a delay of 2 seconds, to give the m23 server the chance for answering earlier.
  • Or: Deactivate the other DHCP server during the operating system installation with m23.

The other DHCP server CANNOT be deactivated

In this case you need to adjust the configuration of the other DHCP server manually and set up a TFTP server if necessary. Have a look into the documentation of your DHCP and TFTP servers for correct configuration.

Alternatively: Create boot media

When it is not possible to change the configuration of your DHCP server, you can still start your m23 client using a USB / optical boot medium, and then on the client's command line, run the script "fetchJobManual" to start the client's install process. Further information about boot medium creation is available from "Create boot media" in the menu.

Configuring DHCP servers dynamically

Each time the network boot status of a client is changed (activated / deactivated), the script "/m23/bin/externalDHCPControl.sh" is called. You can adapt this script according to your needs in order to dynamically configure an existing DHCP server. More information can be found in the comments inside the script file.

ISC DHCP server

If the other DHCP server is the ISC DHCP server, you can use it in place of the m23 DHCP server.

  1. Choose "PXE" at "Boottype" when adding a new client in the m23 webinterface. Assign the computer name the DHCP server will give to the client at "Client name".
  2. Deactivate the DHCP server on your m23 server: Edit the file
    /etc/default/isc-dhcp-server
    at the m23 server, comment out the line
    INTERFACES=...
    by putting a "#" in front and add the new line
    INTERFACES=""
    below. Afterwards, restart the DHCP server with
    /etc/init.d/isc-dhcp-server restart
    . It will still be running, but will not answer any requests any longer.
  3. In the configuration for your DHCP server, set the option
    use-host-decl-names on
    for the group which will contain the m23 clients.
  4. Regularly update the m23 group in the configuration of your DHCP server (e.g. using a cron job or another automated method) using the data of your m23 from the URL
    http://<m23-Server-IP>/exportDHCPSettings.php
    . This URL provides the configuration in "ISC DHCP server" notation for m23 clients which are to boot via network. The group with the m23 clients could, for example, look like this:

    group {

    use-host-decl-names on;

    <data imported from exportDHCPSettings.php>

    }

Other DHCP server

  1. Choose "PXE" at "Boottype" when adding a new client in the m23 webinterface. Assign the computer name the DHCP server will give to the client at "Client name".
  2. Configure the DHCP server in order to send the same client name which was entered in the m23 webinterface to the m23 client.
  3. The PXE kernel name the DHCP server transfers to the client needs to be pxelinux.0. TFTP server is the m23 server.
  4. Configure the DHCP server in a way that it gives the IP of the m23 server as IP of origin to the m23 clients.
  5. You may need to set up a TFTP server on the same machine as your DHCP server, if you cannot configure the DHCP to let the m23 clients download the boot files from the m23 server. You can take the files from the directory /m23/tftp/ as basis for your configuration.
  6. Proxy DHCP

    Maybe it could be helpful for your setup to use Proxy DHCP.

    Please visit the (German) Support für m23, Linux und OpenSource von goos-habermann.de, if you need commercial support for set up and configuration of m23 or other OpenSource components.