1、創建一個DNS服務:可以使用MulticastService
類來創建一個DNS服務實例,併爲其指定主機名和端口號。
var service = new MulticastService("mydns.local", IPAddress.Parse("224.0.0.251"), 5353);
2、添加DNS解析記錄:可以使用ServiceAnnouncement
類來添加DNS解析記錄,並將其綁定到DNS服務實例上。
var announcement = new ServiceAnnouncement(); announcement.InstanceName = "mymachine.local"; announcement.ServiceName = "_http._tcp.local."; announcement.Port = 80; announcement.TTL = TimeSpan.FromSeconds(30); service.AddAnnouncement(announcement);
3、搜索DNS解析記錄:可以使用MulticastClient
類來搜索DNS解析記錄。這個類提供了一個Lookup
方法
var client = new MulticastClient(IPAddress.Parse("224.0.0.251"), 5353);
var result = await client.Lookup("_http._tcp.local", "mymachine.local", TimeSpan.FromSeconds(5));
Console.WriteLine(result.Target);