
ホーム ネットワークに接続しているときは、ファイル サーバーにネットワーク ドライブをマップしています。ルーターにポート転送を設定し、静的 IP アドレスを設定しているので、外出中でも SSH でファイルにアクセスすることができます。ローカル ネットワークに接続していることを検出し、同じドライブ文字 (E:) を使用しながら、外部 IP パスではなくそのパス (192.168.xx) を使用するように Windows を設定する方法はありますか。また、その逆も可能ですか。
答え1
1つの問題は、いつオンにするかを決めることですあなたの他の人のローカル ネットワークではなく、ローカル ネットワークです。つまり、私の自宅のサブネットは 192.168.1.0/24 ですが、職場のローカル サブネットも 192.168.1.0/24 です。
私も自宅のサーバーでホストしているサービスをいくつか持っていますが、同じ状況に直面しています。この問題を解決するには、自宅の外部 IP アドレスにドメイン名を設定し、自宅のネットワークで独自の DNS サーバーをホストします。
自宅にいないときは、mydomainname.com はパブリック IP アドレスに解決され、関連する転送ポートを介してリモートで接続します。自宅の DNS サーバーで、mydomainname.com の DNS レコードを手動で追加し、ローカル アドレス [192.168.1.x] を指すようにして、パブリック DNS レコードを上書きします。
つまり、すべてのスクリプト/構成に mydomainname.com を使用するだけで済み、使用される IP アドレスは、自宅にいるか外部にいるかに基づいて DNS サーバーによって決定されます。
もちろん、DNS サーバーを設定すると、状況が [当然ながら] 対処できる範囲を超えて複雑になる可能性があります。pfSense または他の形式のルーター/ゲートウェイ ファームウェアを検討することをお勧めします。これにより、処理がはるかに簡単になります。
代替案として、ルーター/ゲートウェイが「NAT リフレクション」と呼ばれる機能をサポートしているかどうかを確認してください。この機能により、内部ネットワーク上で外部 IP アドレスを使用して接続し、正しくルーティングされた接続を取得できます。あまりエレガントではありませんが、状況によっては十分かもしれません。