マイクラサーバー(サーバー全般)設置の際、たぶん初心者がハマるところ殿堂入りのドメインやDDNSについてです。応用の幅が広いのでここはじっくり取り組んでくだしあ。ここがわからないと厳しいです。
ドメインとDDNSについて
ドメインとDDNSについてざっくりと解説。マイクラサーバーを建てるために必要な知識を解説します。
ドメインのこと
ドメインは広大なネット世界のコンピュータを識別するための物で「住所」みたいなものです。IPと対応させ、簡単にアクセスできるようにするための物です。ここでは今から建てようとしているマイクラサーバーが、ネットの海のどこにあるのかがわかるものです。このサイトもドメインがあるからアクセスしやすくなってます。
このサイトで表すと「server.minecrafterししゃも.com」の部分がドメインです。
なんでドメインがいんねん?
PCやサーバーは、前に設定したIPで識別されます。ドメインがない世界だとこのサイトにアクセスするときにIPを指定します「XXX.YYY.ZZZ.TTT」みたいな最長12桁の数字を覚えないといけません。
10個も20個もいちいち覚えてられませんし、そもそもどんなサイトなのか推測すらできず気持ち悪いです。だからできるだけ人が覚えやすく、区別しやすいようにドメインが存在しています。
つまり何がいいたいかと言うとマイクラサーバーに覚えやすい文字列で遊びに来れるようにドメインを取得するってことです。
個人サーバーではさらに困る
IPはLANとWANで違います。LAN側はラズパイで固定した「192.168.X.Y」が主流です。各家庭にあるルーターが狭い範囲でIPを振るので被らないからです。ここまではいいです。
WAN側はグローバルIPと呼ばます。お使いのプロバイダから貸し出され、4つの数字はバラバラです。基本的にいつの間にやら変動します。タイミングも利用者にはわかりません。じゃあ固定にしたらええやん、と思いますよね?千差万別ですが、固定IPを使うためには別途料金が必要になります。因みにししゃもの使っているプロバイダだと、固定グローバルIPアドレスは1個につき4000円/月です。まぁ現実的じゃないよね( ˘•ω•˘ )
マイクラサーバーもご多分に漏れずIPで識別されるので、コロコロとグローバルIPが変わり、その度に何らかの方法で利用者に知らせないといけません。無理です。よっぽど面白いサーバーならともかく、パンピーのクソサーバーなんか、繋がらなくなった瞬間忘れられます。
じゃあどうするのか?ここからIPコロコロ変動問題をなんとかしてくれるDDNSについて知っていきましょう。
DNSとDDNSのこと
ドメインでアクセスしようとしたPCなどに、IPを教えて中継ぎしてくれる技術のことをDNS(Domain Name System、DDNSの間違いじゃないよ)と言います。このシステムを利用したサーバーとやりとりして、最終的にIPによって通信し始めます。
変動IPの場合、IPが変わってしまったら③のところで言われた場所にサーバーがないので入れません。交番で聞いた住所に行ってみたら更地だった……。みたいな感じです。引っ越し先を自動で交番に知らせといてくれると便利です(実際はそんなことしないけど)。それをしてくれるのがDDNS(Dynamic Domain Name System)です。
つまり何がいいたいかと言うとマイクラサーバーを安上がりに建てたい場合はDDNSを使うといいよってことです。
サーバー用のドメインを取ろう
以上のことを踏まえて。
- サーバー用ドメイン取得
- DDNSツール(DUC)を導入
していきます。ドメインは業者がたくさんあって、有料無料さまざまあります。まぁ無料でできた方がいいですよね。
ドメイン取得はNo-IPが便利
個人的に使い易いのはNo-IPという海外の業者で、マイクラサーバーでは結構使われています。3つまで無料でドメインが取得でき、独自のDUCというDDNSツールも無料で提供してくれています。DUCが修正されて使い易くなったので、もうNo-IP一択でいいんじゃね?って思います。回し者ではありません。
デメリットと言うか、無料の性質上仕方ないところもあって、30日以内ごとにサイトに行って、更新ボタンを押す必要があります。さらに .com とか .jp などはなく、 あまり見かけない形式が多いです。もちろん情報は自力収集でトラブルも自力解決です。
ドメイン取得の流れ
まずはドメインと紐づけるための自宅のIPアドレスを調べます。下記のサイトで確認できます。
左側にあるメニューのIPアドレス確認をクリックして出てくるのが現在のグローバルIPです。この画面は後でコピペするので残しておきましょう。
続いてNo-IPに登録します。
ホーム画面の下部に Hostname 、.hopto.org 、Sign Upと書かれたところに取得したいドメイン名を入れます。次の画面でメールアドレスとパスワードを入れて登録完了です。これで、ドメインが取得できました。
登録後メニューのDynamic DNSをクリックすると、ドメイン一覧が表示されるのでクリック。
IPアドレス入力画面になるので、さっき調べたIPをコピペしてUpdate Hostnameで完了です。これでドメインとIPが紐づきました。
自動更新のためにDUCを使う
さて、グローバルIPとドメインが紐づきましたが、今のままでは変動した時に見失ってしまいます。変動するたびにIPを調べてコピペなんてニートでもやってられないので、自動で変えてくれるようにしていきます。
No-IPが提供してくれているDUCと言うツールを使います。ラズパイで作業し常駐させます。ラズパイにログインしたら、作業用のディレクトリを作ります。
mkdir /home/server/noip
cd noip
DUCのファイルをダウンロードして解凍。できたディレクトリに移動します。
wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz
tar vzxf noip-duc-linux.tar.gz
cd noip-2.1.9-1
DUCのインストール
sudo make
sudo make install
Please enter the login/email string for no-ip.com Name
Please enter the password for user 'Name' ****************
NO-IPで登録したユーザー名とパスワードを順に入力します。
Do you wish to have them all updated?[N] (y/N)
まとめて更新するかの設定です。今回はN。サーバー監視用ラズパイなんかを設置する場合は、そっちに任せてやってもらうなどの使い方ができます。
Please enter an update interval:[30]
IPが変動したか確認する感覚です。15分くらいにしてます。お好みで。
Do you wish to run something at successful update?[N] (y/N)
更新時に合わせて何か実行するかの設定。特になければ N。これで設定はおしまい。最後にラズパイの起動に合わせてDUCも起動するようにしておきます。
sudo cp debian.noip2.sh /etc/init.d/noip2
sudo nano /etc/rc.local
切り替わった画面で exit 0 の前に以下を追加して保存します。できたらラズパイを再起動。
/etc/init.d/noip2 start
他にも自動起動の方法は結構ありますので、調べてみると面白いです。
ここまでで noip2 コマンドが使えるようになりました。オプションの -S をつけると情報が表示されます。
$ sudo noip2 -S
1 noip2 process active.
Process 655, started as noip2, (version 2.1.9)
Using configuration from /usr/local/etc/no-ip2.conf
Last IP Address set ***.***.***.***
Account Name
configured for:
host ***.***.net
Updating every 15 minutes via /dev/wlan0 with NAT enabled.
上記のように表示されたら上手くいっています。
これで山場を越えることができました。いやー全くLinux(と言うか通信とかのしくみ)が分からん初心者でハマったのなんので……。どうか皆さんがハマりませんように。
次はいよいよマイクラサーバーを起動します。