• ベストアンサー

ゲーム用Linuxサーバー構築

現在C言語でオンラインゲームの製作をしている者です。 ネットワーク部分を作成しようと思ったのですがあまりに知識がないために書籍や検索の方向すら分からない状態です。 自身で分かりうる範囲内で調べたところ私が目指す形態は「サーバー型」のネットワークシステムだと分かりました。 速度的にLinuxに軍配が上がるということを知り、ゲームを実行するOSはWindowsですがTCP/IPという規格のおかげでサーバーとクライアントのOSを一致させる必要がないようなので、オンラインゲーム用Linuxサーバーを構築することを目標としました。 (目標内容としては30人くらいが同時にチャットできるシステム) しかしこの先、多種多様な情報から必要なものかどうかを判断できずに困っております。 知りたい情報は以下の通りです。 ・サーバには種類?があるらしいのですが(SSH、DHCP、Samba、DNS、Mail、Web、FTP、プロキシ)ゲーム用途に使うサーバーはどれにあたるのか?またこの考え方自体が間違っているのか? ・ネット通信の例をみたところ、当たり前ですがサーバー側にもプログラムというものが存在するようです。このプログラムはLinuxのOS上で作成するものなのか?また言語は何になるのか?またその言語の中で速度的に有利なものはなんなのか?開発ソフトが存在するのか?デバッグはできるのか?(果てしなく続きます) 上記の内容を理解したうえで参考になる書籍を購入したいと考えています。 「参考URL」「書籍名」「検索に必要なワード」「ライブラリ名」 手がかりになる情報を少しでも頂ければ幸いです。 自身の検索能力が低いことでお手を煩わせていることは重々承知しておりますが、何卒よろしくお願いいたします。 こちらも再度調査していく姿勢であります。 失礼いたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ゲームには詳しくないのですが、今の段階で分かる範囲で。 ・ゲーム用途に使うサーバ サーバは、「サービスを提供する側」なだけです。SSHならSSHクライアントにSSHサービスを提供します。 ゲーム用途には、他のどのサービスも不要です。 ゲームサーバというものをあなた自身で作る必要があります。専用サーバになるので、ゲームクライアントも必要だと思いますが。 作りようによっては、何か別のサービスを使用するかも知れませんが、作り方なのでなんとも言えません(たとえば、通信を暗号化したい、というのであれば、てっとり早くSSHトンネルを使おう、と言うことでSSHサーバを使うかも、ということです)。 ・サーバ側のプログラム もちろんLinux上で稼働するものを作ります。 言語は何でも構いません。全部自分で選べます。 処理速度、開発効率、拡張のしやすさ、メンテのしやすさ、その辺を考慮して言語を選んでください。 処理速度が一番なら、C言語あたりじゃないでしょうか? ゲーム用の開発環境というかゲームエンジンは存在します。 ゲーム開発はしたことがないので、どこまでこの辺りを使うのかはすみませんが分かりません。 とりあえず、参考になりそうな書籍 http://www.amazon.co.jp/dp/4797328460 あとは以下などどうでしょう? 実際にゲームサーバを立てているので、流れは理解できるような気がします http://www.geocities.jp/htmdoc/l2j/index.html 失礼ながら、現段階ではゲームサーバ開発に至るまでの基本的な知識が足りていないように思います。 最初は誰でもそうなので、目標を達成するため、少しずつ学んで行って下さい!

gogoo1
質問者

お礼

回答ありがとうございます。 本を早速注文しました。 私の提示したサーバーの種類というのはどうやら「サービス」を指していたのですね。 このサービス自体を作ることが今回の目的に必要な作業のようです。 言語はどれでも良いということなのでCを使うことにします。 さっそくこれらのワードで検索したところ思ったようなサイトが沢山見つかり感謝しております。 またライブラリ(サーバ側もクライアント側も)も存在するようなので導入の検討をすることにします。 WindowsでいうところのVisualシリーズのような開発環境を探してみたのですがこちらは見当たりませんでした。もう少し検索してみたいと思います。 ゲームエンジンについても検討してみますがライセンスと安全性の兼ね合いで使用しない可能性が高いです。 頭の中を整理してみると クライアント部分(Windowsで開発) ↓↑ APIがありそうだった(なければライブラリ自作) ↓↑ TIP/IP規格のデータ?としてやりとり ↓↑ サーバー部分(Linuxで開発) 脳内でこのような図式が完成しました。 あとはクライアントが複数になっても処理に無理がこないようなシステムを構築していけば良いわけですね。 Linux上でC言語は動かず、未知の言語を勉強しなければならないと想像していたので少し前が見えました。 また簡易HPサーバー用の本は沢山出版されているようなのでこちらもLinuxに慣れる意味も含めて注文してみました。 2つ目に提示していただいたものでも練習できそうなのですが、商品開発元の気持ちを考えると合法違法抜きにして今回は遠慮させていただくことにします。 Linux自体起動したこともなく、質問の内容が浅すぎで何を聞いているのか分かりにくいにも関わらず的を射て頂き感謝します。 ありがとうございました。

