[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 05/09 19:49 / Filesize : 130 KB / Number-of Response : 585
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ネットワークプログラミング相談室 Port23



1 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 21:07:24 ]
主にソケットに関しての質疑応答スレッドです。

Programming UNIX Socket FAQ (日本語訳)
 www.kt.rim.or.jp/~ksk/sock-faq/indexj.html
Winsock Programmer's FAQ (日本語訳)
 www.kt.rim.or.jp/~ksk/wskfaq-ja/

関連リンクは>>2-10辺り
足りなかったら適当に付け足してね

前スレ
ネットワークプログラミング相談室 Port22
pc11.2ch.net/test/read.cgi/tech/1222603744/
関連スレ
Java ネットワークプログラミング 【教えて!】
pc11.2ch.net/test/read.cgi/tech/1086238859/

231 名前:デフォルトの名無しさん [2009/02/01(日) 13:00:01 ]
>>230
何のせいですか?

232 名前:デフォルトの名無しさん [2009/02/01(日) 13:12:27 ]
>>229-230
例外を処理していないのが原因だったようです。
ありがとうございました。

233 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 13:19:05 ]
server側のFD_CLOSEにトラップしかけてトレースしたらすぐ分かるでしょ

234 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:26:44 ]
>>228
Backdoor....ヒィーーーーッ、ガクガクブルブル

235 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 17:23:23 ]
やべっ
落として実行しちゃったけどBackdoor仕掛けられちゃったか・・・



236 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 21:40:15 ]
ご愁傷様です

237 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 21:51:01 ]
落としてる途中で
怪しいと思ったので
放置してたんだけど
やっぱそうなん?

238 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 21:52:39 ]
あっぶね
落したけど実効はしてない

239 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:20:37 ]
UDPのソケットを作成してbind後に
どこかのアドレスにsendtoすると
selectでreadfdsが反応しちゃうんだけど
そゆもの?
なんで自分が受信可能になるの?



240 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:21:47 ]
ちゃんとselect用のsocket分けてますか

241 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:48:30 ]
ソケットは1つしか作成していません。
そのソケットをbindしてselectにセットしています。
さらにそのソケットでsendtoしてるんだけど、
それがまずいってことですか?


242 名前:239 mailto:sage [2009/02/01(日) 23:25:56 ]
すいません、送信アドレスが127.0.0.でしたorz
申し訳ないです、忘れて下さい(´・ω・`)

243 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 23:58:27 ]
。゜(゚´Д`゚)ノウンコ-

244 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 00:11:28 ]
タヒぬ

245 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 02:12:56 ]
>>228を落としてウィルススキャンして見たんだが反応しない
バックドアってどうしたら発見できるの?

246 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 03:04:46 ]
作っているアプリの名前がbackdoor?

247 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 06:21:16 ]
デスクトップイメージを送信している
それだけでbackdoorと言っても差し支えない

248 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 01:11:56 ]
>すいません、送信アドレスが127.0.0.でしたorz
ワラタ


249 名前:デフォルトの名無しさん [2009/02/03(火) 23:29:30 ]
LinuxでIPアドレスが分かっているLAN内の他のホストのMACアドレスを知るプログラムを作りたいのですがどうすればいいですか?

できれば、他のプロセス(arpコマンドなど)は起動せず、
標準的な(apt-getせずにubuntuで使える)関数で簡単に数行で記述出来ると望ましいです。



250 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:34:48 ]
なんでping→arp -aがだめなの?

251 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:53:07 ]
ARPパケットの送信と受信がしたいのでは?

252 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:34:10 ]
arp -a
一行

253 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:50:26 ]
ttp://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/com.ibm.aix.commtechref/doc/commtrf2/arpresolve_common.htm
ttp://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/com.ibm.aix.commtechref/doc/commtrf2/arpupdate.htm


254 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 12:40:11 ]
>>249
arpのソースをリンクすればいいんじゃないか?

255 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 13:27:29 ]
>>254
ライセンス関連であまり悩みたくないので他のプログラムのソースを取り込むのは避けたいです。

できればarp()やget_remote_mac()のようなAPIがあれば嬉しいのですが。

256 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 13:29:23 ]
>>253
ありがとうございます。参考にします。

