0

Dynamic IP経由でインターネットに接続されているコンピューターがあります。そのため、C# で記述した TCP/IP サーバー プログラムに TCP /IP経由で接続できませんが、静的 IP でうまく動作します。DuckDNS.Org とhttp://freedns.afraid.org/でIP 転送DNS サービスを使用して、 test.mooo.comのような Web アドレス経由でマシンに ping を実行することにしました。

これで、この Web サブドメインを介して自分のコンピューターに ping を実行できるようになりましたが、私の質問は次のとおりです。

元々 IP のみを処理するクライアント プログラムを変更して、特定のポートでサーバーを実行しているコンピューターに接続し、Web アドレスを使用してコンピューターに接続するにはどうすればよいですか?

私はもう試した:

 client = new TcpClient("test.mooo.com", (int)Activity1.settingObj.port);

しかし、うまくいきません。前もって感謝します。私は C# を使用していますが、これは一般的な TCP/IP の質問だと思います。

4

2 に答える 2

1

ping は ICMP のみを検証します。それはTCPではありません。多くのファイアウォールは、他に何も許可されていない場合でも、ICMP に応答するか ICMP を通過するように設定されています。

お使いの PC は、NAT ファイアウォール/ゲートウェイの背後にある可能性があります。Linksys / Netgear タイプの DSL またはケーブル ルーターを使用している場合は、ポート フォワーディングがサポートされていることを確認する必要があります。通常、LAN 上の単一のプライベート IP アドレスにポートを転送するルールを設定できます。

また、PC 自体のファイアウォールも確認してください。Windows ファイアウォールが無効になっていることを確認するか、ポートの例外を追加してください。

極端な場合、一部の ISP は着信接続もブロックしますが、通常はそうではありません。

于 2014-10-24T09:04:54.210 に答える
0

多くの苦労の末、それを実現する方法は 2 つあります。最初に、静的 IP を提供するようにルーター設定を設定できる場合ですが、多くの場合、これは不可能です。2 番目の方法は、静的な「専用」IP を提供する VPN サービスを使用することです。これらのサービスは無料ではなく、この機能には毎月のサブスクリプション料金が課金されます。しかし、それは機能します。私はhttp://vpnstaticip.com/を試しました.VPNをテストするための試用期間は非常に限られています. 私はテストしましたが、結果は素晴らしいもので、IP スタティックを提供します。高価ですが、それを使用する正当な理由が必要です。

于 2014-10-26T04:06:22.790 に答える