その他の回答 (1)

回答No.2

ちょこちょこと。 >WindowsでいうところのVisualシリーズのような開発環境を探してみたのですがこちらは見当たりませんでした。もう少し検索してみたいと思います。 一番近いトコだとEclipseかNetBeansでしょうね。 Eclipse: http://eclipsewiki.net/eclipse/ NetBeans: http://ja.netbeans.org/ VisualシリーズはWindows「だけ」のものなんで、今後の事考えると乗り換えた方が良いような気がします。EclipseもNetBeansもマルチプラットフォームなので。 >Linux上でC言語は動かず、未知の言語を勉強しなければならないと想像していたので少し前が見えました。 LinuxはUNIXクローンですが、元々C言語はUNIXを書く為に開発された言語です。従って、Linux上でC言語が動かない、って事はあり得ません。 (そして、Linux自体がCで書かれています) ちなみに、「使える」言語の数から言うと、Linux対応言語数はWindowsの比じゃないです。 従って、#1さんが仰る >言語は何でも構いません。全部自分で選べます。 と言うのは恐らく貴方が想像しているモノ「以上」の候補対象数がありますよ。 凄いヘンチクリンな言語さえLinuxでは「簡単に」見つかりますからね。

gogoo1
質問者

お礼

ご回答ありがとうございます。 本も届きシステムの全体像が見えてきたところであります。 開発環境の紹介までして頂き感謝します。 URLを参考に環境の乗り換えも視野にいれながらじっくり検討してみたいと思います。 本当にありがとうございました。

