こんにちは。Milkです。
ノートPCを持ち歩いているけれど、家にあるパソコンを操作したい。
そんな時はありませんか?
以前の記事で説明をしたのですが、家の中のパソコンは、基本的に「プライベートIP」というものが割り振られています。
このIPアドレスではインターネットにはつながっていません。
プラバイダからは1つの「グローバルIP」が1回線ごとに割り振られており、「ルーター」が上手く処理をしているという話でした。
では、外出先から家の中のパソコンってアクセス出来ないの?
実は、「ルーター」の設定をしっかりやってあげれば、上手くアクセスすることが出来ます。
今回は、それを説明しましょう。
問題を整理しよう
少し問題を整理してみましょう。
- インターネットにつなげるには「グローバルIP」アドレスが必要
- 家には1個の「グローバルIP」しかない
- 家の中でつながっているパソコンは「プライベートIP」を割り振っている
- 「ルーター」が「グローバルIP」と「プライベートIP」の変換を行っている
結論から言うと、「ルーター」の設定を変更します。
「ポート変換」
と言うものです。
無線LAN(Wi-Fi)付きのルーターを利用している方も多いでしょう。
どの「ルーター」を利用しているにせよ、説明書の中に「ルーター」へのアクセス方法が載っているはずです。
ポート変換を行う(ポート開放/ポートフォワーディング)
家の中から通信を行った時、その最中に出会うのは「ルーター」です。
通信データ「ルーターさん。家の●●パソコンさんからデータが欲しいと言われて来ました。」
ルーター「よし。通っていいぞ。●●パソコンはあっちの方向じゃ。」
普通ならこういうやり取りで終わりです。
しかし、外部から直接にアクセスすると・・・
外部からの通信「ういっす。」
ルーター「お主。何者。」
外部からの通信「外から来たっす。」
ルーター「誰に用事があるのだ?」
外部からの通信「えーっと。この家の住所(グローバルIP)しか教えてもらってないんすよね。どのパソコンとか分かんないっす。」
ルーター「帰れ!誰に用事があるのか分からんものは通せん!!」
こんな怪しいやつ誰が通すか!
IPアドレスを確認する
後々に必要になるので、現在の「プライベートIP」を確認しておきましょう。
コマンドプロンプトで、以下を入力して下さい。
> ipconfig /all
ルールを決めよう
家の内部から通信が始まれば「ルーター」も認識しますが、いきなり外から来られても困りますって話なんです。
だって、その家の誰に用事があるのか分からないんですから。
という訳で、予めルールを決めてしまいましょうというのが、「ポート変換(ポート開放/ポートフォワーディング)」と言うものです。
ポートと言うのは、その名の通り「船着き場」を意味するポートから来ているのですが、パソコンには通信の役割ごとに着発するポートというものがあります。
例えば、リモートデスクトップはRDP通信と言って、「3389」というポートを使うのが一般的です。
では、誰の「3389」ポートにたどり着けば良いのか?
それを決めましょうということなのです。
さて、「ルーター」にアクセスを行います。
今回は、「BUFFALO」の「ルーター」で説明を行います。
「詳細設定」を選択すると、「セキュリティー」に「ポート変換」があります。
以下の様に設定を行います。
これは、『リモートデスクトップでアクセスが来たら、家の中の「192.168.11.17」の「プライベートIP」を使っているパソコンに、リモートデスクトップ(RDP通信)として通してあげて下さい。』という意味です。
では、「192.168.11.17」を使うパソコンを固定化しないといけませんね。
IPアドレスを固定化する
外から操作したいパソコンに対して、以下の部分を設定しなければなりません。
先程、コマンドプロンプトで確認した内容を打ち込みましょう。
今までは、DHCPと言って空いた番号を割り振られていましたが、これを「必ずこのプライベートIPアドレスにして下さい」と設定するのです。
これで「プライベートIP」の固定化が出来ました。
リモートデスクトップで接続を行う
これで設定は終了です。
「グローバルIP」アドレスを指定して、リモートデスクトップでアクセスしてみて下さい。
すると、「ルーター」はRDP通信だなと理解して、ポート変換を確認します。
そして、変換先のパソコンへ「RDP通信が届いてるぞー!」と投げてくれるのです。
中継する部分で変換をルール化するので、これで通信が確立します。
では、「グローバルIP」アドレスはどうやって確認するの?
それは、ルーターのステータスを見てみましょう。
そこに今までとは違う数値の「IPアドレス」が書いてあるはずです。
最後に
通常はこの方法でOKなはずです。
セキュリティで守られているのは、「ユーザーIDとパスワード」だけになりますから、これがバレると誰でもリモートデスクトップで操作が出来てしまうことになります。
その点は注意して下さい。
もう少しセキュリティを上げるとすれば、「3389」ポートを馬鹿正直に使わないということですね。
外向けには1024以上の数字で使われていないもの。例えば「27453」なんて数字にして、これを「プライベートIP」の「8839」に変換するようにします。
すると、リモートデスクトップでは、
グローバルIPアドレス:27453
として接続してあげれば、そのポート番号が何を意味しているのかは分かりにくくなります。
更に暗号化してセキュリティを高めるというSSH通信を利用した方法もあるのですが、これはちょっとややこしいやり方になります。
それは、また別の機会にご説明しますね。
それでは、今回はこの辺で。
adios!!