Windows 7 のポート転送範囲

Windows 7 のポート転送範囲

Windows 7 デスクトップでいくつかの範囲をポート転送したいです。理想的には、この目的のためにデスクトップ ユーティリティを使用したいのですが、これ以外には見つかりませんでした。http://www.quantumg.net/portforward.php

ただし、ポート番号は受け入れられますが、ポート範囲は受け入れられません。したがって、10,000 個のポートを転送する必要がある場合は、10,000 個のエントリを追加する必要があります。

もっと良い方法はありますか? コマンドラインユーティリティとスクリプトは、利用できる場合は同様に有効です。

答え1

良い代替案は見つかりませんでしたが、アイデアはあります。

あなたが言及したプログラムを使用すると、ポート、宛先、およびローカル ポートの情報が入力されたテキスト ファイルから読み込むことができます。

いくつかの範囲を指定してこの情報をテキスト ファイルに出力するプログラムを作成するのは非常に簡単です。その後、そのテキスト ファイルを、先ほど言及したポート転送プログラムに読み込むことができます。

これは私がただまとめた Java プログラムです (初心者プログラマーなのでごめんなさい)

package portforwardranges;
import java.io.File;
import java.io.PrintWriter;

public class PortForwardRanges {

    PortForwardRanges(){
        try {
            PrintWriter pw = new PrintWriter(new File("output.txt"));
            for (int i = 50; i <= 100; i++){
            pw.print(i);
            pw.print(" 192.168.1.2 ");
            pw.print(i);
            pw.println();
            }

            pw.close();

        } catch (Exception ex) {
            System.out.println(ex);
        }
    }

    public static void main(String[] args) {
        PortForwardRanges app = new PortForwardRanges();
    }
}

そして、次の内容を含む output.txt というファイルを作成します。

50 192.168.1.2 50
51 192.168.1.2 51
52 192.168.1.2 52
53 192.168.1.2 53
54 192.168.1.2 54
...

50 から 100 までで、ローカル ポートと宛先ポートは同じです。必要に応じて変更してください。

答え2

James T のソリューションを拡張したバッチ スクリプトを次に示します。

何か.cmd

FOR /L %G IN (50, 1, 100) DO ECHO %G 192.168.1.2 %G >> hi.txt

説明:

  • 50は開始番号です
  • 1はループごとのステップです
  • 100は終了番号です

宛先のポート範囲を「移動」する場合 (例: 送信元で 50 ~ 100、宛先で 100 ~ 150)、次のバッチ スクリプトを使用します。

setlocal ENABLEDELAYEDEXPANSION 
FOR /L %%G IN (50, 1, 100) DO ( 
set /a dest=%%G+50 
ECHO %%G 192.168.1.2 !dest! >> hi.txt) 

ライン セットは、/a dest=%%G+50送信元ポートからの距離を設定します。

より長くても、保守しやすいスクリプトが必要な場合:

@echo off
setlocal ENABLEDELAYEDEXPANSION
set start=150
set step=5
set end=200
set destdistance=-50
set ip=192.168.1.2
set outputfile=output.txt


FOR /L %%G IN (%start%, %step%, %end%) DO ( 
set /a dest=%%G%destdistance%
ECHO %%G %ip% !dest! >> %outputfile%) 

関連情報