"myIpAddress"関数では、Internet Explorer 9 で不適切な結果を返します

現象

次のシナリオを検討してください。

シナリオ1

  • プロキシ自動構成 (PAC) ファイルを使用するのには、Windows Internet Explorer 9 を構成するとします。

  • コンピューターはインターネットに接続します。

  • 仮想アダプターを追加するコンピューターでアプリケーションをインストールするとします。たとえば、VMware Player をインストールします。

  • PAC ファイルは、インターネットへのアクセスに使用されるネットワーク アダプターの IP アドレスを取得するためにmyIpAddress関数を呼び出します。

このシナリオでは、 myIpAddress関数は、仮想アダプターの IP アドレスを返します。

たとえば、PAC ファイルに次の関数を作成します。この状況では、 myIpAddress関数は、仮想アダプターの IP アドレスを返します。function FindProxyForURL(url, host){
if (shExpMatch(myIpAddress(), "10.0.0.*")
{
//Bypass the proxy for URLs with-in the local domain
if (shExpMatch(host, "*.local.domain.com")) { return "DIRECT"; }

//Bypass the proxy when accessing local sites
if (isPlainHostName(host)) { return "DIRECT"; }

// Everything else goes through Proxy
return "PROXY 10.0.0.254:8080";
}

//Assume the computer is not at work.
return "DIRECT";
}

シナリオ2

  • PAC ファイルを使用して、Internet Explorer 9 を構成するとします。

  • コンピューターはインターネットに接続します。

  • 仮想プライベート ネットワーク (VPN) を介して企業ネットワークには、追加の接続を確立します。

  • PAC ファイルは、VPN 接続の IP アドレスを取得するためにmyIpAddress関数を呼び出します。

このシナリオでは、 myIpAddress関数は、インターネット接続の IP アドレスを返します。

回避策

この問題を回避するには、Internet Explorer 9 の独自のカスタムmyIpAddress関数を記述します。たとえば、次の関数を記述できます。function myIE9IpAddress() {
var ipex = myIpAddressEx();
if (ipex === false)
{
var myip=myIpAddress();
return myip;
}
var iparray = ipex.split(";");
for (j=0; j < iparray.length;j++)
{
var ipaddress=iparray[j];
//IPv6 adress : skip
var parts=ipaddress.split("::");
var firstpart=parts[0];
if (firstpart==="[fe80")
{
//alert("skipping IPv6 address :"+ ipaddress);
continue;
}

//IPv4 address starting with 192.: skip
parts=ipaddress.split(".");
firstpart=parts[0];
if (firstpart === "192")
{
//alert("skipping IPv4 address starting with 192. :"+ ipaddress);
continue;
}
break;
}
return ipaddress;
}

解決策

修正プログラムの情報

サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この修正プログラムは、この資料に記載された問題があったシステムのみに対して適用してください。この修正プログラムは、今後さらにテストを行う場合があります。したがって、この問題の影響が深刻でない場合は、この修正プログラムが含まれる次のソフトウェア更新プログラムがリリースされるまで待つことをお勧めします。

修正プログラムをダウンロードできる場合は、本サポート技術情報の資料の上部に「修正プログラムをダウンロードできます」というセクションがあります。このセクションが表示されていない場合は、マイクロソフト カスタマー サービス サポートにお問い合わせのうえ、修正プログラムを入手してください。

ヘルプを表示

スキルを磨く
トレーニングの探索
新機能を最初に入手
Microsoft Insider に参加する

この情報は役に立ちましたか?

フィードバックをお送りいただきありがとうございます!

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×