![ポート転送を使用して、どこからでもインターネット経由でIP経由でローカルホストのWebサイトにアクセスします](https://rvso.com/image/1419579/%E3%83%9D%E3%83%BC%E3%83%88%E8%BB%A2%E9%80%81%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81%E3%81%A9%E3%81%93%E3%81%8B%E3%82%89%E3%81%A7%E3%82%82%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E7%B5%8C%E7%94%B1%E3%81%A7IP%E7%B5%8C%E7%94%B1%E3%81%A7%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E3%83%9B%E3%82%B9%E3%83%88%E3%81%AEWeb%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%97%E3%81%BE%E3%81%99.png)
申し訳ありませんが、私はソフトウェアの人間で、ネットワークについてはあまり詳しくありません。似たような投稿を見たのですが、それに従ってもうまくいきません。私は Mac を使っています。私の IP は動的 IP です。私の Mac はワイヤレス ルーターに接続されており、ワイヤレス ルーターはタイマー ワーナー モデムに接続されています。私は localhost:9000 で Web サイトを運営しています。今、インターネットのどこからでもこのサイトにアクセスしたいと考えています。ドメイン名は気にしません。IP アドレスを直接使用しても問題ありません。
- 私はMacのパブリックIPを次のサイトで見つけました翻訳元外部 IP として xxxx が指定されました。
- 次に、システム環境設定のネットワークでローカル IP 192.168.1.2 を見つけました。
- routerlogin.net にログインし、HTTP ポート転送を外部ポート 9000 から終了ポート 9000 へ、内部ポート 9000 から終了ポート 9000 へ、内部 IP 192.168.1.2 へ追加しました。
次に、別のネットワークに接続された別のマシン (OS: Windows 8) に移動し、xxxx:9000 と入力しましたが、アクセスできませんでした。次に、その Windows コンピューターから xxxx に ping を実行しましたが、機能せず、タイムアウトになりました。何が問題なのでしょうか? Mac でファイアウォールが無効になっています。
注意: 静的 IP ではなく、動的 IP です。これは問題でしょうか? この場合、静的 IP は必須でしょうか?
私が試したもう 1 つのことは、Windows 8 (別のネットワークに接続) から whatismyip.com にアクセスしてパブリック IP を取得し、Mac にアクセスして ping を実行したところ、うまくいきました。
次に、同じネットワークで動作するかどうかを確認してみました。そこで、Android モバイルを、Mac が接続されている同じワイヤレス ルーターに接続しました。次に、携帯電話で、Chrome ブラウザに 192.168.1.2 と入力しましたが、動作しませんでした。192.168.1.2:9000 と入力しましたが、動作しませんでした。xxxx:9000 と入力しましたが、動作しませんでした。ただし、Android ターミナル エミュレーターでは、Mac のパブリック IP xxxx への ping は動作し、ping -p 9000 192.168.1.2 も動作しました。
答え1
ようやく問題が見つかりました。問題は私の grunt サーバー (yeoman) にあります。外部アクセスを有効にするには、gruntfile.js のホスト名を localhost から 0.0.0.0 に変更する必要があります。
答え2
または、両端に NeoRouter をインストールして、ルーターでのポート転送を完全に回避し、同時にパブリック IP アドレスを毎回学習する必要も回避できます。