As of 13.2 (for most platforms), Juniper ethernet switches now offer Enhanced Layer 2 Services (ELS) which changed the syntax to configure a number of different objects throughout Junos. Recently I had to configure DHCP on an EX switch for a customer on EX3300s which were running ELS.
Though Juniper has documentation describing how to configure DHCP on ELS I found that it was light on the details particularly around the situation I needed to support where I had non-contiguous address blocks within the same network address space.
In my case the customer was running a /23 network block but had static configurations on some PCs out of that address space so the EX was going to allocate from one small block and then a larger one. If this is on different networks it’s possible to configure overflow pools and link them together.
The key pieces of information that I found missing was:
- You must have a network address on the network for which you want to provide DHCP. Note that if you don't have a local address there is no warning on commit, there's just no DHCP handed out.
- Multiple address ranges configured in the same pool will overflow from one to the other as needed.
In the end our configuration came out looking like the following:
or