私IPなしこのアカウントは、自宅のSSHサーバーにリモートでアクセスするために使用されますがmyserver.ddns.net
、外部でのみ機能します。
外から:
リモートping:
$ ping myserver.ddns.net # success
リモートSSH:
$ ssh myserver.ddns.net # success
現地で:
ローカルping:
$ ping 192.168.2.8 # success
ローカルSSH:
$ ssh 192.168.2.8 # success
リモートping:
$ ping myserver.ddns.net # success, resolving to 90.113.108.192
リモートSSH:
$ ssh myserver.ddns.net # loOong time waiting, then..
Connection closed by 90.113.108.192 port 22
なぜですか?
答え1
より正確には、内部ネットワークからNATにアクセスすることに関連する答えは次のとおりです。次の理由でそうしたくありません。
- 消費者クラスの技術の限界。
- パフォーマンスの理由 - NATはより多くのCPUリソースとメモリを使用します。しかし、国内規模では問題にはなりません。
- ルーティングはより複雑です。これを使用またはデバッグします。
選択肢は次のとおりです。
- ローカルサーバーからのみアクセスする場合は、ホストファイルエントリを作成します。
- ネームサーバーを作成し、パブリックDNS名のビューを作成します。お客様が提示する場合はありませんが、通常は企業で使用されます。
- ネームサーバーを作成し、ssh.homeなどのカスタム内部名を作成します。
- BIND+RPZ を使用し、外部名を内部 IP アドレスに再定義します。
- ルーティングにLinuxシステムを使用している場合は、iptables + NATを使用して外部IPへのSSHセッションをキャプチャし、それを内部IPアドレスにNATします。
IPアドレスのキャプチャ/ホストファイルの作成に関する私の意見については、自宅でDDNSアドレスを処理する方法に関する回答をご覧ください。ISPの変更IPアドレスを処理するためのより良い方法は何ですか?
BIND + RPZの場合は、以下を参照してください。