ShinShin さん こんにちは
最近この辺はあまり関わってないので情報が古いかもしれません。
外出先から自宅にアクセスする場合、自宅の IP アドレスがわからなければなりません。固定 IP サービスであればこの番号は変わりませんが、一般的なインターネット回線の場合はプロバイダに接続する度に変化します(接続タイミングによっては同じだったりしますが)。この変化する IP アドレスを example.com のように置き換えるダイナミック DNS(以下 DDNS とします)というサービスがあります。多くが海外のサービスだと思いますが NO-IP や DynDNS といったサービスがあるのでまずはそちらでアカウントを作成します。次に自宅でサーバになる PC で DDNS クライアントを起動します。DDNS クライアントはグローバル IP アドレスを一定間隔でチェックし、変化があれば DDNS サービスへ更新通知を行います。これで外出先からは常に example.com でアクセスできるようになります。(一定間隔でグローバル IP アドレスを携帯電話にメールで送りつけるという方法もありそうですが…)
最近(といってももうかなり前からですが)では DDNS に対応しているルータもあります。この場合、自宅の PC で DDNS クライアントを動作させておく必要はありません。ルータによって対応している DDNS サービスが異なり、例えば Buffalo の製品では Buffalo が独自に「バッファロー・ダイナミックDNS」というサービスを提供しています。
通常、外からのアクセスはポートフォワーディング(IP マスカレード)が設定されている PC のみとなります。例えば外向きの 80 番のポートを 192.168.1.2 に接続する設定しているなら外部からはそこへしかアクセスできませんし、当然自宅の 192.168.1.3 という PC にもアクセスできません。ただ、これでも自宅にある PC にはアクセスできるので VNC サーバを動作させておけば外部から操作することは可能です。
VPN 接続の場合はクライアントを同一ネットワーク下に置くことができます。例えば外部からアクセスしている IP アドレスが 222.222.222.222 だった場合、VPN ルータ(サーバ)が新しく 192.168.1.100 という IP アドレスを付与してくれます(つまり自宅に居るのと同じ状態)。これによって 222.222.222.222 <-> 192.168.1.100 <-> 192.168.1.2 という感じで自宅の 192.168.1.* にある全ての PC にアクセスができるので操作はもちろんファイル共有だってできます。
簡単なのは「VPN 対応のルータを買ってきて設定して、サーバで VNC などのプログラムを立ち上げておく」でしょうか。自宅にサーバを設置するときの注意点も挙げておきます。
- プロバイダがサーバの設置を許可していないことがあります。
- そもそも外部からアクセスできない回線。レオパレスのネットとかはローカル扱いなので外からアクセスできなかった気がします。あと WiMAX もたまにグローバル IP ではなくローカル IP が付与されることがあるとかだったような。
- VPN ルータを使用する場合、回線終端装置やモデムの PPPoE を停止できない場合はルータがグローバル IP を取得できないため DDNS などのサービスを使用できないかもしれません。
ソフトウェアで言えば TeamViewer というのもあります。これは別のサーバが外部と自宅の遠隔操作を中継してくれます(Google Chrome のリモートデスクトップに似た感じ)。確かパスワード認証の自動応答にも対応していた気がします。各マシンにソフトウェアをインストールしておく必要があり、レスポンスも直接接続よりは落ちると思いますが導入はそこそこ簡単かと。あと上記の注意点を気にしなくて済みます。クライアントは Linux/Win/Mac の他に iOS、Android にも対応しています。
という感じで色々書きましたが詳しく検証していないのであまりアテにならないかもしれません
![Confused :?](./images/smilies/icon_e_confused.gif)