dnsResolveとは? わかりやすく解説

Dns.Resolve メソッド

メモ : このメソッドは、互換性のために残されています。

DNS ホスト名または IP アドレスを IPHostEntry インスタンスに解決します。

名前空間: System.Net
アセンブリ: System (system.dll 内)
構文構文

<ObsoleteAttribute("Resolve is obsoleted for this type, please
 use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")>
 _
Public Shared Function Resolve
 ( _
    hostName As String _
) As IPHostEntry
Dim hostName As String
Dim returnValue As IPHostEntry

returnValue = Dns.Resolve(hostName)
[ObsoleteAttribute("Resolve is obsoleted for this
 type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")]
 
public static IPHostEntry Resolve (
    string hostName
)
[ObsoleteAttribute(L"Resolve is obsoleted for this
 type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")]
 
public:
static IPHostEntry^ Resolve (
    String^ hostName
)
/** @attribute ObsoleteAttribute("Resolve is obsoleted for
 this type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")
 */ 
public static IPHostEntry Resolve (
    String hostName
)
ObsoleteAttribute("Resolve is obsoleted for this
 type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")
 
public static function Resolve
 (
    hostName : String
) : IPHostEntry

パラメータ

hostName

DNS スタイルのホスト名、または IP アドレス。

戻り値
hostName で指定するホストについてのアドレス情報を格納する IPHostEntry インスタンス。

例外例外
例外の種類条件

ArgumentNullException

hostName が null 参照 (Visual Basic では Nothing) です。

ArgumentOutOfRangeException

hostName の長さが 126 文字を超えています。

SocketException

hostName を解決するときにエラーが発生しました。

解説解説
使用例使用例

Resolve メソッドを使用して、IP アドレスを IPHostEntry インスタンスに解決する例を次に示します。

Try
    ' Call the Resolve method passing a DNS style host name or an IP
 address in 
    ' dotted-quad notation (for example, "www.contoso.com"
 or "207.46.131.199") to 
    ' obtain an IPHostEntry instance that contains address information
 for the 
    ' specified host.
    Dim hostInfo As IPHostEntry = Dns.Resolve(hostString)
    ' Get the IP address list that resolves to the host names contained
 in the Alias 
    ' property.
    Dim address As IPAddress() = hostInfo.AddressList
    ' Get the alias names of the addresses in the IP address list.
    Dim [alias] As [String]() = hostInfo.Aliases

    Console.WriteLine(("Host name : " + hostInfo.HostName))
    Console.WriteLine(ControlChars.Cr + "Aliases : ")
    Dim index As Integer
    For index = 0 To [alias].Length - 1
        Console.WriteLine([alias](index))
    Next index
    Console.WriteLine(ControlChars.Cr + "IP Address list :")

    For index = 0 To address.Length - 1
        Console.WriteLine(address(index))
    Next index
Catch e As SocketException
    Console.WriteLine("SocketException caught!!!")
    Console.WriteLine(("Source : " + e.Source))
    Console.WriteLine(("Message : " + e.Message))
Catch e As ArgumentNullException
    Console.WriteLine("ArgumentNullException caught!!!")
    Console.WriteLine(("Source : " + e.Source))
    Console.WriteLine(("Message : " + e.Message))
Catch e As NullReferenceException
    Console.WriteLine("NullReferenceException caught!!!")
    Console.WriteLine(("Source : " + e.Source))
    Console.WriteLine(("Message : " + e.Message))
Catch e As Exception
    Console.WriteLine("Exception caught!!!")
    Console.WriteLine(("Source : " + e.Source))
    Console.WriteLine(("Message : " + e.Message))
End Try
try {
    IPHostEntry hostInfo = Dns.Resolve(hostString);
    // Get the IP address list that resolves to the host names contained
 in the 
    // Alias property.
    IPAddress[] address = hostInfo.AddressList;
    // Get the alias names of the addresses in the IP address list.
    String[] alias = hostInfo.Aliases;

    Console.WriteLine("Host name : " + hostInfo.HostName);
    Console.WriteLine("\nAliases : ");
    for(int index=0; index < alias.Length;
 index++) {
      Console.WriteLine(alias[index]);
    } 
    Console.WriteLine("\nIP Address list :");
    for(int index=0; index < address.Length;
 index++) {
       Console.WriteLine(address[index]);
    }
 }
 catch(SocketException e) 
 {
    Console.WriteLine("SocketException caught!!!");
    Console.WriteLine("Source : " + e.Source);
    Console.WriteLine("Message : " + e.Message);
 }
 catch(ArgumentNullException e)
 {
Console.WriteLine("ArgumentNullException caught!!!");
    Console.WriteLine("Source : " + e.Source);
    Console.WriteLine("Message : " + e.Message);
 }
 catch(NullReferenceException e)
 {
     Console.WriteLine("NullReferenceException caught!!!");
     Console.WriteLine("Source : " + e.Source);
     Console.WriteLine("Message : " + e.Message);
 }
 catch(Exception e)
 {
     Console.WriteLine("Exception caught!!!");
     Console.WriteLine("Source : " + e.Source);
     Console.WriteLine("Message : " + e.Message);
 }
try
{
   IPHostEntry^ hostInfo = Dns::Resolve( hostString );
   
   // Get the IP address list that resolves to the host names contained
 in the
   // Alias property.
   array<IPAddress^>^address = hostInfo->AddressList;
   
   // Get the alias names of the addresses in the IP address list.
   array<String^>^alias = hostInfo->Aliases;
   Console::WriteLine( "Host name : {0}", hostInfo->HostName );
   Console::WriteLine( "\nAliases : " );
   for ( int index = 0; index < alias->Length;
 index++ )
   {
      Console::WriteLine( alias[ index ] );

   }
   Console::WriteLine( "\nIP Address list :" );
   for ( int index = 0; index < address->Length;
 index++ )
   {
      Console::WriteLine( address[ index ] );

   }
}
catch ( SocketException^ e ) 
{
   Console::WriteLine( "SocketException caught!!!" );
   Console::WriteLine( "Source : {0}", e->Source );
   Console::WriteLine( "Message : {0}", e->Message );
}
catch ( ArgumentNullException^ e ) 
{
   Console::WriteLine( "ArgumentNullException caught!!!" );
   Console::WriteLine( "Source : {0}", e->Source );
   Console::WriteLine( "Message : {0}", e->Message );
}
catch ( NullReferenceException^ e ) 
{
   Console::WriteLine( "NullReferenceException caught!!!" );
   Console::WriteLine( "Source : {0}", e->Source );
   Console::WriteLine( "Message : {0}", e->Message );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( "Exception caught!!!" );
   Console::WriteLine( "Source : {0}", e->Source );
   Console::WriteLine( "Message : {0}", e->Message );
}
try {
    IPHostEntry hostInfo = Dns.Resolve(hostString);

    // Get the IP address list that resolves to the host  
    // names contained in the Alias property.
    IPAddress address[] = hostInfo.get_AddressList();

    // Get the alias names of the addresses in the IP address list.
    String alias[] = hostInfo.get_Aliases();

    Console.WriteLine("Host name : " + hostInfo.get_HostName());
    Console.WriteLine("\nAliases : ");
    for (int index = 0; index < alias.length;
 index++) {
        Console.WriteLine(alias.get_Item(index));
    }
    Console.WriteLine("\nIP Address list :");
    for (int index = 0; index < address.length;
 index++) {
        Console.WriteLine(address.get_Item(index));
    }
}
catch (SocketException e) {
    Console.WriteLine("SocketException caught!!!");
    Console.WriteLine("Source : " + e.get_Source());
    Console.WriteLine("Message : " + e.get_Message());
}
catch (ArgumentNullException e) {
    Console.WriteLine("ArgumentNullException caught!!!");
    Console.WriteLine("Source : " + e.get_Source());
    Console.WriteLine("Message : " + e.get_Message());
}
catch (NullReferenceException e) {
    Console.WriteLine("NullReferenceException caught!!!");
    Console.WriteLine("Source : " + e.get_Source());
    Console.WriteLine("Message : " + e.get_Message());
}
catch (System.Exception e) {
    Console.WriteLine("Exception caught!!!");
    Console.WriteLine("Source : " + e.get_Source());
    Console.WriteLine("Message : " + e.get_Message());
}
.NET Framework のセキュリティ.NET Framework のセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

dnsResolve

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2018/09/14 06:38 UTC 版)

「プロキシ自動設定」の記事における「dnsResolve」の解説

dnsResolve関数(および他の類似の関数)はDNSルックアップを実行するが、DNSサーバが応答しない場合、ブラウザを長時間ブロックすることがある。 Microsoft Internet Explorer 5.5以上でドメイン名によりプロキシ自動設定結果をキャッシュすることは、PAC標準の柔軟性を制限してしまう。実質的に、URLのパスに基づいてではなく、ドメイン名に基づいてプロキシを選ぶことになる。それを回避するにはレジストリを編集してプロキシ自動設定結果のキャッシュを無効にする必要がある(詳しくは発展学習のBoyne Pollardの記事を参照)。 Internet ExprolerのPAC設定を使用する.NET 2.0 Frameworkなどの他のWindowsコンポーネントとの互換性のために、isInNet関数内では、ホストのドメイン名ではなく、常にIPアドレスを用いることが推奨される。たとえば次のように書く: if (isInNet(host, dnsResolve(sampledomain), "255.255.248.0")) // .NET 2.0 は適切にプロキシを解決するだろうif (isInNet(host, sampledomain, "255.255.248.0")) // .NET 2.0 はプロキシを適切に解決できないだろう PACファイルが利用できない場合は直接接続にフェイルオーバーするのが現在の慣例である。 ネットワーク設定を切り替えた少し後(例:VPNに入るとき、あるいは出るとき)、dnsResolveがDNSキャッシュによる古い結果を返すことがある。 たとえば、Firefoxは通常20個のドメインのエントリーを60秒キャッシュしている。これは設定変数network.dnsCacheEntries およびnetwork.dnsCacheExpirationで設定できる。システムのDNSキャッシュを捨てることも役に立つ場合がある、これは例えばLinuxではsudo service dns-clean startで実行できる。

※この「dnsResolve」の解説は、「プロキシ自動設定」の解説の一部です。
「dnsResolve」を含む「プロキシ自動設定」の記事については、「プロキシ自動設定」の概要を参照ください。

ウィキペディア小見出し辞書の「dnsResolve」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ。


英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「dnsResolve」の関連用語

dnsResolveのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



dnsResolveのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのプロキシ自動設定 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2026 GRAS Group, Inc.RSS