=== DHCP Server Multiple Subnets

ifdef::topdoc[:imagesdir: {topdoc}../../test/case/dhcp/server_subnets]

==== Description

Verify that the DHCP server is capble of acting on more than one subnet,
handing out leases from a pool and static host lease, ensuring global,
subnet, and host-specific options are honored and do not leak between
subnets.

.Internal network setup, client2 and client3 are on the same LAN
image::dhcp-subnets.svg[align=center, scaledwidth=75%]

To verify isolation of subnet settings, a few "decoys" are added to the
configuration of each subnet.  These are then checked for on each of the
clients.  E.g., both subnets have static host configurations, but only
one client should match.

Both DNS and NTP servers are handed out to clients. Some clients have
a static DNS and NTP server configured already.

The test is concluded by the server trying to reach each client using
ping of the hostname.

==== Topology

image::topology.svg[DHCP Server Multiple Subnets topology, align=center, scaledwidth=75%]

==== Sequence

. Set up topology and attach to client and server DUTs
. Configure DHCP server
. Configure client hostnames
. Configure DHCP clients
. Verify DHCP client1 get correct lease
. Verify DHCP client1 has default route via server
. Verify DHCP client1 has correct DNS server(s)
. Verify DHCP client2 get correct static lease
. Verify DHCP client2 has default route via classless-static-route
. Verify DHCP client2 has correct DNS and NTP server(s)
. Verify DHCP client3 get correct lease
. Verify DHCP client3 has default route via server
. Verify DHCP client3 has correct DNS and NTP server(s)


