<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FNetwork%2FDNS</id>
		<title>Csharp/C Sharp/Network/DNS - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FNetwork%2FDNS"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/Network/DNS&amp;action=history"/>
		<updated>2026-04-30T01:11:10Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/Network/DNS&amp;diff=1475&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/Network/DNS&amp;diff=1475&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:19Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/Network/DNS&amp;diff=1476&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/Network/DNS&amp;diff=1476&amp;oldid=prev"/>
				<updated>2010-05-26T11:47:07Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==DNS Address Resolver==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Net;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class AsyncResolve: Form {&lt;br /&gt;
   TextBox address;&lt;br /&gt;
   ListBox results;&lt;br /&gt;
   private AsyncCallback OnResolved;&lt;br /&gt;
   public AsyncResolve()&lt;br /&gt;
   {&lt;br /&gt;
      Text = &amp;quot;DNS Address Resolver&amp;quot;;&lt;br /&gt;
      Size = new Size(400,380);&lt;br /&gt;
      OnResolved = new AsyncCallback(Resolved);&lt;br /&gt;
&lt;br /&gt;
      Label label1 = new Label();&lt;br /&gt;
      label1.Parent = this;&lt;br /&gt;
      label1.Text = &amp;quot;Enter address to resolve:&amp;quot;;&lt;br /&gt;
      label1.AutoSize = true;&lt;br /&gt;
      label1.Location = new Point(10, 10);&lt;br /&gt;
      address = new TextBox();&lt;br /&gt;
      address.Parent = this;&lt;br /&gt;
      address.Size = new Size(200, 2 * Font.Height);&lt;br /&gt;
      address.Location = new Point(10, 35);&lt;br /&gt;
      results = new ListBox();&lt;br /&gt;
      results.Parent = this;&lt;br /&gt;
      results.Location = new Point(10, 65);&lt;br /&gt;
      results.Size = new Size(350, 20 * Font.Height);&lt;br /&gt;
      Button checkit = new Button();&lt;br /&gt;
      checkit.Parent = this;&lt;br /&gt;
      checkit.Text = &amp;quot;Resolve&amp;quot;;&lt;br /&gt;
      checkit.Location = new Point(235,32);&lt;br /&gt;
      checkit.Size = new Size(7 * Font.Height, 2 * Font.Height);&lt;br /&gt;
      checkit.Click += new EventHandler(ButtonResolveOnClick);&lt;br /&gt;
   }&lt;br /&gt;
   void ButtonResolveOnClick(object obj, EventArgs ea)&lt;br /&gt;
   {&lt;br /&gt;
      results.Items.Clear();&lt;br /&gt;
      string addr = address.Text;&lt;br /&gt;
      Object state = new Object();&lt;br /&gt;
      Dns.BeginResolve(addr, OnResolved, state);&lt;br /&gt;
   }&lt;br /&gt;
   private void Resolved(IAsyncResult ar)&lt;br /&gt;
   {&lt;br /&gt;
      string buffer;&lt;br /&gt;
      IPHostEntry iphe = Dns.EndResolve(ar);&lt;br /&gt;
      buffer = &amp;quot;Host name: &amp;quot; + iphe.HostName;&lt;br /&gt;
      results.Items.Add(buffer);&lt;br /&gt;
      foreach(string alias in iphe.Aliases)&lt;br /&gt;
      {&lt;br /&gt;
         buffer = &amp;quot;Alias: &amp;quot; + alias;&lt;br /&gt;
         results.Items.Add(buffer);&lt;br /&gt;
      }&lt;br /&gt;
      foreach(IPAddress addrs in iphe.AddressList)&lt;br /&gt;
      {&lt;br /&gt;
         buffer = &amp;quot;Address: &amp;quot; + addrs.ToString();&lt;br /&gt;
         results.Items.Add(buffer);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Application.Run(new AsyncResolve());&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==DNS Get Host By Name==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Net;&lt;br /&gt;
public class DNSName&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
    string hostName = Dns.GetHostName();&lt;br /&gt;
    Console.WriteLine(&amp;quot;Local hostname: {0}&amp;quot;, hostName);&lt;br /&gt;
    IPHostEntry myself = Dns.GetHostByName(hostName);&lt;br /&gt;
    foreach (IPAddress address in myself.AddressList)&lt;br /&gt;
    {&lt;br /&gt;
       Console.WriteLine(&amp;quot;IP Address: {0}&amp;quot;, address.ToString());&lt;br /&gt;
    }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==DNS Name Resolution==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Net;&lt;br /&gt;
public class DNSNameResolution&lt;br /&gt;
{&lt;br /&gt;
  [STAThread]&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    IPHostEntry MyHost = Dns.Resolve(args[0]);&lt;br /&gt;
    foreach (IPAddress MyIP in MyHost.AddressList)&lt;br /&gt;
    {&lt;br /&gt;
      Console.WriteLine(MyIP.Address);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==DNS Reverse Lookup and Lookup==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Net;&lt;br /&gt;
//DnsLookup&lt;br /&gt;
class Program {&lt;br /&gt;
    static void Output(IPHostEntry ipHostEntry) {&lt;br /&gt;
        Console.WriteLine(&amp;quot;Host: {0}&amp;quot;, ipHostEntry.HostName);&lt;br /&gt;
        Console.WriteLine(&amp;quot;\nAliases:&amp;quot;);&lt;br /&gt;
        foreach (string alias in ipHostEntry.Aliases) {&lt;br /&gt;
            Console.WriteLine(alias);&lt;br /&gt;
        }&lt;br /&gt;
        Console.WriteLine(&amp;quot;\nAddress(es):&amp;quot;);&lt;br /&gt;
        foreach (IPAddress address in ipHostEntry.AddressList) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Address: {0}&amp;quot;, address.ToString());&lt;br /&gt;
        }&lt;br /&gt;
        Console.ReadLine();&lt;br /&gt;
    }&lt;br /&gt;
    static void Lookup(string hostname) {&lt;br /&gt;
        IPHostEntry ipHostEntry = Dns.GetHostByName(hostname);&lt;br /&gt;
        Output(ipHostEntry);&lt;br /&gt;
    }&lt;br /&gt;
    static void ReverseLookup(string address) {&lt;br /&gt;
        IPHostEntry ipHostEntry = Dns.GetHostByAddress(address);&lt;br /&gt;
        Output(ipHostEntry);&lt;br /&gt;
    }&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
&lt;br /&gt;
        Lookup(&amp;quot;www.microsoft.ru&amp;quot;);&lt;br /&gt;
        ReverseLookup(&amp;quot;172.18.1.1&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Find DNS Servers==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using Microsoft.Win32;&lt;br /&gt;
public class FindDNSServers&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      RegistryKey start = Registry.LocalMachine;&lt;br /&gt;
      string DNSservers = @&amp;quot;SYSTEM\CurrentControlSet\Services\Tcpip\Parameters&amp;quot;;&lt;br /&gt;
      RegistryKey DNSserverKey = start.OpenSubKey(DNSservers);&lt;br /&gt;
      if (DNSserverKey == null)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Unable to open DNS servers key&amp;quot;);&lt;br /&gt;
         return;&lt;br /&gt;
      }&lt;br /&gt;
  &lt;br /&gt;
      string serverlist = (string)DNSserverKey.GetValue(&amp;quot;NameServer&amp;quot;);&lt;br /&gt;
      Console.WriteLine(&amp;quot;DNS Servers: {0}&amp;quot;, serverlist);&lt;br /&gt;
      DNSserverKey.Close();&lt;br /&gt;
      start.Close();&lt;br /&gt;
      char[] token = new char[1];&lt;br /&gt;
      token[0] = &amp;quot; &amp;quot;;&lt;br /&gt;
      string[] servers = serverlist.Split(token);&lt;br /&gt;
      foreach(string server in servers)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;DNS server: {0}&amp;quot;, server);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Find DNS Servers from Registry==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using Microsoft.Win32;&lt;br /&gt;
class FindDNSServers {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        RegistryKey start = Registry.LocalMachine;&lt;br /&gt;
        string DNSservers = @&amp;quot;SYSTEM\CurrentControlSet\Services\Tcpip\Parameters&amp;quot;;&lt;br /&gt;
        RegistryKey DNSserverKey = start.OpenSubKey(DNSservers);&lt;br /&gt;
        if (DNSserverKey == null) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Unable to open DNS servers key&amp;quot;);&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
        string serverlist = (string)DNSserverKey.GetValue(&amp;quot;NameServer&amp;quot;);&lt;br /&gt;
        Console.WriteLine(&amp;quot;DNS Servers: {0}&amp;quot;, serverlist);&lt;br /&gt;
        DNSserverKey.Close();&lt;br /&gt;
        start.Close();&lt;br /&gt;
        char[] token = new char[1];&lt;br /&gt;
        token[0] = &amp;quot; &amp;quot;;&lt;br /&gt;
        string[] servers = serverlist.Split(token);&lt;br /&gt;
        foreach (string server in servers) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;DNS server: {0}&amp;quot;, server);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get DNS Address Info==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Net;&lt;br /&gt;
public class GetDNSAddressInfo {&lt;br /&gt;
   public static void Main(string[] argv) {&lt;br /&gt;
      if (argv.Length != 1) {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Usage: GetDNSAddressInfo address&amp;quot;);&lt;br /&gt;
         return;&lt;br /&gt;
      }&lt;br /&gt;
      IPAddress test = IPAddress.Parse(argv[0]);&lt;br /&gt;
      IPHostEntry iphe = Dns.GetHostByAddress(test);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Information for {0}&amp;quot;,&lt;br /&gt;
                     test.ToString());&lt;br /&gt;
      Console.WriteLine(&amp;quot;Host name: {0}&amp;quot;, iphe.HostName);&lt;br /&gt;
      foreach(string alias in iphe.Aliases)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Alias: {0}&amp;quot;, alias);&lt;br /&gt;
      }&lt;br /&gt;
      foreach(IPAddress address in iphe.AddressList)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Address: {0}&amp;quot;, address.ToString());&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get DNS Host Info==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Net;&lt;br /&gt;
