我正在使用C#(Visual Studio 2010)以编程方式创建DHCP预留。
我已使用this帖子中的信息来获取DHCPOBJECTS.DLL。连接到DHCP服务器效果很好。我也可以创建新的预订或通过现有预订进行枚举。
class CDHCP
{
private Manager dhcpmgr;
private Server dhcpsrvr;
public CDHCP()
{
dhcpmgr = new Manager();
dhcpsrvr = dhcpmgr.Servers.Connect("192.168.1.3");
}
public void create_reservation(string sName, string sAddress, string sDescription, string sMAC)
{
Reservation DHCPReservation = dhcpsrvr.Scopes["192.168.1.0"].Reservation.CreateNew();
DHCPReservation.Name = sName;
DHCPReservation.UniqueID = sMAC;
DHCPReservation.Address = sAddress;
DHCPReservation.Comment = sDescription;
DHCPReservation.Update();
}
public void get_reservations()
{
List<Reservation> reservations = new List<Reservation>();
for(int i = 1; i <= dhcpsrvr.Scopes.Count; i++)
{
for(int j = 1; j <= dhcpsrvr.Scopes[i].Reservations.Count; j++)
{
reservations.Add(dhcpsrvr.Scopes[i].Reserations[j]);
}
}
}
}
不幸的是,在创建新预订时,支持的类型始终设置为“both”。在我们的网络中,我们只能使用DHCP。
任何人都知道如何通过DHCPOBJECTS.DLL将支持的类型设置为DHCP?
修改 好吧,似乎我无法通过DHCPOBJECTS.DLL更改此选项。 现在我将通过microsoft dhcp server management api
尝试实现这一点