同じルーターに接続された端末のIP取得方法

353 views
Skip to first unread message

チョンボ

unread,
Feb 27, 2013, 4:22:44 AM2/27/13
to android-g...@googlegroups.com
お世話になっております。

一つのルーターに複数台の端末が接続された場合、接続された端末同士で通信を行う事は可能でしょうか?
その際の接続された端末のリストのIPを取得して通信させる仕様にしたいです。
端末のIPを取得する方法や、IPが分かっている端末での通信はできているのですが、
不特定多数になると現在できていない状況です。

どなたかご存知の方いらっしゃいましたらお願い致します。

田代透

unread,
Feb 27, 2013, 5:56:40 AM2/27/13
to android-g...@googlegroups.com
ブロードキャストで呼びかけて返事をしたノードを相手にすればよいのでは

IPの知識を学ぶといろいろな方法がわかるかも。


2013年2月27日 18:22 チョンボ <chonbo...@gmail.com>:

--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、android-group-j...@googlegroups.com にメールを送信します。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
 
 



--
--
Toru Tashiro
toru...@gmail.com

チョンボ

unread,
Feb 27, 2013, 7:09:33 AM2/27/13
to android-g...@googlegroups.com
Toru様
  ブロードキャストは盲点でした。IPをもう少し詳しく調べてブロードキャストが適当であればそちらを使ってみようと思います。
  
 ありがとうございます。

チョンボ

unread,
Feb 27, 2013, 7:12:36 AM2/27/13
to android-g...@googlegroups.com
追記失礼致します。
同じルーターに接続された端末のIP取得方法などお分かりの方いらっしゃいましたらご意見を宜しくお願い致します。


宮原 誠

unread,
Feb 27, 2013, 8:44:29 AM2/27/13
to android-g...@googlegroups.com
効率が非常に悪いのですが・・・

① 自身のIPアドレス、サブネットマスクを取得

② サブネットマスクから残りの接続可能台数を求める

③ ①と②の数字から接続されていると思われるIPアドレスに対して順次pingを送信して応答の有無をチェック

シンプルな構造ですが、時間がかかります。

Wi-Fiルーターの機種によっては「プライバシーセパレーター」という
自分以外のPCに対するアクセスをルーターが遮断する機能があるので、注意した方がいいと思います

Makoto Yamazaki

unread,
Feb 27, 2013, 11:43:57 AM2/27/13
to android-g...@googlegroups.com
zaki です。

自前でやるのであればブロードキャストに対する応答を見ればわかります(パケットの src address)。

他にも Bonjour を使うこともできます。 http://ja.wikipedia.org/wiki/Bonjour
Android で使えるオープンソースな実装もあります。


2013/2/27 チョンボ <chonbo...@gmail.com>:
> 追記失礼致します。
> 同じルーターに接続された端末のIP取得方法などお分かりの方いらっしゃいましたらご意見を宜しくお願い致します。
>
>
> --
> このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、android-group-j...@googlegroups.com
> にメールを送信します。
> このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
> http://groups.google.com/group/android-group-japan?hl=ja
> からこのグループにアクセスしてください。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>
>



--
YAMAZAKI Makoto

角山 恵介

unread,
Feb 27, 2013, 10:42:31 AM2/27/13
to android-g...@googlegroups.com

ルータに接続された端末が同じセグメント前提なら田代さんの仰られているブロードキャストを使えばよいのでは。

異なるセグメントならマルチキャストを使ってみてはどうでしょう。

2013/02/27 23:07 "宮原 誠" <miyahar...@gmail.com>:

チョンボ

unread,
Feb 27, 2013, 9:24:24 PM2/27/13
to android-g...@googlegroups.com
ばとるぎぁ様
返信ありがとうございます。

この方法は思いつきもしませんでした。
サブネットマスクからの接続台数の割り出し。。とても参考になります。
ありがとうございました。

チョンボ

unread,
Feb 27, 2013, 9:28:41 PM2/27/13
to android-g...@googlegroups.com
YAMAZAKI様
返信ありがとうございます。

ブロードキャストとはアプリ等でよく仕様するブロードキャストでしょうか?
自身の端末のイベント等しか拾えないイメージでしたので複数の端末でのやり取り方法をもう少し調べてみます。

Bonjourのwiki拝見させて頂きました。
URLまで頂いてとても参考になりました。
ありがとうございます。

チョンボ

unread,
Feb 27, 2013, 9:31:52 PM2/27/13
to android-g...@googlegroups.com
Kei様
返信ありがとうございます。

異なるセグメントの場合はマルチキャストが使えるのですね。
私自身ネットワークの知識が皆無なので現在知識を深めようと勉強している所です。
一つのルーターのみを使って複数が接続して通信を行いたいのでおそらく同じセグメントなのではないかと
想像しております。
YAMAZAKI様から頂いたご意見と平行してブロードキャストとマルチキャストについて調べてみます。

ご意見ありがとうございます。

Makoto Yamazaki

unread,
Feb 28, 2013, 6:45:35 AM2/28/13
to android-g...@googlegroups.com
zaki です。

ブロードキャストは Android の BroadcastIntent のことではなく、
ブロードキャストアドレス宛の UDP パケットを使った通信を意図していました。
ブロードキャストアドレスを宛先にしてパケットを投げると、同じネットワークに存在する
すべての端末がそのパケットを受け取ることができます。受け取った側は送信元がわかるので
何らかの返送をすれば同じネットワークに存在する通信相手を探すことができます。

Android で使える Bonjour の実装としては JmDNS http://jmdns.sourceforge.net/
があります。どのバージョンか忘れましたが、過去にこれを Android で動かした実績があります。

英語でも良ければ Quick Tutorial on Using Jmdns on Android
http://home.heeere.com/tech-androidjmdns.html
というページも有りました。

2013/2/28 チョンボ <chonbo...@gmail.com>:

チョンボ

unread,
Mar 1, 2013, 12:16:17 AM3/1/13
to android-g...@googlegroups.com
YAMAZAKI様
返信ありがとうございます。

ブロードキャストアドレス宛の UDP パケットを使った通信の意味だったのですね。
申し訳ありません。

ご意見を参考にして調べたところ、javaのDatagramSocketを使ってUDPパケットをマルチキャストできそうな気配がして参りました。

リンクまで張って頂き感謝致します。Bonjourも気になっていますので調査してみたいです。
ネットワークの勉強しつつマルチキャストに挑戦してみます。

本当にありがとうございました。
Reply all
Reply to author
Forward
0 new messages