2011年7月31日日曜日

インターネットから自宅PCにリモートデスクトップで接続する方法

最近、デスクトップPCを購入したので外のインターネットからリモートデスクトップで利用できるように設定しましたので記録しておきます。

利用した環境は以下です。

自宅PC: Windows 7 Ultimate
外のPC: Windows 7 Ultimate
ルータ: PR-S300NE(DHCP設定)

1.自宅PCのリモートデスクトップ接続の設定

1-1.自宅PCがリモートデスクトップのホストとして機能するか確認します。
特にWindows7の場合はProfessional以上でないとホストとして機能しません。

1-2.自宅PCがリモートデスクトップのホストとして接続できるように設定します。
これはシステムプロパティからリモートタブを選択してリモートデスクトップが利用できるように設定します。
詳しくは以下を参照ください。

リモート デスクトップ接続: よく寄せられる質問
http://windows.microsoft.com/ja-JP/windows7/Remote-Desktop-Connection-frequently-asked-questions

1-3.IPアドレスを固定にします。
ローカルエリア接続のプロパティで現在設定されているプライベートIPアドレスを固定にして設定します。

1-4.電源の設定でコンピュータのスリープ状態にすることをなしとします。
これをしないといざ外に出てからつなごうとしたときにスリープしていて接続できないといったことになります。

2.ルータのポート解放の設定

色々方法はあると思いますが一般の家庭のインターネット環境ではグローバルIPが一つだけ割り当てられている環境となるため静的IPマスカレードの設定によりインターネット側からのアクセスを可能とします。
難しい話は無しとして私の環境(PR-S300NE)では以下のようにするとできました。

2-1.http://ntt.setup/にアクセスします。ユーザ名はuser,パスワードは0000で入れました。
2-2.詳細設定から静的IPマスカレードメニューをクリックする。
2-3.エントリ番号1の編集をクリックする。
2-4.変換対象プロトコルをTCP,変換対象ポートを3389,変換アドレスを1.で固定に指定したプライベートIPアドレスを指定して設定ボタンを押します。
2-5.保存ボタンを押します。

詳細は以下を参照ください。

PR-S300NE ポート開放の説明
http://www.akakagemaru.info/port/PR-S300NE.html

3.グローバルIPアドレスを確認する。

あなたのグローバルIPとホスト名を表示 ~テレビジネス ソフトウェア~
http://dog.tele.jp/lookup.php

上記URLよりグローバルIPアドレスが確認できます。
ついでにチェックしたいポート番号に3389を入力して先ほどポート解放したポートが有効かをチェックします。

4.インターネットからリモートデスクトップで接続する。

先ほど確認したグローバルIPアドレスからリモートデスクトップで接続します。
こちらでの環境では同じLANネットワーク内からではグローバルIPアドレスを指定しても接続できなく、外部からであれば接続できました。

おまけ.DynamicDNSを利用してグローバルIPアドレスとホスト名を紐付ける。

IPアドレスだと変更される場合や外に行ってから忘れる可能性があります。
DynamicDNSサービスを利用すると好きなホスト名でリモートデスクトップを利用することができます。
またDynamicDNSサービスへグローバルIPアドレスの更新を送信するソフトとしてはDiCEがあります。
私はDynamicDNSサービスはNo-IPを利用しました。

NO-IP ダイナミックドメイン登録方法
http://www.akakagemaru.info/port/ddns/noip.html

上記のように自宅PCに外部からリモートデスクトップでつなぐには結構な手間がかかりました。
一括でやってくれるところがあればよいです。
また上記の方法の場合は電源をつけたままなのでWoLで外部から電源を復帰させることができれば電源も節約できそうですね。これはまた次の機会に試してみたいと思います。