257 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 13:30:26 ]
>>250
他のプロセスを起動したくないからです。

258 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 13:40:19 ]
注文が多いのう

259 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 16:18:33 ]
>>255
つ www.netlib.org/




260 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 16:20:51 ]
>>259
あ、逆だった。 こっちだ orz
www.packetfactory.net/libnet/ 

261 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 21:38:43 ]
>>257
Linux前提なら /proc/net/arp 読めばいいんじゃね?
arpコマンドだってこれ読んでるだけだよ。

キャッシュにないときの処理は後自分で考えるんだぞ。

262 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 21:49:06 ]
キャッシュについては
ていうかpingも自分で実装?

263 名前:デフォルトの名無しさん [2009/02/04(水) 23:54:13 ]
>>260
ありがとうございます。
やっぱり標準装備のライブラリじゃできないですかね。。
導入するならこれかlibpcapかな。


264 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 23:55:38 ]
>>262
いや、接続しようとするだけで問題なし。
出来なくてもARPは行われるから。

265 名前:デフォルトの名無しさん [2009/02/04(水) 23:56:02 ]
>>261
ありがとうございます。
確かにそれはいいアイディアですね。
テキスト処理が若干面倒ですが。

266 名前:デフォルトの名無しさん [2009/02/04(水) 23:57:50 ]
>>262
御存じのこととは思いますが、pingとarpキャッシュは直接関係ありませんよ。
pingがアドレス解決するのでその副作用でarpキャッシュが更新されるだけです。

267 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:34:42 ]
>>264
確かにそれはいいアイディアですね。
自分でARP投げるのも出来ませんかね。

268 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 18:11:46 ]
ttp://www.itbook.info/study/arp3.html

269 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:37:23 ]
https://arco.esi.uclm.es/svn/public/misc/scapy/arping.py



270 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:45:25 ]
ttp://www.secdev.org/projects/scapy/
ttp://www.secdev.org/projects/scapy/demo.html

271 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:45:39 ]
>>267
こっちが聴きたい。「あなたは実装できないのですか?」

272 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:47:14 ]
www.designandcommunication.co.jp/Python/packet.html

273 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:49:29 ]
>>271
Cでは出来るけど >>249 の言うような

>できれば、他のプロセス(arpコマンドなど)は起動せず、
>標準的な(apt-getせずにubuntuで使える)関数で簡単に数行で記述出来ると望ましいです。

「標準的な関数で簡単に数行で」って言われると
自分の関数リンクするのもアウトだろうから
arp -a 以外に思いつかない

274 名前:デフォルトの名無しさん [2009/02/05(木) 22:55:44 ]
ilab.cs.byu.edu/python/
heather.cs.ucdavis.edu/~matloff/Python/PyNet.pdf
www.amazon.co.jp/Foundations-Python-Network-Programming/dp/1590593715
d.hatena.ne.jp/rintaromasuda/20060521/1148167342
www.onlamp.com/pub/a/python/2006/08/10/untwisting-python-network-programming.html
simonwillison.net/2004/Feb/18/advanced/

275 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:27:45 ]
under Linux only
import sys
import string
import struct
from socket import *

proto = 0x55aa
s = socket(AF_PACKET, SOCK_RAW, proto)
s.bind(('eth1', proto))
ifName, ifProto, pktType, hwType, hwAddr = s.getsockname()
srcAddr = hwAddr
dstAddr = '\x01\x02\x03\x04\x05\x06'
ethData = 'here is some data for an ethernet packet'
txFrame = struct.pack('!6s6sh', dstAddr, srcAddr, proto) + ethData
print 'Tx[%d]: ' % len(ethData) + string.join(['%02x' % ord(b) for b in ethData], ' ')
s.send(txFrame)
rxFrame = s.recv(2048)
dstAddr, srcAddr, proto = struct.unpack('!6s6sh', rxFrame[:14])
ethData = rxFrame[14:]
print 'Rx[%d]: ' % len(ethData) + string.join(['%02x' % ord(b) for b in ethData], ' ')
s.close()

276 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:31:13 ]
なんとか出来そうです
ありがとうございました

277 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 00:13:24 ]
話の流れが分からなくなりつつあるので名前を付けます。

ちなみに私の書き込みは下記のレスです。

>>249 >>255-257 >>263 >>265-266

