2

この場合の重要な違いであるインターネットではなく、ローカル LAN を介して別の部屋のコンピューターを制御しようとしています。これはHttpWebRequests、リモート コンピューターに特定の処理を実行するように命令するクエリ文字列を送信することによって行われます。コマンドの 1 つは、Cisco の AnyConnect クライアントを使用して VPN に接続するようにリモート コンピュータに指示することです。接続すると、正常に接続したことを制御しているコンピューターに返信する必要があります。

何故か、HttpWebRequest意志の返事がタイムアウト。奇妙なことに、私は問題なくインターネット経由で送信できるHttpWebRequestsので、ローカル LAN だけの問題のようです。この問題を回避するために、返信を送信するためだけに呼び出される別のコンソール アプリを作成しました。何が違うのかわかりませんが、うまくいきます。

これはコンソール アプリのコードです。これらは、メイン プログラムで使用されている 2 つの同じ行であり、機能しません。

 static void Main(string[] args)
    {
        // args[0] contains query string ie ?reply=VPNSuccess
        HttpWebRequest httpWebReq = (HttpWebRequest)WebRequest.Create(new  Uri("http://192.168.1.11:1000" + args[0]));
        HttpWebResponse httpWebResp = (HttpWebResponse)httpWebReq.GetResponse();

    }
4

1 に答える 1

0

VPN が接続されると、リモート マシンは別のサブネット上に新しい IP アドレスを持っている可能性があり、それを元に戻すことはできません。

自宅から会社の本社に VPN を接続すると、VPN が接続されると、デフォルトでローカル ネットワーク上のマシンに ping を実行できなくなります。これは、さまざまな設定で変更できます。

于 2012-05-01T19:54:07.280 に答える