2015年3月2日月曜日

Vagrantに外部から接続する

Vagrantで立てた仮想サバにとかく簡単に接続できる事を目標とする。


前提
  • Vagrantでアパッチちゃんサバが動いてる
  • アパッチちゃんサバにはポート80番でつなげられる。

アパッチちゃんサバでポート80番とかはデフォルトらしいから気にしなくていいかも。
気になるなら「apache 設定 httpd.conf」とかでググるといいかも。

Listen 80

とかなってたらたぶん大丈夫。(たぶん)

----------------------------------------------------------------

とゆーわけで早速Vagrantfileを弄くります。

config.vm.network :forwarded_port , guest: 80 , host: 80

これを書けばOK。
はい、Vagrant側の設定終わり。

----------------------------------------------------------------

PCのファイヤーウォール無効化します。
※かなり危険ですので推奨はしません。これが一番早いです。

「スタートメニュー」から「コントロールパネル」、「Windows ファイアウォール」
左側にあるリストの真ん中辺りの「Windows ファイヤーウォールの有効化または無効化」

あとは感じてください。

----------------------------------------------------------------

ポートの開放をします。
ルータを経由している場合、外部からは基本入ってこれないので、
入ってこれるように設定します。今回はbuffaloのルータの設定を例にとります。


まずエアステーションに入ります。
次にメニューバーから「ゲーム&アプリ」を選びます。
「任意のTCP/UDPポート」のところに「80」といれてそのまま新規追加します。
終わり。

これでルータは外部から80番指定で飛んできた方のみ通します。
だからWebブラウザで「**.**.**.***:80」って飛んできたら通すようになってる。
でもなぜか「:80」を消しても大丈夫。なんでだろう。

ちなみに「:79」とかで叩くと「アクセスは無効です」とかでる。

----------------------------------------------------------------

グローバルIPアドレスの確認と、ドメインの取得。
以下のHPで現在使ってるグローバルIPアドレスが地味に分かります。
また、簡単ながらドメインも取得できます。

無料ダイナミックDNS(DDNS)サービス


ページ中にある

回線 IPアドレス **.**.**.*** をDDNSに登録

の、「**.**.**.***(*は数字)」部分がグローバルIPアドレスですね。
ドメイン取得はググってください。


はい、グローバルIPアドレスが分かりました。
ついでにドメインも手に入ったかもね。

----------------------------------------------------------------


以上でやったこと纏めると


ルータは通せるようにする。
ファイヤーウォールを切ってPCに外部からアクセスできる(叩ける)ようにする。

グローバルIPで、外部からPCを叩ける。
PCのポート80番叩くと、Vagrantfileの力でVagrantの80番を叩く。


この4つですね。

----------------------------------------------------------------

最後に注意点をいくつか

なんか外部からのアクセスができない、つまづいたので。
スマホで外部接続しようとしたら、通信はできても必ずタイムアウトする。
要するに応答が無い状態にはまった。原因は以下
  • ルータから出てるwi-fiを使うと外部接続できない
  • てか家のルータを経由するような通信は外部接続できない(串ささないとダメ)
当たり前すぎて死にたくなったけど、ルータのwi-fi経由だめなのね……
あとPCからもダメなのね……





おまけ



もうすぐ夏ですよね。
「砂ノ竜」ということでここは一つ。

0 件のコメント:

コメントを投稿