278 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 00:27:48 ]
大切なことを言い忘れていましたが、CかC++で実装したいと考えています。

それと、あくまでも同一LAN内のMACアドレスが分かっているリモートホストのIPアドレスが知りたいのであって
明示的にARPリクエストを送りたいわけではありません。したいのはあくまでもIPアドレスを取得することです。

RAWソケットを開いたりする必要こと無く、標準関数あるいは標準機能と数行の記述でIPアドレスを取得できることが希望です。
標準関数を希望するのは、OSに標準的に付属する以外にソフトウェアを取得するのは、権利の関係が面倒なので避けたいからです。

例えば、標準関数でint get_mac_address(struct arpreq *req) のような関数があると理想的です。

279 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:35:16 ]
もうとっくに書き終わったかと思ったよw



280 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:38:57 ]
>>249
IPアドレスが分かっているLAN内の他のホストのMACアドレスを知る
>>278
MACアドレスが分かっているリモートホストのIPアドレスが知りたい

謎ですなあ。


281 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 01:41:03 ]
int get_mac_address(struct arpreq *req)
じゃなくて
int get_ip_address(struct mac_addr *mac)
だよなぁ


282 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 01:57:16 ]
ああそうですね。間違えました。求めるたいのはIPアドレスです。

○例えば、標準関数でint get_ip_address(struct arpreq *req) のような関数があると理想的です。

283 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 02:00:25 ]
>>280 >>281
ああちがいました。
求めたいのはMACアドレスです。

ですので、
○例えば、標準関数でint get_mac_address(struct arpreq *req) のような関数があると理想的です。

284 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 02:02:28 ]
>>278は間違いなので書きなおします。)

大切なことを言い忘れていましたが、CかC++で実装したいと考えています。

それと、あくまでも同一LAN内のIPアドレスが分かっているリモートホストのMACアドレスが知りたいのであって
明示的にARPリクエストを送りたいわけではありません。したいのはあくまでもMACアドレスを取得することです。

RAWソケットを開いたりする必要こと無く、標準関数あるいは標準機能と数行の記述でMACアドレスを取得できることが希望です。
標準関数を希望するのは、OSに標準的に付属する以外にソフトウェアを取得するのは、権利の関係が面倒なので避けたいからです。

例えば、標準関数でint get_mac_address(struct arpreq *req) のような関数があると理想的です。

285 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:03:01 ]
>>278
> 標準関数でint get_mac_address(struct arpreq *req) のような関数があると理想的です

今までの流れでそんなのは無いというのが分からんのか? 今までのレスで十分その
関数を自分で書くだけの情報はあるはずだぞ。 

286 名前:249 ◆ZHAPRHY6Ag [2009/02/06(金) 02:12:48 ]
無いのですね。わかりました。ありがとうございました。

ちなみに、macアドレスを取得する関数はRAWソケットで既に作りました。
マルチプラットフォームでの移植性を考えるとlibpcapを使った方がよさそうでしたけど、移植することもないのでこちらにしました。

標準関数で同機能があればそちらで作り直したかったのですが仕方ありませんね。

287 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 03:21:05 ]
pc11.2ch.net/test/read.cgi/tech/1232455653/
ここでマルチしてんのか

288 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 08:20:08 ]
何がマルチ?

289 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 08:44:00 ]
>>282-283
指摘されているにも関わらず同じ間違いを繰り返してしまうキミは
プログラミングを止めた方がいい。経験上。



290 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 09:15:51 ]
同じじゃないですよ?

291 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 09:17:48 ]
愚者は経験に従うとも言います。

292 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 10:29:01 ]
神だって何度も間違える。

293 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 10:32:30 ]
プログラマは2度間違えない。

294 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 11:11:28 ]
人間は何度でも間違える。

295 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 11:33:57 ]
プログラマは2度間違えない。

296 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 13:21:01 ]
プログラマーって最高ですね。

297 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 15:16:43 ]
おばあちゃんが執事にするならプログラマが一番だって。

298 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 15:22:32 ]
>>284
ここにいる奴に書かせるつもりだなw

299 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:19:25 ]
ブロードキャストのパケット監視するとか?



300 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:30:03 ]
そうそう/proc/net/arpをずーと監視してればいつかは…
っておい!

