HttpWebRequest#GetRequestStreamで初回必ず例外

.NET 2.0環境、Windows Vista上でデバッグしていて気がついたのだが、イントラネット上のWebサーバに、表題のクラス#メソッドで接続しにいくと、必ず初回に例外が発生する。

"対象のコンピュータによって拒否されたため、接続できませんでした。 XXXX::XXXX:XXXX:XXXX:XXXX:ポート番号"
(SocketErrorCode = System.Net.Sockets.SocketError.ConnectionRefused)

ローカル環境でテストしているので、試しに接続先を"localhost"に変更した所、

"対象のコンピュータによって拒否されたため、接続できませんでした。 ::1:ポート番号"

と表示されるので、どうやらIPv6での接続に失敗しているようだ。

ここまで見るとエラー処理で中断のはずだが、その後処理が継続しホストへの接続も完了しているようなので、実際にはIPv6接続 -> IPv4接続の順で試行し、その後は成功した方と接続を継続しているように見える。

処理が中断しないのは有り難いのだが、初回は必ず例外がスローされるため、精神的に気持ちが悪いことこの上ない。

追記
HttpWebRequest#ServicePoint#BindIPEndPointDelegateを使って、明示的に任意の(例えばIPv4限定とか)エンドポイントを解決できないか、調査中。

追記
以下のconfig記述によりDnsクラスからのIPcv6アドレスの解決を行わないようにできる、ということなので試してみたが、

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.net>
    <settings>
      <ipv6 enabled="false"/>
    </settings>
  </system.net>
</configuration>

この設定を使っても、相変わらず接続の初回は

"対象のコンピュータによって拒否されたため、接続できませんでした。 ::1:ポート番号"

となってしまう。app.configに書いても駄目なのか? それとも.NET2.0だから?