関連するQ&A

  • 自宅Linuxサーバ構築について

    はじめまして。どなたか教えてください。 自宅でLinuxにて、WEBサーバを構築しようとしているのですが、 どうもネットワーク的にADSLモデムを認識しておらず、 インターネットへ接続できません。 なにかLinux側の設定が必要なのでしょうか?? ちなみに、ネットワーク構成としては、こんな感じです。 ※無線LANルータにPCとLinuxが接続されております。  【外部へ】-【(1)ADSLモデム】-【(2)無線LANルータ】--【(3)PC(WindowsXP)】                               │                                --【(4)Linux(fedora6)】  ローカルIPは以下の通りです。。  (1)192.168.0.1  (2)192.168.11.1  (3)192.168.11.3  (4)192.168.11.2 気になる状態としては、(3)から(1)へのPINGは行えるのですが、 (4)から(1)へのPINGが通らないということです。 ※(3)→(2)、(4)→(2)へはPINGが通り、(3)→(4)へのSSH接続もできてます。 ※PCからのインターネット接続はできてます。 Linux素人なので情報として、なにが必要なのか把握できて いないので、足らない情報があれば連絡ください。 よろしくお願いします。

  • Linuxでサーバ構築するにあたって

    現在、Turbolinux8でメール(QMAIL)サーバが稼動しています。 そのサーバのHDDの状態が怪しいとのことで 差し当たって万が一の場合を考えてバックアップ機として 同一の環境をもう1つ構築することになりました。 Linuxの構築経験はないので 勉強しながら構築することになるのですが、 差し当たって現状がどうなっているの? って辺りを抑えていないといけないとは思うのですが、 さすがにただ構築するだけなら書籍を見れば それなりに作れるとは思うのですが、 いきなり環境調査となるとさすがにどうすれば? といった状態になっています。 どんな情報をどれだけ集めればよいのか? どなたかお教え頂けないでしょうか?

  • オンラインゲームの開発言語、OS

    オンラインゲーム業界に興味があって、できれば転職をと考えているのですが、その種のゲームはどのような言語で作られているのでしょうか? また、サーバーOSはLinuxなのでしょうか。 (ものによって違うのかもしれませんが...)

  • Linuxでのサーバ構築(DNS)

    Linuxでのサーバ構築(インターネットサーバ)をしようと思っています。初心者です。RedHatLinux7のマニュアル等を読みましたが以下の点が良くわかりませんでした。 1)DNSサーバでローカルホスト(正、逆)についての設定はどうなるのでしょうか。 正、逆引きデータベースの設定の方法は本(できるLinuxサーバ)に載っていたのですが。 2)メールサーバとウェブサーバを構築したいのですが、カスタムセットアップでパッケージを全部インストールしているのですが、 (1)SMTPサーバはどのファイルを設定(変更)すればいいのでしょうか。 (2)POPサーバは特に何も設定する必要は無いのでしょうか(APOP以外)。 (3)wwwサーバはどのファイルを設定(変更)すればいいのでしょうか。 3)ファイアーウォールをLinuxで実現するプログラムは何でしょうか。セキュア(うろ覚えです)が、それに当たるのでしょうか。 4)DNS、SMTP,POP,WWW、ファイアーウォール全てを一台のパソコンで利用できるでしょうか 5)パソコンとサーバー機の違いとは何なのでしょうか。(値段だけではありませんよね、、、) 長くなりましたが、よろしくお願いします。 ※マニュアルのココに書いてある。HPに載っている(日本語で)。という情報も教えてください。

  • win2000serverのネットワーク内にlinuxサーバを立てる

    最近、社内LANをインターネットに接続する事になりました。 ローカルDNSは、win2000serverで、アクティブディレクトリを使っています。 コスト的に2000serverは無理(OS代が高くて承認されない)なので、Linuxでファイアーウォール(IPフォワーディング等)用サーバにしたいと思っています。 書籍で探したのですが、Linux単体でサーバを立てる方法の本しか探せませんでした(複数のサーバを立てる方法や、異種サーバOSを複数立てる方法などの本はありませんでした)。 1.Linuxサーバに入れる必要なサービスは? 2.Linuxサーバに挿すNIC(eth0,eth1)の、ホスト名、ドメイン名、ゲートウェイ等は、どのような設定をすればよいのか?(イメージがうまくわきません) 3.ルーティングや、今回の事例などが載っているおすすめの書籍、URLは? 以上、宜しくお願いします。

  • Linuxでのゲームプログラミングについて

    Googleなどの検索エンジンでLinuxでのゲームプログラムについてのサイトを調べてみたのですが、なかなかこれだというものにたどり着けずに困っています。WindowsでのゲームプログラミングではDxLibを用い、シューティングやアクション(未完成)ゲームを作ってみたのですが、そろそろ次の段階に行こうと思いはじめました。私は、各種サーバーを趣味で運営するに当たって、Linuxのすばらしさにほれ込んでしまいました。なので、Linuxでぜひゲームを作りたいと思っています。 とりあえず目的としてはチープな感じの3Dアクションゲームを作りたいと思っております。当方の環境は Fedora8 (Vineから乗り換え)です。 ・初歩的なCの知識があれば理解できるLinux上でのゲーム統合開発の説明がなされているサイト ・OpenGL,CでLinux上でゲーム開発 このような情報があるようなサイト。あるいは、その前にこれをやるべきだという意見があれば返答よろしくお願いいたします。

  • サーバー構築に必要な情報収集について

    先日、ドメインを取得し、現在はメールポインタ、HPポインタ的な用途にしか使っていません。 そこで、ネットワークの勉強をして、ゆくゆくは自分の家にサーバーを立てて情報公開してみたいと考えています。 自宅にサーバーを置いて情報公開している方は、どのように情報収集されたのですか? オススメの書籍やサイトがありましたら教えていただけませんか? サーバーを公開するまでの過程やセキュリティ情報など、どんなことでも構いません。 特に、セキュリティに関する情報が欲しいです。 ちなみに、OSは半年くらい前から使い始めたLinuxを使いたいと考えています。 よろしくお願いします。

  • Linuxサーバの働き

    ネットワークetcについて初心者の質問です。 情報・通信事典によると、「Linuxは他のOSに比べ、低い性能のコンピュータでも軽快に動作する。また、ネットワーク機能やセキュリティーに優れ、また非常に安定しているという特長を持つ。Linuxは学術機関を中心に広く普及しており、企業のインターネットサーバとしても多く採用されている。」と書かれていましたが、クライアントのPCがWindowsでも、サーバはLinuxでも構わないのですか。 また、そもそもLinuxとはWindowsとは扱い方など全く違うものなのでしょうか。 的外れな質問でしょうがよろしくお願いします。

  • Linuxサーバーの構築

    をしたいのですが、どうしたらよいでしょうか? 教えてくださいませ 条件は次のようになっています 1.自宅サーバを構築したいと思います 2.現在個人用プロバイダに加入してます ***プロバイダでどの程度対応しているかは ***プロバイダに聞いてみないと分かりません ***但し、いいプロバイダがあったら、乗り換えます 3.学術用、商用HPの公開・運用を目的としてます 4.サーバー機をこれから買います ***そんなに大規模ではありません、 ***予算、数万円で済ませるのにいいサーバ機 ***(専用機でなく、パソコンでもいいです) ***があれば教えて下さい 5.OSはLinuxです その他、必要な条件があったら説明します

  • アナログモデムとLinuxマシンでRASサーバ構築

    以下の構成でRASサーバを構築したいと思います。 ■サーバ OS:Red Hat Linux7.2 モデム:REX-PCI56C(Linux対応アナログモデム) ■クライアント 接続方法:PHS(AIR-H") このような場合、サーバとネットワークをつなぐのは アナログ回線で良いのでしょうか? ちなみに、モデムはPIAFSに対応していないようです。 サーバ側では、どのようにRASを構築したら良いでしょうか。 ネットを検索してみたところ、mgettyを使用することで構築できそうな情報を見つけたのですが、どのようにしたら良いでしょうか。 もしくは、もっと良い方法などありますでしょうか。 品質は問いません。 ある程度遅くても良いので、とにかく接続できてリモートから作業が出来れば良いのですが。 どなたか知っている、もしくは情報が記載されたサイトがありましたら教えてください。 よろしくお願いいたします。

専門家に質問してみよう