MNAの世界ホームMOTHERファンサイト同人ゲームサークルこのサイトについてMNAの世界ブログをリニューアルしました!コメント、リンク、ツイートなどはお気軽にどうぞ。最近は同人ゲームでもネット対戦を備えていることが多くなってきました。対応ゲームはこれからどんどん増えていくことでしょう。ほとんどの接続ユーザーがルータ越しに繋いでいる昨今ではNAT越えというとても大きな壁があります。他の人たちはこれをどうやってクリアしているのか?ちょっと気になったので、当サークルでもそのうちネット対応した場合に備えて調べてみました。いくつかのゲームの体験版を落として説明書を読んでみたところ、大抵のゲームはホスト側がポートを空けておけばゲストは基本的には何も設定はいらないようです。間の情報がルータにマッピングされるので、UDPの双方向通信が成り立つわけです。実装がお手軽、かつ確実な方法ですね。ホストになる人は少しだけですがポートの設定などのネットワークの知識が必要になります。ポート開放の煩わしさを避けて接続するにはどうすればいいか?UDPの特性を利用したもののひとつにUDPホールパンチングという技があります。Skypeが採用しているということでも有名ですね。Skypeの高い接続性の秘密これならコーン型NATであれば外部にSTUN鯖さえ用意しておけば大体は繋がりそうです。そのSTUN鯖を用意するってのが大変なんですけどね・・・httpとかを駆使してやるのも可能っちゃ可能ですが。シンメトリックNAT」の通信はかなり絶望的です。困難なことに、相手がどんな特性のNATかを詳しく調査するには鯖側にグローバルIPが最低3つぐらいは必要です。天下のマイクロソフトでさえ、この組み合わせの通信は困難としています。最後の手段としてどっかのノードにトンネルさせるってのがありますが、個人でそこまで負担する人は普通いないでしょう。SDK」ある程度妥協して、「繋がらないルータを使っている人はポートを開けてください。」レベルまでいければ個人では及第点といえるでしょう。これでも1対1の対戦モノとかであれば話はまだ簡単です。俺の脳みそがオーバーフロウ!!!てか複数人のゲームってどうやってテストするんだ?ひとりで全部操作するのか?あひーん。以前書いたWindowsのパッチを当てるとリモートデスクトップでブルースクリーンになる現象から2ヶ月あまり。