![]()
2010.05.21 CHIKATHREESIX
2010.04.16 KNOCKKNOCK
2010.03.08 TAKAIW
2010.02.01 CHIKATHREESIX
2010.01.28 TAKAIW
![]()
![]()
KNOCKKNOCK (10件)小遣い2万円のフラッシュデベロッパー。
帰りが遅いのにキレる嫁をだましだまし制作中・・・。
TAKAIW (13件)フラッシュデベロッパー。遊びでゲームを作るのも好きです。外見に似合わないイラストを描くのも好きです。とにかく作るのが好きです。
CHIKATHREESIX (8件)メタル界のフラッシュデベロッパー。またある時はメタルギタリスト。オーサリング中もヘッドバンギングは絶やさない。
YANBOU (6件)犬と猫で、家が毎日運動会のフラッシュデベロッパー。
ビールから発泡酒へ変更で節約中。
AKUZE (2件)2003年からユナイティアに寄生しているフラッシュデベロッパー。
シルクドソレイユとカナダが好き。
DECO-DEKAI (1件)ビートダウンパートでご飯何杯も食べられます。
ハードコア・テクニカルディレクターを目指して日々精進。
![]()
HOME > ネットワークアプリ+Flashに挑戦
Webの仕事をしているのに実はネットワークには
疎かった...。こういう人ってかなりいるとは
思います。
パケット、プロトコル、レイヤー、TCP/IP...
聞いたことがあるけど、そらで詳しく説明できる人は
フロントの制作ではあまりいないのかもしれません。
(自分は都度調べてすぐ忘れがちです...)
ちょっと前ですが仕事上、Flashでサーバー上の
JavaアプリとSocket通信をしないといけない
案件をすることになりました。
未知の世界なので不安2割、楽しみ8割で挑みました。
Flash側としてはSocketクラスを作って、
指定のイベントをaddEventListerして...と
URLLoaderみたいなノリで意外にカンタンに
できます。ただ、その案件はSocket通信+SSLだったので
一筋縄ではいきませんでしたが。
(でも、パケット盗聴、なりすましとか考えると、実務レベルでは
SSLにしないといけないんだろうなと実感)
さらにセキュリティーポリシーが追い討ちをかけて
私と、連携先のSEさんを苦しめました...
でもパケットキャプチャーソフトをデバッグ用に使って
何とかつなぐことができました!
パケットキャプチャーは通信ごとのデータを
モニタリングしてくれます。暗号化なしのパスワードとか
何でも分かってしまいます。
暗号化って必要なんだなと肌で実感してしまいます。
下図のように通信ごとにパケットが丸見えです。
その案件はある事情がありまして、最後までお手伝い
できなかったのですが、それを契機に自分で一回、
ネットアプリを構築してFlashとつなげてみようと思いました。
Java経験がありましたし、自宅の本棚を探ると、
Javaネットワークプログラミングの本が!
平成15年とかなり昔の本ですが、
これで作れる!と思わせましたね。当時と今とでは
私の中でのオブジェクト指向の理解がかなり違うので
結構イケルと思いました。
※前述しましたが、両方ともJavaの本です。
もっと新しい本買ったほうがいいかもしれないと思いましたが
とりあえずこれを使って、ネットアプリを作ろうと思います。
負荷とかはとりあえず考えないで。
最終的にはLinuxに入れられるように。
まず最初に前述のパケットキャプチャーソフトを使おう!と思い、
早速自宅のVistaにインストールしました。
......が
ぜんぜんトレースされない!会社ではできたのに!
別の有名な海外のソフトを調べてDLしてみました。
・Wireshark
http://jp.downpanda.com/wireshark-19423.html
でも駄目でした。
詳しく調べるとVistaって権限とか厳しいので
管理者権限で起動しないといけないのです。
下図のように、わざわざ右クリックして起動しないといけないようです。
管理者権限で起動し、適当なページを閲覧したら、
どんどんキャプチャーされていくことが確認できました。
(しかも上記の2つのソフト両方です!)
前述セキュリティーポリシーによって
FlashPlayerがSocketインスタンス作成しconnectしたら
"<policy-file-request/>"という文字列を
接続先のport843に強制的に投げます。
(パブリッシュプレビューでは投げません)
その文字列をキャプチャーできるかなと思い、
早速JavaでFlashPlayerからport843で受けるプログラムを
書いて、プロンプトで実行しておきます。
そして、ブラウザ上でSocketをconnectするFlashを実行。
......でも、出てきません。
同IP同士のパケットはキャプチャーできないみたいです。
理解度が低いせいかもしれません。
2つのソフトで行いましたがぜんぜん出てこないですね。
何かいい方法があるのかな。さすがに2,3時間では
見つからなかったか...。やっぱりテキストフィールド
つくってトレースするか...。
進展がありましたら、
さらにレビューさせていただきます。

TAKAIWフラッシュデベロッパー。遊びでゲームを作るのも好きです。外見に似合わないイラストを描くのも好きです。とにかく作るのが好きです。