diff --git a/devstack/files/debs/ironic b/devstack/files/debs/ironic
index e769a2d7f9..e9907b0be5 100644
--- a/devstack/files/debs/ironic
+++ b/devstack/files/debs/ironic
@@ -15,6 +15,7 @@ docker.io
 ipmitool
 iptables
 ipxe
+isolinux
 gnupg
 libguestfs0
 libguestfs-tools
diff --git a/devstack/files/rpms/ironic b/devstack/files/rpms/ironic
index ebc75c3d71..8ac5f7acc0 100644
--- a/devstack/files/rpms/ironic
+++ b/devstack/files/rpms/ironic
@@ -14,6 +14,7 @@ openvswitch
 sgabios
 shellinabox
 syslinux
+syslinux-nonlinux
 tftp-server
 xinetd
 squashfs-tools
diff --git a/devstack/lib/ironic b/devstack/lib/ironic
index 0d99f1cef8..32cecf6ddb 100644
--- a/devstack/lib/ironic
+++ b/devstack/lib/ironic
@@ -1566,6 +1566,11 @@ function configure_ironic_conductor {
     iniset $IRONIC_CONF_FILE dhcp dhcp_provider $IRONIC_DHCP_PROVIDER
 
     iniset $IRONIC_CONF_FILE deploy default_boot_option $IRONIC_DEFAULT_BOOT_OPTION
+
+    isolinux=$(find -L /usr /opt /etc -type f -name "isolinux.bin" | head -1)
+    if [[ -n "$isolinux" ]]; then
+        iniset $IRONIC_CONF_FILE DEFAULT isolinux_bin "$isolinux"
+    fi
 }
 
 # create_ironic_cache_dir() - Part of the init_ironic() process