0

インターネットへの WCF サービスにアクセスできるようにするために、Upnp によるルーターへのポート マッピングを行う ac# コードを作成しました。

upnp スクリプトはこちら

                        object[] loObj = new object[] { "", port, "TCP", port, adresse_ip, true, "Custom Mapping", 0 };
                    lsService.InvokeAction("AddPortMapping", loObj);

入力ポートは 87 で、出力ポートも 87 です。

マッピングは Netgear DGN1000 に正常に登録されています (upnp テーブルで確認できます)

Actif   Protocole   Port Interne    Port Externe    Adresse IP
YES     TCP       87                  87              192.168.0.12

localhst:87/servicemodelsamples/service および 192.168.0.12:87/servicemodelsamples/service 経由で Web サービスにアクセスできます

しかし、 MY_PUBLIC_IP:87/servicemodelsamples/service 経由ではアクセスできません。

Windows 8 ファイアウォールを無効にしました

ルーターで作成した手動ルールを使用している場合、動作しますが、upnp 神経を介して

ご協力ありがとうございました

4

1 に答える 1

0

ポートマッピングは、そのポートでのインバウンドトラフィックも許可されることを意味するわけではないことに注意してください。

ポート87は1000未満です。一部の(古い)ルーターは、undpに関係なく、デフォルトで1000未満のポートへのインバウンドトラフィックをブロックします。

ルーターのルールを確認して、ポート87でインバウンドトラフィック(udp / tcp)を許可します。

于 2013-01-13T22:29:36.280 に答える