<div dir="ltr"><div dir="ltr"><br></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jul 7, 2019 at 5:32 PM Simon Hobson <<a href="mailto:dhcp1@thehobsons.co.uk">dhcp1@thehobsons.co.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Andrew Bell <<a href="mailto:andrew@poscomp.ca" target="_blank">andrew@poscomp.ca</a>> wrote:<br>
<br>
> I have a legacy server, server A, which holds all of my wired subnets<br>
> (around 200). I also have a new set of servers, B and C, which hold my<br>
> wireless subnets and are configured for failover.<br>
> <br>
> What I would like to do is migrate all of the wired subnets from server A to<br>
> servers B&C. I think this will work...<br>
> <br>
> Create a failover peer relationship between A&B.<br>
> Add all subnets from A to B.<br>
> Update pools on A&B to use failover.<br>
> Update routers to point to both A&B.<br>
> Wait a while (days?)<br>
> Add all wired subnets to C (including failover)<br>
> Update pools on B to use B/C failover peer<br>
> Change routers to point to B&C<br>
> Shutdown A<br>
> <br>
> Does this plan make sense?<br>
<br>
Mostly - though I am no expert on failover.<br>
<br>
Add the subnets to B with failover. When you add failover to A, it will then sync it's leases to B and they will enter normal state. This sync operation can take some time - watch the logs and/or query state (OMAPI ?).<br>
Now point your routers (I assume you mean relay agents) to A&B.<br>
You don't need to wait, the failover sync will have taken care of transferring leases. Waiting won't make clients switch from talking to A to talking to B.<br>
<br>
You can now shut down A and put B into partner down state for this partner. B will now handle all clients when they broadcast requests - but not when they unicast to renew leases. When clients first try and renew leases, they will unicast a request to the server that originally gave them the lease. When they don't get a reply, they will eventually broadcast a renewal request and that will reach B which (because it is in partner down state for peer "A") renew the lease.<br>
If you don't shutdown A at this point, it will still be answering unicast requests from clients when it shouldn't be.<br>
<br>
Now add the subnets, with failover, to C; and change failover peer on B to C<br>
Change routers (relay agents) to point to B & C.<br>
<br>
Don't forget that you can do this a network (subnet or shared network) at a time. In place of "shutdown", change the subnet declaration to empty apart from "not authoritative". An empty subnet, especially if marked as not authoritative, is effectively "not there" as far as servicing clients.<br>
If not directly connected, the subnet declaration can be missing altogether which achieves the same result.<br></blockquote><div><br></div><div>I have done this several times (we currently have 6+ pairs of DHCP servers in production). I use a similar set of steps, but I prefer not to have B be secondary at one point and primary later (our servers have other subnets, and I don't think one DHCP server can be primary for some and secondary for others):</div><div>- Make sure all servers are not "authoritative" during the transition.</div><div>- add dhcp forwarders for all 3 to all subnets.</div><div>- verify that you are seeing 'discover' packets at all the servers. If there might be different acl's/firewalls/routing on different subnets, you can check for each subnet (might need a new test client on each subnet).</div><div>- turn down the lease time if it is long (I typically reduce it to 1 hour)</div><div>- wait for the original lease time so that clients all have the new lease time.</div><div>- add the subnets to C and make A/C a primary/failover pair. You might want a shorter "mclt" time during the transition.</div><div>- Watch the "failover" messages in the logs for both to be 'normal'. Will take at least "mclt".</div><div>- Introduce new clients - about half of them should get leases from "C". If "C" is sending DHCPOFFER, but all the new clients choose "A", something is wrong.</div><div>- Remove subnets from A (or shut down A) and add them to B, with B/C as the primary/failover pair.</div><div>- Watch the "failover" messages in the logs for both to be 'normal'. Will take at least "mclt".</div><div>- Introduce new clients - about half of them should get leases from "B". If "B" is sending DHCPOFFER, but all the new clients choose "C", something is wrong.<br></div><div>- Once things are working, set the lease time (and mclt, if changed) to normal values. Set as "authoritative" if desired (probably a good idea).</div><div><br></div><div>-- </div><div>Bob Harold</div><div><br></div><div><br></div></div></div>