Dns.Resolveとは? わかりやすく解説

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

hostNamenull 参照 (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」を含む「プロキシ自動設定」の記事については、「プロキシ自動設定」の概要を参照ください。

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


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Dns.Resolve」の関連用語

Dns.Resolveのお隣キーワード
検索ランキング

   

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



Dns.Resolveのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS