現在、NetgearルーターとDD-WRTファームウェアを使用しています。
カメラアプリケーションがインストールされたラップトップがあります。アプリケーションは、パブリックアドレスとポートを使用してカメラを操作します。私が仕事をしているとき、アプリは正常に機能しますが、自宅では機能しません。自宅では、IPアドレスをプライベートに変更して構成を変更する必要があります。ただし、職場ではIPアドレスをパブリックに変更する必要があります。そして、私はそれを何度も繰り返します。
ケースは次のようになります。
+-----------------+ +------------------+
| Camera 01 | | Camera 02 |
| 192.168.1.10:80 | | 192.168.1.11:80 |
| from port: 8081 | | from port: 8082 |
+-----------------+ +------------------+
\ /
\ /
+-------------+ +------------------+-----------------+
| ISP |---/---| Router (WAN port)| Router(local IP)|
| 128.x.x.107 | | 192.168.10.1 | 192.168.1.1 |
+-------------+ +------------------+-----------------+
パブリックIPアドレスを使用して、たとえば128.xx107:8081を入力して、外部から(職場などから)コンピューター上のカメラにアクセスできます。
192.168.1.10と入力して、LANからカメラにアクセスすることもできます。
残念ながら、パブリックIPアドレス128.xx107:8081を使用してLANからカメラにアクセスすることはできません。誰もそれを行う方法を知っていますか?
NATループバック/リフレクション/ヘアピニングについて多くのことを読みましたが、私の問題に対処するのに十分なほど理解していません。
次のルールを使用して、LANからパブリックIPアドレスを介してルーターに接続できました。
iptables -t nat -I PREROUTING -d 128.x.x.107 -j DNAT --to 192.168.1.1
iptables -t nat -I POSTROUTING -s 192.168.1.1 -j SNAT --to 128.x.x.107
。。しかし、上記のルールでルーターのアドレス(192.168.1.1)の代わりにカメラアドレス(192.168.1.10)を使用すると、機能しません。
これで私を助けてもらえますか?