3.3.4.50 FindAvailableScopeForReservationInDhcpServer

The FindAvailableScopeForReservationInDhcpServer operation can be used to query the scope instance associated with a particular DHCP server instance on which a reservation can be created for a specified IP address.

 <wsdl:operation name="FindAvailableScopeForReservationInDhcpServer">
   <wsdl:input wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/FindAvailableScopeForReservationInDhcpServer" message="ipam:IIpamServer_FindAvailableScopeForReservationInDhcpServer_InputMessage" />
   <wsdl:output wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/FindAvailableScopeForReservationInDhcpServerResponse" message="ipam:IIpamServer_FindAvailableScopeForReservationInDhcpServer_OutputMessage" />
 </wsdl:operation>

Upon receiving the IIpamServer_FindAvailableScopeForReservationInDhcpServer_InputMessage request message, the server performs the following processing steps. Upon successful completion of the steps specified below, the server MUST respond with the IIpamServer_FindAvailableScopeForReservationInDhcpServer_OutputMessage message.In the event of a failure, an appropriate SOAP fault MUST be sent to the client as specified in section 2.2.2.1:

  1. If the FindAvailableScopeForReservationInDhcpServer.addressFamily is InterNetwork, the rest of the processing is done with the IPv4-specific tables. The FindAvailableScopeForReservationInDhcpServerResponse.FindAvailableScopeForReservationInDhcpServerResult will consist of DhcpScopeV4 data. Otherwise IPv6-specific tables are used for further processing. The FindAvailableScopeForReservationInDhcpServerResponse.FindAvailableScopeForReservationInDhcpServerResult will consist of DhcpScopeV6 data.

  2. Enumerate the rows in ADM_DHCPScopesTable which meet the following conditions:

    • DHCPServerRecordId of the row is equal to FindAvailableScopeForReservationInDhcpServer.dhcpServerRecordId.

    • StartAddress is lesser than or equal to FindAvailableScopeForReservationInDhcpServer.address.

    • EndAddress is greater than or equal to FindAvailableScopeForReservationInDhcpServer.address.

  3. If a row is found meeting the conditions above, call the procedure GetScopeFromTable in ADM_DHCPScopesTable passing the RecordId of the row as Param_Id and the FindAvailableScopeForReservationInDhcpServer.addressFamily as Param_addressfamily.

  4. Assign the Result_scope to FindAvailableScopeForReservationInDhcpServerResponse. FindAvailableScopeForReservationInDhcpServerResult.