社内SEの徒然なる日記

プロキシサーバ経由のWindowsUpdateが異常終了する


少し前に、パソコン(Windows7)にVisio2002をインストールしたのですが、WindowsUpdateが指示されました。

放置するのも気持ち悪いので実行したのですが、何故か異常終了してしまいました。
proxyとWindowsUpdate (1)

proxyとWindowsUpdate (2)

proxyとWindowsUpdate (3)

発生したエラーコードは、8024002D。

毎月実行している定例のWindowsUpdateは問題なく動くのに、いったい何が起こったんだろうか?


色々調べたのですが、プロキシサーバ経由でインターネットに接続している場合、WindowsUpdateが失敗することがあるそうです。

参考URL:https://support.microsoft.com/ja-jp/kb/2894304/ja

要約すると、WindowsUpdateのプロキシサーバは「Internet Explorer のプロキシサーバー設定」と「WinHTTP のプロキシ設定」のどちらかが使用されるということで、WinHTTP側の設定がされていないことが原因だそうです。

嫌らしいことに、この「WinHTTP」とやらのプロキシ設定を行う画面はないそうで、コマンドでガリガリやらないとダメだそうです。

・・・勘弁してくれよ。

■ 確認

まず、使用できるコマンドを確認します。

コマンドプロンプトから「netsh winhttp ?」と実行します。
c:¥>netsh winhttp ?

使用できるコマンドは次のとおりです:

このコンテキストのコマンド:
? - コマンドの一覧を表示します。
dump - 構成スクリプトを表示します。
help - コマンドの一覧を表示します。
import - WinHTTP プロキシ設定をインポートします。
reset - WinHTTP 設定をリセットします。
set - WinHTTP 設定を構成します。
show - 現在の設定を表示します。

コマンドのヘルプを表示するには、コマンドの後にスペースを入れ、
? と入力してください。


「netsh winhttp show」辺りで現在の設定を確認できるようです。
c:¥>netsh winhttp show ?

使用できるコマンドは次のとおりです:

このコンテキストのコマンド:
show proxy - 現在の WinHTTP プロキシ設定を表示します。
show tracing - 現在の WinHTTP トレース パラメーターを表示します。

c:¥>netsh winhttp show proxy

現在の WinHTTP プロキシ設定:

直接アクセス (プロキシ サーバーなし)。


ふむ、「netsh winhttp show proxy」と打たないとダメみたいですね。そして、プロキシサーバが設定されてないと出てきました。

■ 設定

「netsh winhttp set」辺りで設定できそうなのですが・・・
c:¥>netsh winhttp set ?

使用できるコマンドは次のとおりです:

このコンテキストのコマンド:
set proxy - WinHTTP プロキシ設定を構成します。
set tracing - WinHTTP トレース パラメーターを構成します。

c:¥>netsh winhttp set proxy ?

使用法: set proxy [proxy-server=]<サーバー名> [bypass-list=]<ホスト一覧>

パラメーター:

タグ 値
proxy-server - http または https プロトコルに使用するプロキシ サーバー
bypass-list - プロキシをバイパスすることで表示するサイトの
一覧 (短い名前のホストをすべてバイパスする場合は
"<ローカル>" を使用)

例:

set proxy myproxy
set proxy myproxy:80 "<ローカル>;bar"
set proxy proxy-server="http=myproxy;https=sproxy:88" bypass-list="*.foo.com"


確かに出来そうですが、打つのが面倒です。

そこで目を付けたのが「netsh winhttp import」です。
c:¥>netsh winhttp import ?

使用できるコマンドは次のとおりです:

このコンテキストのコマンド:
import proxy - プロキシ設定を IE からインポートします。

c:¥>netsh winhttp import proxy ?

使用法: import proxy [source=]ie

パラメーター:

タグ 値
source - 設定のインポート元

例:

import proxy source=ie


おぉ、どうやらIEの設定を読み込めるようです。ではやってみましょうか。
c:¥>netsh winhttp import proxy source=ie

現在の WinHTTP プロキシ設定:

プロキシ サーバー: 1*0.1.**.15*:8080
バイパス一覧 : 10.11.10.*;10.250.1.*


「netsh winhttp import proxy source=ie」とコマンドを実行すると、設定結果まで表示してくれるようです。

■ 後書き

なお、IEのプロキシサーバの設定でプロキシパック(自動構成スクリプト)を使用している場合、このコマンドではダメみたいです。その場合は、素直に「netsh winhttp set proxy ****」と手動で設定して下さい。

パラメータで「bypass-list」とあり、説明が「プロキシをバイパスすることで表示するサイトの一覧」とかありますが、要するにプロキシサーバを使用しないパスの設定です。

ぶっちゃけると、省略しても良いと思います。どうせWindowsUpdate位でしか使用しないでしょうからね。

投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

コメント


管理者にだけ表示を許可する