0

メンテナンスリクエストページを作成するので、すべての従業員がインターネットなしでローカルネットワークからこのページを使用できます。リクエストを行ったコンピューター名とIPを取得したいのですが、

私はこれについて検索して読んでいますが、ほとんどの場合、インターネットIPまたはホスト名とIPを取得する方法ですが、私の質問は、Asp.Netで「ネットワークコンピュータ名とNetwokIP「インターネットIPではない」を取得する方法」です。 「??

インターネットIPとホスト情報について私が見つけたもののいくつかは次のとおりです。

using System.Net;
//Get the Host name:

    string strHostName = string.Empty;
    strHostName = Dns.GetHostName();

    // Then using host name, get the IP address list..
    IPHostEntry ipEntry = Dns.GetHostByName(strHostName);
    //Get the IP address
    IPAddress[] addr = ipEntry.AddressList;
    for (int i = 0; i < addr.Length; i++)
    {
        Response.Write("IP Address {0}: {1} " + i + addr[i].ToString() + ", HostName: " + strHostName);
    } 
    // end of host info.

そしてインターネット情報のためのこの方法:

Response.Write("Your IP Address: " + Request.UserHostAddress + "<BR>");
Response.Write("Your Computer Name: " + System.Net.Dns.GetHostEntry(Request.UserHostAddress).HostName);

それで、ローカルのIPとコンピュータの名前を取得する方法はありますか?

4

1 に答える 1

0

接続および切断時にコンピューターの名前で更新されるようにDNSが正しく構成されている場合は、逆解決を使用して、クライアントのIPアドレスからホスト名に戻すことができます。

Webサイトがファイアウォールの内側にある場合、接続されているユーザーのホストアドレスが内部アドレスになり、解決できます。サイトが外部(またはDMZ内)でホストされている場合、ユーザーが名前を提供する必要がない場合、またはクライアントで信頼できるコードを実行してローカル情報にアクセスすることなく、名前を取得することはできません。

于 2013-01-26T15:17:23.027 に答える