301 名前:デフォルトの名無しさん [2009/02/06(金) 21:08:50 ]
過疎

302 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:18:49 ]
↑過疎の原因

303 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:22:51 ]
蘇我入鹿

304 名前:デフォルトの名無しさん [2009/02/07(土) 01:18:21 ]
金玉かゆい

305 名前:デフォルトの名無しさん [2009/02/07(土) 01:34:59 ]
なるほど
ありがとうございました

306 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 03:05:56 ]
ProxyARP

307 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 03:13:40 ]
ttp://www.geocities.jp/ptrs_sec/ipcat/

308 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 12:17:31 ]
パケットキャプチャについて質問なんです
自身のローカルIPにbindしてプロミスキャスモードに設定するとパケットキャプチャができますが、特定のIPとのパケット通信のみをキャプチャするにはどうすればいいんでしょうか?
全部とって選別よりも、それ以外取得できないようにしたほうが軽いと思うんです
試しにその特定のIPにbindしてプロミスキャスモードに設定しようとしたらエラーが出ました

309 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 12:41:32 ]
ドライバが対応していればその機能を使う。
対応していないなら、そういうドライバを作る。



310 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 14:18:21 ]
複雑だと思うならつかわなきゃいいんじゃねーの?
なんでアホはあるもの全部使わなきゃ気がすまねーの?

311 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 14:23:11 ]
どっちにしろ対象を絞り込むときに選別しなきゃならんわけで

312 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 14:44:47 ]

このスレって俺を含めてド素人しかいない予感w


313 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:22:25 ]
同じフィルタリングでも、カーネルモードとユーザランドでは性能が段違い。

314 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:22:28 ]
素人さん向け
ttp://www.tef-room.net/tool/PromiScan.html
ttp://www.space-peace.com/ethereal/check/ethereal_check_4.htm

315 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:10:19 ]
俺もド素人w

316 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:11:12 ]
TCPソケットでconnectすると
接続元アドレスが自動で設定されると思うんだけど
複数IPアドレスがあった場合どうなるの?

317 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:33:02 ]
bind

318 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:57:20 ]
なるほど
ありがとうございました

319 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:10:45 ]
処理するのにbindすればいいのは分かるんだけど
bindしないでconnectした時のアドレス割り当てが
どういったルールになってるのかなって。



320 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:35:40 ]
普通はそのインターフェースのプライマリアドレス

321 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:24:44 ]
>>320
ちゃんとプライマリとか見てくれるのか
ありがとー


322 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 06:32:35 ]
何でこの板IDないの?

323 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 07:49:43 ]
紳士だからさ


324 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 09:44:13 ]
変態という名の紳士

325 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:47:12 ]
地震キタ

326 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 01:07:46 ]
thread_Aにてepoll_wait中に、thread_Bからepoll_ctlで監視対象fdを操作(EPOLL_CTL_DELとか)しても、
即座にthread_Aで止まってるepoll_waitは反映してくれない?

というか、epoll_fdに対しての非同期操作は自分で排他処理しないとダメ?

327 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 10:50:58 ]
>>320
まともなOSならそんなことしない。
インターフェイスへの複数アドレス付与を、付け焼刃で実装したOSならあるかもしれんけど。

>>321
そのホストのルーティングテーブルを参照して、接続先アドレスに到達可能な最小コストのルートを選択して、
接続元とするアドレスが決められる。
インターフェイスAに、10.0.0.1/24と、192.168.0.1/24が振られてて10.0.0.1がプライマリだったとしても、
192.168.0.2に接続するときには、192.168.0.1がsourceとして使われる。


328 名前:デフォルトの名無しさん [2009/02/10(火) 11:25:55 ]
んー
同じセグメントのIPが複数振られてたらどっちが使われる?

329 名前:デフォルトの名無しさん [2009/02/10(火) 11:26:06 ]
プログラム言語はなぜ「言語」と呼ばれるのでしょう?
通常使っている言語とどのような共通点があるか?
またどのような相違点があるか?

という問題を誰か教えてくれませんか?



330 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 11:40:40 ]
>>329
ウィキペれ。

331 名前:デフォルトの名無しさん [2009/02/10(火) 11:43:37 ]
ウィキにのってないポ(;・∀・)






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<130KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef