Mikrotik RB750iGS / Hex S install trouble -- DHCP not working in bootloader

I've tried both of (what seem to be) the common methods for loading OpenWRT with Windows on this device, and also with dnsmasq on OpenWRT. With any of Tftpd64, Tiny PXE Server, or dnsmasq on another OpenWRT device, I get the same results at the time when it should be requesting a DHCP allocation and booting from TFTP.

With each DHCP server, the Mikrotik device issues a DHCP Discover.
This request is answered with a DHCP Offer.
The Mikrotik device then immediately issues another DHCP Discover.
This request is also answered with a DHCP Offer.
[...]

This goes on forever until the Mikrotik device gets sick of its living conditions, times out, and boots RouterOS.

(And of course, once RouterOS is loaded it requests a DHCP allocation on its WAN port and is very happy with that -- it's just not running OpenWRT or the bootloader when this happens. :slight_smile:)

I get this behavior whether I do the hold-button-down-for-about-15-seconds-until-the-light-turns-off technique, or the try-ethernet-once-then-nand technique.

Since the MikroTik device is never satisfied with this DHCP situation, it never makes it to the point where it finds DHCP fields 66 and 67, and thus never attempts to use TFTP.

Things tried:

Different computers, different cables, inserting a switch between Mikrotik device and computer, and using the OpenWRT install on my home router to populate fields 66 and 67. I've tried a variety of different subnets. I've tried holding my teeth differently.

Firmware is currently 6.48. Factory firmware version is 6.46.4.

Example output from system log while it is failing to get an address:

Thu Aug 12 02:48:27 2021 daemon.info dnsmasq-dhcp[29190]: DHCPDISCOVER(br-lan) 2c:c8:1b:08:88:a1
Thu Aug 12 02:48:27 2021 daemon.info dnsmasq-dhcp[29190]: DHCPOFFER(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1
Thu Aug 12 02:48:27 2021 daemon.info dnsmasq-dhcp[29190]: DHCPDISCOVER(br-lan) 2c:c8:1b:08:88:a1
Thu Aug 12 02:48:27 2021 daemon.info dnsmasq-dhcp[29190]: DHCPOFFER(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1
Thu Aug 12 02:48:28 2021 daemon.info dnsmasq-dhcp[29190]: DHCPDISCOVER(br-lan) 2c:c8:1b:08:88:a1
Thu Aug 12 02:48:28 2021 daemon.info dnsmasq-dhcp[29190]: DHCPOFFER(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1
[...]

Example output of the same device succeeding to get a DHCP address a moment later in RouterOS instead of the bootloader (to show I'm not crazy):

Thu Aug 12 02:49:41 2021 daemon.info dnsmasq-dhcp[29190]: DHCPDISCOVER(br-lan) 2c:c8:1b:08:88:a1
Thu Aug 12 02:49:41 2021 daemon.info dnsmasq-dhcp[29190]: DHCPOFFER(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1
Thu Aug 12 02:49:41 2021 daemon.info dnsmasq-dhcp[29190]: DHCPREQUEST(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1
Thu Aug 12 02:49:41 2021 daemon.info dnsmasq-dhcp[29190]: DHCPACK(br-lan) 10.0.1.146 2c:c8:1b:08:88:a1 MikroTik

Any thoughts or suggestions?

Hi ssl-3,

I have heard of many issues with RouterBOOT DHCP. I have only every used RouterBOOT BOOTP.

I would suggest you reset the RouterBOOT settings to default, as you generally cannot change them from OpenWRT:

  • RouterBOOT boot protocol to: BOOTP (the default)
  • RouterBOOT boot device to: NAND, if fail eth (the default)

Then hold in the reset button when device is powered on.
You could try the RouterBOOT boot device: Ethernet once, then NAND, but RouterBOOT does fail to netboot occasionally with this setting for me.

Try downgrade your firmware to downgrade the RouterBoot loader
This has been recent issue with newer firmware on other MikroTik devices also

https://wiki.mikrotik.com/wiki/Manual:RouterBOOT#Simple_Upgrade

RouterBOOT. That's the term I was looking for when I said "bootloader," thanks! That'll make homework easier.

I'll try using bootp later tonight instead of DHCP.

How far back should I downgrade RouterBOOT to, specifically?

For reference, I have two hexs / 760igs. They have RouterBOOT 6.46.5, 6.45.7 & backup 6.44 & 6.42.4. Over all of those versions, typically no issues doing BOOTP (maybe 1/50 tries will fail early in the netboot process).
If you are seeing DHCP from RouterBOOT, you should change it back to BOOTP mode:
/system routerboard settings set boot-protocol=bootp

1 Like

John,

Thanks. Using bootp with Tiny PXE Server on Windows 10 worked perfectly the first time.

I appreciate everyone's patience and helpfulness here. :slight_smile: This is one of those things that's easy once you see it work once.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.