ICS が有効になっている Windows 7 (64 ビット) でポート転送のトラブルシューティングを行うにはどうすればいいですか?

ICS が有効になっている Windows 7 (64 ビット) でポート転送のトラブルシューティングを行うにはどうすればいいですか?

インターネット ゲートウェイ マシンでいくつかのポート (Perforce の場合は 1666、Hudson の場合は 8081) を転送したいと考えています。このマシンは Windows 7 (64 ビット、正規、ユーザー アカウント) を実行しており、ケーブル モデム (ルーターではありません) 経由でインターネットに接続されています。Windows マシンは ICS 経由でインターネット接続を共有しており、接続されているすべてのコンピューターで正常に動作しています。

ゲートウェイ マシン自体でサービスが実行されている場合は、指定されたポートでゲートウェイのパブリック IP (95.xxx) を介してサービスにアクセスできます。インターネット ネットワーク アダプタの [詳細設定] ダイアログ ([共有] タブ) にポートと宛先 IP アドレス (192.168.0.18) を追加しました。これは、HTTP、FTP、その他の受信サービスなどの事前構成済みサービスのリストがあるダイアログと同じです。これを実行すると、サービスに接続できなくなります。何らかの理由でポート転送が機能していません。

ファイアウォールが干渉するかどうか確認したかったので、Bitdefender をアンインストールしました。また、Windows ファイアウォールと Defender を無効にしましたが、効果はありませんでした。ポート転送の設定に役立つフリーウェア ツールを試しましたが、これも機能しませんでした。

ターゲット マシンは、ファイアウォールが無効になっている Mac OS X コンピュータです。IP は静的です。ゲートウェイ コンピュータを含む 2 台の異なるマシンから、ローカル IP アドレス (192.168.0.18) を使用してサービスに正常に接続できます。したがって、内部的にも外部的にもポートは開いていてブロックされていないように見えますが、問題はポート転送自体にあります。

私の理解では、ファイアウォールが干渉していない場合にポート転送を有効にするには、[詳細設定] ダイアログにエントリを追加するだけで十分なはずです。ポート転送が機能しない原因をトラブルシューティングするにはどうすればいいですか? 問題を軽減するにはどのような手順に従う必要がありますか?

PS: コマンドラインソリューションも喜んで受け入れます。

私が試した他のこと:

  • Windowsファイアウォールに1666、8081ポートの受信規則を追加する
  • Windowsファイアウォールを有効または無効にして試す
  • ネットワークアダプタの無効化/有効化
  • IPアドレスが正しいことを再確認しました
  • 異なる受信ポートをサービスの実際のポートにマッピングする
  • この記事のその他のヒントに従ったり確認したりしました

まだ挑戦していないこと(試してみる価値があるかどうか教えてください):

  • ICS を無効/有効にする
  • すべてのネットワークアダプタを削除し(コントロールパネル経由)、再インストールして再構成します。

答え1

解決しました。

Windowsファイアウォールをデフォルト設定にリセットし、ICSを無効にして再度有効にした後、ポート転送が機能するようになりましたが、パスポートツールこれにより、ポート転送が Windows サービスとしてインストールされます (管理者権限で実行する必要があります)。

Passport の優れた点は、IP アドレスだけでなく DNS アドレスもポート転送できることです。そのため、Passport のインターフェースを通じて次のようなことが可能になります。

myserver.no-ip.org:8081 --> 192.168.0.18:8081

答え2

Windows 7 では、次のようにしてコマンド ラインからポート転送を手動で設定できます。

netsh interface portproxy add v4tov4 listenport=1666 listenaddress=95.x.x.x connectport=1666 connectaddress=192.168.0.18 protocol=tcp

答え3

Windows 7 でのポート転送は、接続共有タブのチェックボックスで非常に簡単です。[設定] ボタンが 1 つあります。そのボタンをクリックすると、すでにリストされているサービスが編集できます。また、新しいサービスを追加することもできます。サービス名 (例: http) を入力できます。

サービスをホストしているコンピュータのアドレス/名前(例:192.168.1.100、ポート 80、プロトコル [tcp/udp])

このように、任意の数のサービスを追加し、任意の数のポートを転送できます。これは非常に簡単です。netshや他のサイトで提供されるポート転送プログラムは使用しないでください。

関連情報