イーサネット経由でルータに接続されたRaspbianを実行するRaspberry Piがあります。たとえば、ルータは DCHP と静的 IP アドレスで動作し、ローカル LAN では SSH 経由で正しく接続できます。ただし、そのデバイスはルーターの接続されているデバイスのリストにまったく表示されないため、外部アクセス用のポート転送を設定できません。
もともとはルータの問題だと思っていましたが、今は2つの異なるルータ(BT Home Hub 2とEdimax BR-6428)を使ってみましたが、同じ結果が出てくるのでOSの問題だと思います。
デバイスがルーターに表示されるようにするには、いくつかの設定を行う必要がありますか?
答え1
Rpiが静的IPを使用するネットワーク上にある場合は、自分自身を「広告」するためにルータと通信しません。
非常に簡単な解決策は、upnpcプログラム(次の場所)を使用することです。小さなNPCパッケージ)を使用してポート転送を動的に設定します。常にルーターを調整するよりもはるかに簡単です。
ルータでupnpを有効にする必要があり、これには一般的な考慮事項が適用されます。
次のコマンドは、インターネットポート1337をサーバーの内部ポート22に転送します。
upnpc -e "ssh server" -a $(hostname --all-ip-addresses) 22 1337 tcp
もちろん、詳細についてはupnpcのマンページを参照してください。ただし、ここでは-e
設定転送設定名が表示され、サーバーの-a
IPアドレスが一覧表示され、最後の3つの項目は内部ポート、外部ポート、接続タイプ(tcp)です。 /udp)。
また、同様のコマンドを使用して、DMZとすべてのセキュリティエントリを設定する必要なしに、外部で自分のWebサーバーにポート80を転送します。 (いいえ、ここに実際の外部SSHポート番号を入力していません...!)
別の方法は、ルータでRpiの静的DHCP設定を設定し、Rpiを再び動的IP(DHCP)モードに切り替えることです。しかし、RPiアドレスが変更される可能性があるため、一種のネームサーバーシステムも設定しない限り、従ってこれはすぐにトリッキーになることがあります。 (はい、そうではありません。しなければならない到着... )
最善のアプローチは必要に応じて調整されるため、現在のIPアドレスを使用して独自の転送を設定することです。