public class GetDNSHostInfo&lt;br /&gt;
{&lt;br /&gt;
   public static void Main(string[] argv)&lt;br /&gt;
   {&lt;br /&gt;
      if (argv.Length != 1)&lt;br /&gt;
      {&lt;br /&gt;
       Console.WriteLine(&amp;quot;Usage: GetDNSHostInfo hostname&amp;quot;);&lt;br /&gt;
       return;&lt;br /&gt;
      }&lt;br /&gt;
      IPHostEntry results = Dns.GetHostByName(argv[0]);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Host name: {0}&amp;quot;,&lt;br /&gt;
                       results.HostName);&lt;br /&gt;
      foreach(string alias in results.Aliases)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Alias: {0}&amp;quot;, alias);&lt;br /&gt;
      }&lt;br /&gt;
      foreach(IPAddress address in results.AddressList)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Address: {0}&amp;quot;,&lt;br /&gt;
                     address.ToString());&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get Resolve Info:DNS==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
using System;&lt;br /&gt;
using System.Net;&lt;br /&gt;
public class GetResolveInfo&lt;br /&gt;
{&lt;br /&gt;
   public static void Main(string[] argv)&lt;br /&gt;
   {&lt;br /&gt;
      if (argv.Length != 1)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Usage: GetResolveInfo address&amp;quot;);&lt;br /&gt;
         return;&lt;br /&gt;
      }&lt;br /&gt;
      IPHostEntry iphe = Dns.Resolve(argv[0]);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Information for {0}&amp;quot;, argv[0]);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Host name: {0}&amp;quot;, iphe.HostName);&lt;br /&gt;
      foreach(string alias in iphe.Aliases)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Alias: {0}&amp;quot;, alias);&lt;br /&gt;
      }&lt;br /&gt;
      foreach(IPAddress address in iphe.AddressList)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;Address: {0}&amp;quot;,&lt;br /&gt;
                     address.ToString());&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>