インターネット経由でリモート接続する方法です。
インターネット経由でリモート接続するためには、
ローカル環境でリモート接続する為の設定のほかにポート転送設定が必要になります。
「ポート開放」と言われたりもします。
ポート転送を使って、インタネット経由でリモート・デスクトップ接続する。
Contents
インタネット経由でリモートデスクトップ接続する為に必要な設定
以下の3つの設定が必要になります。
ファイアウォールや、リモートの許可はローカル環境でリモートデスクトップ接続する場合でも設定が必要です。
- ポート転送
- ファイアウォール設定(ローカルでも必要)
- リモートの許可(ローカルでも必要)
ポート転送について
ポート転送はインタネット経由でリモートする場合にのみ、追加で必要になる設定です。
言葉の通り、「ポート」を「転送」する設定です。
以下のような感じで、ルーターの設定画面から指定できると思います。
ソフトバンク光のルーター:光BBユニット2.3(E-WMTA2.3)の場合。
ポートを転送する理由
インターネットに限らず、パソコン間の通信では、IP アドレスを使用していますが、
ローカルネットワークで使用しているIP アドレスと、インターネットに接続する時に使用するIP アドレスは違います。
上の図で、ターゲットの端末はルーターを介してインターネットに接続しています。
※ここでいうルーターは、インターネットプロバイダーから送られてくるモデムにつながっているやつです。
ルーターは「グローバルアドレス」を使ってインターネットと通信しています。
インターネット側から見た場合、ターゲットのIP アドレスはグローバルアドレスに見えています。
インターネット側からターゲットに通信しようとしてグローバルアドレス60.227.147.XX にアクセスをしても、それはルーターのアドレスなので、ターゲットまで到達しません。
ターゲット自体がグローバルアドレスを使ってインターネットに接続すればこういう問題は起きませんが、
無数にあるコンピューターにグローバルアドレスを割り当ててしまうと、一瞬でIP アドレスがカンストしてしまう為、基本的に1拠点に1つのIP アドレスしかもらえません。
このアドレスが「グローバル・アドレス」です。インターネット空間で一意の装置を指すので、重複しないように管理されています。
インターネット接続に使えるIP アドレスが1つしかない為、インターネット通信はルーターが代理で行います。
各コンピューターには内部向けのIP アドレス使ってその内容を伝えています。
いわゆるPAT(Port Adress Translation)です。
この内部向けのIP アドレスが「ローカル・アドレス」です。
(内部の閉じたネットワーク限定のIP アドレスなので、既に使用されているIP アドレスを使っても問題は発生しません。)
この仕組みの為、インタネット側からルーターの向こう側にあるターゲットには直接IP アドレスを指定して通信ができません。
対策として、あらかじめルーターに「この番号へのアクセスがあったらターゲットのこの番号のポートに転送してください。」というルールを設定しておきます。
前置きが長くなりましたが、これが「ポート転送」設定です。
ポート転送を設定しておくことで、グローバルアドレスの任意のポートを介して、ターゲットとの直接通信が可能になります。
上の図の例では、60.227.147.XX:49152(ポート番号)にリモートデスクトップのプロトコルでアクセスすれば、ターゲットにリモート接続できます。
ポート転送の手順
手順はルーターによって異なりますが、たいして差はなく、大体同じだと思います。
参考として、ソフトバンク光の「光BBユニット2.3(E-WMTA2.3)」における、ポート転送設定をご紹介します。
セットアップページへのアクセス
ルーターに接続した状態で、172.165.255.254 にアクセスします。
ユーザー名:USER 、パスワード:USER(デフォルト)でログインします。
公式のサイトも参考にしてください。
ポート転送設定
くわしい設定から「ルーター機能設定」を選択します。
ポート転送設定をクリックします。
インターネット側からアクセスするポートと、転送先のコンピューターのIP アドレス、ポートを指定します。
以下の例では、ルータ49152 番ポートへの通信をローカルIP アドレス192.168.10.251 のコンピューター3389 番ポートに転送しています。
WAN 側(インターネット側)のポートが「3389」になっていないのは、
ひとつは何のポートを開けているか推察されにくくする為。
もうひとつは、他のPC 用にもリモートポート転送設定をしたいのでバッティングしないように、ズラしています。
- 設定した、ポート転送設定を有効にします。
- プロトコルを指定します。TCP or UDP を指定します。
- WAN 側のポートを範囲で指定します。
WAN はインターネットのことです。インターネット経由でアクセスする際のポート番号を範囲で指定します。 - LAN 側のポートを範囲で指定します。
ローカルネットワーク上のコンピューターのどのポートをに通信を転送するか、を指定します。 - 転送先のIP アドレスを指定します。
ローカルネットワーク上のどのコンピューターに通信を転送するか指定します。
設定をしたら、下にスクロールし、「設定を保存する」ボタンをクリックします。
保存後、ルーターを再起動して設定を反映します。
インターネット経由でリモート接続を確認
リモートできるようになっているか、iPhone アプリでテストしてみます。
iPhone のアプリからリモート接続する。
アプリはMicrosoft の「RD リモートディスクトップ」を使用しています。
「グローバルIP:任意のポート」でリモート接続。
特に問題なく、接続されました。
縦向きでも使えたら、神アプリだな。と思います。
※2022/6/5 追記:アップデートで縦持ちもできるようになりました。
VM にもリモート接続する。
VM でもリモートできるのか興味が湧いてきたので、VM に直接リモート接続を試したいと思います。
ネットワークアダプタの種類を「ブリッジ」にして、直接自宅ネットワークへ接続。
VM に固定IP を振り、リモート接続用のポートをマッピングをしてやれば、インターネット経由で直接VM に接続します。
VM のリモートディスクトップを有効に。
「RD Clinent」アプリから接続。
ポート毎に複数のVM を割り当て出来ました。
プチ・シンクライアントです。
iPhone(スマートフォン)でWindows を使うのが夢だったので、すげー楽しい。
Windows 10(iPhone)
インターネット経由でWOL (電源オン)もできるように設定。
また、強制的な電源オフもできるようにしました。
リモートで使用しているポート番号を変更する。
ポート転送の設定で3389 ポートと悟られないように番号をずらしていますが、リモートされる側のポート番号もあえてずらしたい場合は下記参照してください。
レジストリを編集してリモート接続用のポート番号を変更する
とりあえず、リモート接続のポートをデフォルトのままで開けておくのはさすがに危険な感じがするので、デフォルトから変更する。
レジストリの値を変更するだけみたいなので、そんなに難しくないです。
お使いのコンピューターでリモート デスクトップ用のリッスン ポートを変更する
レジストリエディタを開いて、
「コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber」の値を編集します。
ここで指定した値がそのままリモート接続のポート番号になる。
気を付けることは、有効なポート番号の範囲内の数字なこと、
ほかで使用されていないポート番号かどうかの確認くらい。
再起動して、別のパソコンからリモート接続を試し、ポートが変わっていることを確認。
ポート指定してリモートデスクトップ接続するには、
「IP アドレス : ポート番号」でコンピューターを指定します。
例:192.168.10.251:44445
ファイアウォールの設定
ファイアウォールでリモートディスクトップ接続の通信が阻害されてしまう場合、受信規則を作成します。
変更したリモートのポート番号を許可する受信規則を作成する。
以上です。
ピンバック: 【Windows 10】リモートデスクトップ接続でMMORPG をプレイする。 – .zapping