The dhcp port is reserved by simply changing the device_id to "reserved_dhcp_port". The relationship to the network and subnet is maintained. Doing this keeps the allocated ip from returning to the pool and avoids allocating a new ip for a new dhcp port. You can do a dhcp-agent-network-remove followed by a dhcp-agent-network-add or you could do several removes followed by several adds. Doing several removes and then several adds would imply that a network is hosted by multiple dhcp agents. This could certainly be a valid situation. You would then end up with a pool of reserved dhcp ports after several removes. When you do the adds, the ports can get added back in any order and you will end up with your network hosted on new dhcp agents but with ports which have maintained their ip addresses. I don't think there is a problem. If I'm misunderstanding the use case, let me know.
I believe that this is a complete solution.
The dhcp port is reserved by simply changing the device_id to "reserved_ dhcp_port" . The relationship to the network and subnet is maintained. Doing this keeps the allocated ip from returning to the pool and avoids allocating a new ip for a new dhcp port. You can do a dhcp-agent- network- remove followed by a dhcp-agent- network- add or you could do several removes followed by several adds. Doing several removes and then several adds would imply that a network is hosted by multiple dhcp agents. This could certainly be a valid situation. You would then end up with a pool of reserved dhcp ports after several removes. When you do the adds, the ports can get added back in any order and you will end up with your network hosted on new dhcp agents but with ports which have maintained their ip addresses. I don't think there is a problem. If I'm misunderstanding the use case, let me know.