トップページ⇒tech
956コメント340KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。 NGNG
主にソケットに関してのFAQ
0581デフォルトの名無しさんNGNG
>>578
その手ことが知りたいならRFC嫁やゴラァ
0582デフォルトの名無しさんNGNG
winsockレベルでproxy経由でアクセスってどうやるんですか?
0583デフォルトの名無しさんNGNG
GET http://www.2ch.net/ HTTP/1.0
0584デフォルトの名無しさんNGNG
HTTP1.0/1.1のRFC読めって?
0585デフォルトの名無しさんNGNG
>>582
おいおい(ワラ
0586デフォルトの名無しさんNGNG
プロキシサーバに接続した後、>>583 みたいに URI 部分に
スキームやホスト名まで指定してやれば可能。プロキシが
対応していれば ftp:// ってのも HTML 形式で返してくれるぞ。
あとは Cache-Control とかだな。
0587デフォルトの名無しさんNGNG
>>585はなんでワラってるの?
0588デフォルトの名無しさんNGNG
>>587
winsock使ってる時点で、自力で串とお話する以外ないからだろ?
0589デフォルトの名無しさんNGNG
?
そのやりかたを教えてくれって言ってるんじゃないの?>588
0590デフォルトの名無しさんNGNG
>>589
winsock使ってる時点で、プロキシ経由しようが
しまいがあんまり変わんないんだよ。
0591デフォルトの名無しさんNGNG
>>589
ということで、それを聞くということは、
プロキシ経由しないやり方もよく分かってないんじゃないかと
思うわけさ(ワラ
0592デフォルトの名無しさんNGNG
で、>>589と>>591はなんでワラってるの?
0593デフォルトの名無しさんNGNG
Raw Socket反対!!!!
IPヘッダー書き換える
馬鹿なクラッカーが増えるだけ!!!
0594デフォルトの名無しさんNGNG
包丁反対!!!!
人を刺す
馬鹿な犯罪者が増えるだけ!!!
0595デフォルトの名無しさんNGNG
Raw SocketないとPingもできないから困る
0596デフォルトの名無しさんNGNG
HTTPわかってない奴は無理にSocketでHTTPを実装しようとするな。
RFC読めとまではいわないからせめて本でも買って仕組みを勉強しろ!
0597デフォルトの名無しさんNGNG
HTTP1.1のRFCは日本語訳もあるし、本など不要
それすら読まない奴は、公害垂れ流しになるから、
インターネット上にパケットをとばすプログラムは組むな
0598デフォルトの名無しさんNGNG
>>595
Windowsに関しては生ソケットを使わなくても、PINGはとばせる
0599デフォルトの名無しさんNGNG
>>598
Windowsに関してはっていってもどうせWinsock2のRawソケットじゃたいしたことできないから関係ないな。
0600デフォルトの名無しさんNGNG
ソケットの持ってるバッファのサイズって知ることはできますか?
また、変更することはできますか?
0601デフォルトの名無しさんNGNG
>>600
getsockopt
0602デフォルトの名無しさんNGNG
>>594
料理できねーよ。
0603デフォルトの名無しさんNGNG
>>599
たいしたことできないって何が?
0604デフォルトの名無しさんNGNG
Windows 上で現在の DNS サーバー名を取得するにはどうすれば良いのでしょうか?

うちのマシンだと HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\NameServer も
GetComputerNameEx(ComputerNameDnsDomain,lpBuffer,&nSize) もヌル文字列しか返らなくて役に立ちません
0605デフォルトの名無しさんNGNG
ヌル文字列しか帰らないのは単にDNSサーバーが本当に設定されてない
だけでないかい。
ipconfigでは表示されるの?
0606デフォルトの名無しさんNGNG
うちはルータ通してるので、DhcpNameServer
0607デフォルトの名無しさんNGNG
>>606
どんな環境だろうとルータを通らないとインターネットは使えないぞ
0608デフォルトの名無しさんNGNG
ウェブオブジェクトってなんですか?
0609デフォルトの名無しさんNGNG
>>605
DNS引けなきゃ2chにも来れんと思われ
0610デフォルトの名無しさんNGNG
>>609
ダイヤルアップのときしかDNSサーバが設定されてないとか
0611デフォルトの名無しさんNGNG
IP直打ちで来れるはず。
0612デフォルトの名無しさんNGNG
Windows2000のソケットって同時に何個まで開けるのですか?
240前後のような気がするのですがどうでしょうか?
0613デフォルトの名無しさんNGNG
>>612
ここで聞くよりテストプログラムをちょっと作って調べた方が早い
なのに何故いちいち他人に聞くんだ?
0614デフォルトの名無しさんNGNG
>>612
ここで聞くよりテストプログラムをちょっと作って調べた方が早い
なのに何故いちいち他人に聞くんだ?
0615デフォルトの名無しさんNGNG
>>613 >>614
なんでそんなに簡単だったら教えてあげないの?
それに、自分で作るより、WebでWinsock FAQを検索したほうが早いよ。
613は、まだ作ってるのか。ほいこれ。
http://www.cyberport.com/~tangent/programming/winsock/examples/get-sockets.html
ここのFAQは有名だよ。
0616デフォルトの名無しさんNGNG
>>615
簡単なことすら自分でしようとしない奴に教えても意味がないだろう
それからそのアドレスのサンプルは見れば分かるはずだが
「何個まで開ける」を計測しているのではなく
「何個まで作れる」を計測しているプログラム
FAQは>>615みたいに内容を理解しない奴が見ても無駄
0617デフォルトの名無しさんNGNG
ああ、うぜえな。
教えたくないやつはレス付けるなよ。
なんか、学校の教師みたいだな。分からない事聞くと
すぐ辞書引けみたいなやつ。
どう考えたって、教えてもらった方が早くて効率的。
自分で調べろっていう気持ちもわかるけど、答えてくれるやつが居るなら
聞いたほうが絶対に良い。
0618デフォルトの名無しさんNGNG
>>617
内容によるだろ。>>612は明らかに「自分でやれ」だぞ
0619デフォルトの名無しさんNGNG
>自分で調べろっていう気持ちもわかるけど、答えてくれるやつが居るなら
>聞いたほうが絶対に良い。
だから、答えてくれる奴なんていないことを、いい加減理解しろ
答えてくれる奴がいないから、「聞いた方が絶対に良い」というのは成り立たないんだよ
見ず知らずの他人に聞くより自分で実験した方がよっぽど早い
質問してから10時間以上経過しているが、これだけあればとっくに試し終わっているだろう

>分からない事聞くと すぐ辞書引けみたいなやつ。
そんな当たり前のことを、いちいち言われて生きてきたのか?
そうとう過保護に育ってきたんだろうな
0620デフォルトの名無しさんNGNG
>>618
俺は「1+1は何ですか?」って聞かれても教えてやるよ。
英語勉強してて、分からない単語を一々全部辞書ひく?
時間の無駄だね。始めから訳が書いてある単語帳で覚えるでしょ、普通。

まあ、言ってる事は理解できるんだけど。だから、教えることを強要しないし。
アホらしい質問は無視すりゃOK。
答えてくれる人が居たらラッキーって事で。
0621デフォルトの名無しさんNGNG
今ブラウザのような初歩的なソフトを作ろうとしている初心者です。
そこでHTTPサーバとのやりとりの仕方とかコマンドに
ついてブラウザ自身はどうしているのでしょうか。
ホストにアクセスしてコマンドを送信する方法について書かれた
HPありませんでしょうか、お願いします。
0622デフォルトの名無しさんNGNG
>>619
だからさー、答える気が無いなら書き込むなよ。ウザイから。
無視してろって。お前見たいのが一番の害虫だよ。
結局、自分のレベルに合って自分に有益な情報じゃないと興味無いんでしょ?
誰もが君みたいにハイレベルじゃないんだから。
0623デフォルトの名無しさんNGNG
>>622
お前が答えれば良いだろう
答える気がないなら書き込まないんじゃないのか?
0624デフォルトの名無しさんNGNG
>>621
http://RFC.net/rfc2616.html
0625デフォルトの名無しさんNGNG
>俺は「1+1は何ですか?」って聞かれても教えてやるよ。
じゃあ、教えて
1+1は何ですか?
0626デフォルトの名無しさんNGNG
>>623
結局その程度の反論しかできないのか。
知らないものをどうやって答えるんだ?
まあ、書き込むなという点には同意。
俺のカキコも相当ウザイはず。

だけどな、このスレでよく見かけるけど、ちょっと初心者級の質問すると
「このスレもレベル下がったね」とかいう書きこみは余計なお世話なんだよ。
一部のレベルが高い奴らだけの為に存在してるスレじゃないんだから。
分かるやつから見ればくだらない事なんだろうけど、質問してる側から見れば
そうとは限らない。
それに俺だって君の言う事は十分理解してるよ。
そもそもこんなレベルの質問してる時点でプログラマとしての適性が限りなく
0に近いわけだし。検索能力も無いんだから。
でも、別にここに書きこんでるやつが全員職業プログラマになるとは限らないし
まだ中学生程度のやつの書き込みかもしれない。
だから俺は自分が知ってる事はレスするよ。
もし質問してるやつが救いようの無い低レベル職業プログラマだったとしても
ここで俺達が叩かなくてもいずれ消えていくでしょ。
0627デフォルトの名無しさんNGNG
>>625
2です。
0628デフォルトの名無しさんNGNG
>>626
だからお前が答えろって
偽善は口先だけ?
0629デフォルトの名無しさんNGNG
>>627
それでは答えになっていません
もう一度聞きます、「1+1は何ですか?」
0630デフォルトの名無しさんNGNG
>>628
もしかして日本語が理解できてない人?
0631デフォルトの名無しさんNGNG
>>629
あー、なんでしょうね。
足し算の数式?その数式の答えが2になることはわかるんだけど
それ以上の事はわからないや。ごめんね。
0632デフォルトの名無しさんNGNG
>>628
>知らないものをどうやって答えるんだ?
ってかいてありますが、何か?
お前、見てると誰にでもただ噛み付きたいだけなんだね。
確かにウザイわ(w
0633デフォルトの名無しさんNGNG
Q 「1+1は何ですか?」
A 「ハァ?」
ってならないか普通
俺は答えられないゾ
0634デフォルトの名無しさんNGNG
>>632
調べて答えれば良いのでは?
そこまで言う人なんだから、他人のために労力は惜しまないでしょう。
偽善じゃなければの話だけど。
0635デフォルトの名無しさんNGNG
無意味に荒らすなよ。
0636デフォルトの名無しさんNGNG
>>624
ありがとう
0637デフォルトの名無しさんNGNG
>>634
偽善も何も、誰も答えるなんて書いてないじゃん?
答えられないなら無視してろってのが主張してることだと思うが。
さっきから偽善って使ってるけど、よほど偽善にしたいんだね(w
0638デフォルトの名無しさんNGNG
>>633
(ップ
それがお前の普通か。
普通ね。
0639デフォルトの名無しさんNGNG
>>637
答えられないなら書くなよ(藁
0640デフォルトの名無しさんNGNG
>>638
あなた様のお答えはいかに?
0641617NGNG
おいおい荒れてるね。
どう考えても俺のカキコが原因だ。ごめんね。
俺も自分の言ってることに矛盾してしつこく書き込んでるのが悪いよ。
本当にすみません。

>>634
んー、さすがに知らない事を答えるほどの優しさは持ち合わせてないです。
すんません。まあ、でかい口きいてるし叩かれても当然ですが。
0642デフォルトの名無しさんNGNG
なんか誰にでも噛み付きたい厨房が一人で頑張ってるなあ。
夏だしね。
0643デフォルトの名無しさんNGNG
>>641
謝るな、自分の主張は戦争になっても貫き通せ
0644デフォルトの名無しさんNGNG
>>639
全くその通りだ。だから>>613みたいな馬鹿が減らないんだよね。
答えないならレスするなよな(w
0645デフォルトの名無しさんNGNG
>>642
おう、お前もがんばるな
暑いからな、体こわすなよ
0646617NGNG
>>643
いや、自分の主張はそのままですよ。
答える気が無いなら、無視してれば良いんじゃない?って話です。
ただ、このスレを荒らしてしまった事に対して謝ってるのです。
とりあえず、これ以上荒らしたくないのでsageで。
0647デフォルトの名無しさんNGNG
折角の質問スレなのに荒らすなよ。
0648夏厨祭り始まりNGNG
613 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 08:53
>>612
ここで聞くよりテストプログラムをちょっと作って調べた方が早い
なのに何故いちいち他人に聞くんだ?

616 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 11:26
>>615
簡単なことすら自分でしようとしない奴に教えても意味がないだろう
それからそのアドレスのサンプルは見れば分かるはずだが
「何個まで開ける」を計測しているのではなく
「何個まで作れる」を計測しているプログラム
FAQは>>615みたいに内容を理解しない奴が見ても無駄

619 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 13:53
>自分で調べろっていう気持ちもわかるけど、答えてくれるやつが居るなら
>聞いたほうが絶対に良い。
だから、答えてくれる奴なんていないことを、いい加減理解しろ
答えてくれる奴がいないから、「聞いた方が絶対に良い」というのは成り立たないんだよ
見ず知らずの他人に聞くより自分で実験した方がよっぽど早い
質問してから10時間以上経過しているが、これだけあればとっくに試し終わっているだろう

>分からない事聞くと すぐ辞書引けみたいなやつ。
そんな当たり前のことを、いちいち言われて生きてきたのか?
そうとう過保護に育ってきたんだろうな

623 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 14:13
>>622
お前が答えれば良いだろう
答える気がないなら書き込まないんじゃないのか?

625 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 14:18
>俺は「1+1は何ですか?」って聞かれても教えてやるよ。
じゃあ、教えて
1+1は何ですか?

628 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 14:27
>>626
だからお前が答えろって
偽善は口先だけ?

629 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 14:29
>>627
それでは答えになっていません
もう一度聞きます、「1+1は何ですか?」

633 名前:デフォルトの名無しさん 投稿日:2001/07/27(金) 14:36
Q 「1+1は何ですか?」
A 「ハァ?」
ってならないか普通
俺は答えられないゾ
0649デフォルトの名無しさんNGNG
>>647
ここは
>主にソケットに関してのFAQ
だから質問スレじゃないよ
FAQとQ&Aの違いは分かるよね?
0650デフォルトの名無しさんNGNG
       夏厨祭りだワッショイ!!
     \\  夏厨祭りだワッショイ!! //
 +   + \\ 夏厨祭りだワッショイ!!/+
                            +
.   +   /■\  /■\  /■\  +
      ( ´∀`∩(´∀`∩)( ´ー`)
 +  (( (つ   ノ(つ  丿(つ  つ ))  +
       ヽ  ( ノ ( ヽノ  ) ) )
       (_)し' し(_) (_)_)
0651デフォルトの名無しさんNGNG
わっしょい
0652デフォルトの名無しさんNGNG
ソケットの接続最大数は、65535までのポートを全て食い尽くすまで
自動でポート番号を決定する場合は1000〜5000のポートを食い尽くすまで
以上、わっしょい
0653デフォルトの名無しさんNGNG
RAD系ツールなどで(ソケットコントロール)それやると
10個めくらいで死んじゃいマス
わっしょい
0654デフォルトの名無しさんNGNG
答えが書き込まれた瞬間にどんどん下がっていくな
わっしょい
0655デフォルトの名無しさんNGNG
そのそもそんなこと聞いて何をするつもりだったんだ?
わっしょい
0656612NGNG
>そのそもそんなこと聞いて何をするつもりだったんだ?
ネットスパイダーみたいなものを作ろうと思ったのですが、
マルチスレッドにして、可能なだけソケット開いてHTTPすれば
早くなるかなと思った次第です。
0657デフォルトの名無しさんNGNG
ネットスパイダーってなに?
0658612NGNG
HTMLのLINKタグを辿ってネットを巡回するツールです。
0659デフォルトの名無しさんNGNG
ホスト側のプログラムで、
bind()の2番目の引数のsockaddr_inを、
sin_addr.s_addr = INADDR_ANY;
って書いてる本があるんですが、これってどうなんでしょう?

FAQにはホストのIPアドレスって書いてあるんですけど…
0660デフォルトの名無しさんNGNG
INADDR_ANYはどこからの接続でも受け付けるという意味です。
便乗で質問ですが、あるIPアドレスの範囲からの接続だけを受け付ける
ように指定することはできますか?
0661デフォルトの名無しさんNGNG
>>660
addr/maskのようなアクセス制御は出来ませんが、bind()に渡すアドレスに、
インタフェースのアドレスを指定すれば、そのインタフェースを経由した接続
要求のみを受け付けるようにする事は可能です。

winsockの場合は、WSAAcceptにコールバックを渡して、実際にaccept動作を
する前にフィルタさせるような事も出来るみたいです。こちらの方法は試した
事がないので、実際に出来るかどうかは知りません。
0662デフォルトの名無しさんNGNG
東風荘の通信を監視して、自分がなにをツモッたかなどを
知るにはどうすればいいの?
0663デフォルトの名無しさんNGNG
自分のつもなら普通にやっててもわかるがな
0664デフォルトの名無しさんNGNG
WinMX のプロトコルの詳細を知るのに良いページとかありませんか?
0665664NGNG
調べてみたらポートの 1025 が空いてたな、
でも、これかどうか分からないしな…
0666デフォルトの名無しさんNGNG
http://google.yahoo.co.jp/bin/query?p=WinMX+%a1%a1%a5%d7%a5%ed%a5%c8%a5%b3%a5%eb&hc=0&hs=0
0667デフォルトの名無しさんNGNG
http://homepage2.nifty.com/katuya/index.html
ネットワークRPGの作り方がのってる。
0668デフォルトの名無しさんNGNG
超初心者でもわかるFTPプログラム(C/S両方)のソースと解説のある
サイト、もしくは本を誰か教えてください!!できればUNIX系で
0669デフォルトの名無しさんNGNG
>>660
>INADDR_ANYはどこからの接続でも受け付けるという意味です。

これだと誤解を生みかねない説明なので補足させてちょ。
『UNIXネットワークプログラミング第2版 vol.1』 pp.13 で、

「(第2引数の)IP アドレスには、サーバホストが複数の
 インターフェイスを持っていた場合に、どのインターフェイスに
 あてたクライアントからのコネクションでも受け付けることを意味する
 INADDR_ANY を指定する」

とあるように、「どこからの接続でも」っていうのは、
「サーバのインターフェイスのどこからでも」ってことであって、
「どのクライアントからの接続でも」って意味ではないよ。
bind の意味を考えれば当たり前だけど、一応補足しておくね。
0670664NGNG
>> 666 ありがと、

ところで、WPNPの機能がNapchanに取り入れられるなんてことは
ないのか、という疑問が湧いてくるかもしれないが、これは難しい
だろう。というのは、WPNPの方はオープンになっていないからで
ある。
Napchanに限らず、NapsterサーバーやOpenNapにつなぐNapster
クライアントソフトがあんなにもたくさん開発されたのは、オー
プンソースという形で公開されているOpanNapとその仕様のおか
げである。MorpheusやWPNPのように、オープンになっていないと、
いくらWPNPのキャッシュサーバーのIPアドレス、ポートが公開さ
れていたとしても、その仕様がわかってない限り、WPNPを利用
するクライアントソフトを使うのは難しいだろう。
ただ、もともとNapsterにしたところでオープンにしていたわけ
ではなく、ハッカーたちがNapsterサーバーにアクセスして実験を
繰り返してOpenNapという形で仕様をオープンにしたのだから、
同じことがWPNPに起こったとしても不思議ではない。


↑コピペなんだけど、、、

どうも仕様は公開されてないみたいです
パケットキャプチャするしか無いですか(-_-;
0671デフォルトの名無しさんNGNG
Windows98,MX系でNICに来るパケットを監視するにはどうしたらよいのでしょうか?

WinSockで出来るのか。(出来ないっぽい)
ドライバを作らないとダメなのか。(よく知らない)
特殊なAPIがあるのか(探したけどそれっぽいのがない)

サパーリ分からない状態です。
定石やヒントだけでもいいので、情報をお願いします。
0672名無しさんNGNG
Windows用のtcpdumpがwindumpって名前で出てるみたいよ。
0673名無しさんNGNG
YahooのWEBサーバーにコネクション張って
GET ***** HTTP/1.0..........ってコマンド送っても
↓までしか返してくれないんだけど、どうして?

HTTP/1.0 200 OK
Date: Fri, 10 Aug 2001 11:19:39 GMT
Content-type: text/html;charset=euc-jp
Expires: Thu, 05 Jan 1995 22:00:00 GMT
Pragma: no-cache
Cache-Control: private
Set-Cookie: B=7qk8vbgtn7gqb&b=2; expires=Thu, 15 Apr 2010 20:00:00 GMT; path=/; domain=.yahoo.co.jp
0674673NGNG
要するに
Content-Lengthとhtmlデータを返してくれない。
なぜでしょうか?
0675671NGNG
>>672
情報ありがとうございます。
早速検索かけてみました。
ソースもあったので中を見たところ、どうもドライバを作って入れてるみたいですね。
(まだちょっと見ただけですが)

やっぱりドライバからやらないと出来ないのかな?
ちょっと大変(^^;)

取り合えずソースを眺めてみます。(asmファイルもあってちょっとくじけそうですが)
0676デフォルトの名無しさんNGNG
>>673
ちゃんとバッファが空になるまで読んだ?
0677673NGNG
>>676
読んでなかったよ。悪かったな。
0678673NGNG
>>677
偽者!
でも、その通りでした。Content-Length返さないのね。失礼。
0679デフォルトの名無しさんNGNG
すいません、便乗質問なんですが、>>673 と同じように
いろんなサーバに接続してデータを受信してみたんですけど、
Content-Length を返さないところが結構ありました。

結局 Content-Length は必須じゃないんですか?
0680デフォルトの名無しさんNGNG
>>679
HTTP1.0ではコネクションが切れるまでがコンテンツとなっている。(←たぶん)
内容が固定でないもの(例:掲示板cgi)はほとんどがそう。困ったもんだ。
HTTP1.1では対策が講じられているので、必ずサイズが分かる。
よってコネクションの切断の方法によらず転送の成否が分かる。
ただしサーバーが1.1である必要あり。
まあいまどき1.0なサーバーはないと思われ。
■ このスレッドは過去ログ倉庫に格納されています