C# WMI ile DNS Zone İşlemeriş


C# WMI ile Zone Silme

?
01
02
03
04
05
06
07
08
09
10
11
//ManagementObjectSearcher ile Zone'ları where ile istenilen zone'u select ederiz ( Yada where bildirilmeden tüm zone'lar silinebilir).
//Silme işlemi yapılacağından select ve where query sorugunuzu ve işleminizi dikkatli yapınız.
ManagementObjectSearcher mosr = new ManagementObjectSearcher(@"\ROOT\MicrosoftDNS", "SELECT * FROM MicrosoftDNS_Zone WHERE ContainerName = 'sedatkartal.com'");
foreach (ManagementObject contr in mosr.Get())
{
//Where ile bildirilen zone'u sileriz
contr.Delete();
}s

C# WMI ile Zone Listeleme

?
01
02
03
04
05
06
07
08
09
10
11
12
//ManagementObjectSearcher sınıfı ile dns zone 'leri select ederiz.
ManagementObjectSearcher mosr = new ManagementObjectSearcher(@"\ROOT\MicrosoftDNS", "SELECT * FROM MicrosoftDNS_Zone");
 foreach (ManagementObject conts in mosr.Get())
{
//foreach ile zone içinde dönerek containername 'leri listeleriz.
listBox1.Items.Add(conts["ContainerName"].ToString());
}s

C# WMI ile DNS Zone üzerine kayıt ekleme

?
01
02
03
04
05
06
07
08
09
10
11
12
//Scope ve Path verilir
ManagementClass dnsspace = new ManagementClass(@"\root\MicrosoftDNS", "MicrosoftDNS_ResourceRecord", null);
//Metod çağrılırManagementBaseObject kayitlar = dnsspace.GetMethodParameters("CreateInstanceFromTextRepresentation");
//Parametreler verilir
kayitlar["DnsServerName"] = null;
kayitlar["ContainerName"] = "sedatkartal.net"; //container adı
kayitlar["TextRepresentation"] = "sedatkartal.net" + ". IN A " + "195.149.41.14"; //Girilecek kayıt. . IN A , . IN CNAME ,  IN MX 10 mail. olarak kayıt tiplerinden biri girilebilir.
//Parametreler ile kayıt eklenir
ManagementBaseObject outObject = dnsspace.InvokeMethod("CreateInstanceFromTextRepresentation", kayitlar, null);s

C# WMI ile DNS Zone ekleme

DNS Zone Oluşturma;
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
//
//Scope ve path verilir;
ManagementClass zoneSpace = new ManagementClass(@"\ROOT\MicrosoftDNS", "MicrosoftDNS_Zone", null);
//CreateZone parametresi ile metod çağrılır
ManagementBaseObject kayitlar = zoneSpace.GetMethodParameters("CreateZone");
InvokeMethodOptions options = new InvokeMethodOptions();
//Yeni zone oluşturmak için zonename ve zonetype parametreleri verilir.
kayitlar["ZoneName"] = "sedatkartal.net";
kayitlar["ZoneType"] = 0; //primary,secondary,forwarder,stub tipleri için int türden değeri
//Aşağıdaki işlem sonrasında parametrelere göre zone ekleme işlemi tamamlanacaktır.
ManagementBaseObject OutParams = zoneSpace.InvokeMethod("CreateZone", kayitlar, options);
//Türkçe karakterli bir zone ekleyecekseniz IDN şeklinde yazmanız gerekmektedir.
//

Yorumlar

Bu blogdaki popüler yayınlar

Asp.Net ile Mernisten veri Çekme