623 :
VC初心者スレの685 :
04/11/09 00:44:12
> 別スレッドで描画 別スレからUpdateAllView()なんてできねーYO! ダウンロードスレッドはダウンロード専門にして、 メインウィンドウに対しPostMessageするのがいいと思うYO!
625 :
VC初心者スレの685 :04/11/09 01:55:51
>>624 さんきゅ、よう分からんけどやってみるわ。
よう分からんのならやるなよ。理解してから動け。
627 :
VC初心者スレの685 :04/11/09 08:20:31
>>626 うるさいんじゃ。我ドタマおかしいんけ。
っていうかそれネットワークプログラミングと本質的に関係ないだろ
629 :
デフォルトの名無しさん :04/11/09 08:42:22
630 :
デフォルトの名無しさん :04/11/09 09:10:34
>>611 通常のレジュームは更新なかったとき続きを取得だが
2chブラウザは更新があったときに取得だから
ちょっと特殊だけどな
632 :
デフォルトの名無しさん :04/11/09 14:38:01
スレ違いかもしれないけど質問させて下さい。 RHL の上でコード書いてるんだけど、 楽しようと思って xinetd を使っています。 (serverで指定する)プログラムに xinetd から 接続にきたリモートホストのIPアドレスを渡すことって出来ます? プログラムの中から取得することも無理だよね。 (リモートホストに教えてもらうしかないかな?)
何も考えずにgetpeername(0, ...) でいけるのか。 お騒がせしました。
634 :
613 :04/11/09 18:16:00
「UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットXTI」どこいっても在庫がありませんでした。(絶版!?) 後日、図書館とかもあたってみようと思います。
みんなUDPが好きだなあ。 おいらはUDPを「うだっぺー」と呼んでる。
UDPのチェックサムわけわかめ 疑似ヘッダ、イラネ。
637 :
デフォルトの名無しさん :04/11/10 03:11:18
そういや前から気になってたんだけど Punchingなんちゃらってシンメトリックでは使えないんだよね? IPアドレスもチェックするから・・・ じゃあ、Skypeはどうやってんの? 全てのNATを通過させる事に成功したって書いてるけど・・・ もしかして、RAWソケットでUDP自作して、アドレス偽装する方式とか?(汗 UDP自作なんて俺にゃ無理だ・・・orz
638 :
デフォルトの名無しさん :04/11/10 03:14:58
同期 >>>>>>>>>>>>>>>>>>>>>>>>>>>> 非同期
UDPでできることって大抵TCPでもできるからあまり使わないなぁ。 ブロードキャスト使わなきゃいけないときくらいか。あとはよっぽどパフォーマンスが 気になるところとか。
Ethernet装備だけどUDPもTCPもインプリメントされていない環境で これから実装するとしたらUDPとTCPのどっちが良いですか?
>>640 まず IP。
ってか、OS でも作ってんの?
IPと同時にICMPやARPもいる。
ARPはもちろんとして、俺なら全部ICMPでやるな
いやIP実装しないとICMP働かない。(大昔はともかく)
>>639 漏れは最近 HTTP 以外の生の TCP 使うことって殆ど無いなぁ。http なら proxy も通るし、
サーバ側の構築もラクだし。peer to peer だと TCP 通ることが殆ど期待できないのでudp
になっちゃうし。
>>637 サーバ側のNWを自前で構築していれば、A <-> B で UDP 通すために、まずサーバがA からの
パケットを偽造して B に送るなんてこともそう難しくないです(4年くらい前にやったことある)。
ただ零細企業や民間人だと、ソースIPが変なパケットは ISP やらホスティング元等のルータを
通過しない可能性があって難しいんだけど。
646 :
デフォルトの名無しさん :04/11/10 15:42:43
印刷の際にプリンタに送られるデータを 別のPC(OSはWin2000)のLPTポートで受信したいのですが 検索して調べてみた所、Win32APIだけでは不可能という文章を見つけました 実際にプリンタに送られるデータをPCで受信するソフトはあるのでしょうか? 素人の質問で申し訳ないです、よろしくお願いします
>>646 そのプリンタをネットワークで共有するのはできないの?
FILEにして流す事もできないわけじゃないけど。
648 :
646 :04/11/10 15:51:52
>>647 詳細を書いてなくてすみません
うちにある計測機器のCOMポートが調子悪いみたいで
PCでデータ受信ができない状態です
んで、計測機器からプリンタに繋げることができるんで
LPTポートからデータ取れるかなぁ、と思ってた所です
>>648 その計測器が出力するデータとは何者?
パラレルから受けて、何をするわけ?印刷のみ?
機械の修理はできないの?
>>649 計測器から出力されるのは数字の羅列で、テキストデータです
そのテキストデータをエクセルに入れて色々と編集するつもりですが
説明書にはプリンタにもテキストで送信されるとあったので
同様の作業ができるかな・・・と考えてる所です
自分は貧乏なんで装置の修理に大金出せない状態です・・・
>>651 それは調度いいですね
プログラミングと離れてすみません
ありがとうございました
654 :
デフォルトの名無しさん :04/11/11 10:20:06
655 :
デフォルトの名無しさん :04/11/12 13:38:41
657 :
デフォルトの名無しさん :04/11/12 23:21:16
ezwebのMXレコード引いてlsean.ezweb.ne.jpと帰ってきたので そこのSMTPサーバにTELNETから接続しようとしたのですが,なぜかConnection time outで 接続できません. なぜでしょうか?
>>657 ちゃと接続されるけど?
$telnet lsean.ezweb.ne.jp smtp
220 EZweb Mail
QUIT
221 Bye
659 :
デフォルトの名無しさん :04/11/12 23:55:31
660 :
デフォルトの名無しさん :04/11/13 00:14:36
663 :
デフォルトの名無しさん :04/11/15 15:55:33
ちょっと質問です 環境 端末A、B間は有線、端末B、C間は無線 端末AからCヘの経路を設定(GWをBとする) 無線は192.168.30.XX 有線は192.168.50.XX 各端末間の通信ができることは確認 以上のような環境でUDPパケットを端末Cに送ったのですが 端末C側でうまくパケットを取得(recvfromなど)できない状況が。。。 orz 端末CからAに対して経路を設定してやるとうまくパケットを取得できたのですが なんか納得できない。。。 だれか納得できる説明おながいしまつ
664 :
デフォルトの名無しさん :04/11/15 16:03:08
とどく保証はないから
模範的なプロセス間通信の方法について質問したいです。
LinuxでXML−RPCサーバを用いて分散処理が行えるシステムを
作っています。
http://xmlrpc-c.sourceforge.net/ XML-RPCサーバ上で
putJob()
getJob()
という二つの関数のRPCを作成し、クライアントが仕事を持ってきたり、
仕事を受け取ったりという事がやりたいです。
初めputJob()やgetJob()という関数の中で、普通にメモリ上に仕事を書き込む
スペースを用意してやっていたのですが、
putJob()したあとgetJob()をしてもputJob()した時の結果が反映されていませんでした。
調べると、クライアントからの要求ごとに別のプロセスが動いていて、メモリ空間が
異なるため、putJob()である値を変更しても、getJob()ではそれは反映されないようでした。
プロセス間通信のため共有メモリをしようしてこの問題を解決しようとしたのですが、
共有メモリにはサイズの制限があるのか、数十バイト以上の領域を確保しようとすると
実行時エラーがでます。
変更の記録をファイルに書き込む事で対応しようと考えてもいますが、実行速度の面で
少し不安な気もします。
こういう場合の模範的な回答を知りたいのですが、調べるためのキーワードかなにか
あったら教えてください。
> 共有メモリにはサイズの制限があるのか、数十バイト以上の領域を確保しようとすると > 実行時エラーがでます。 標準的な環境であれば、いくらなんでもこの程度のサイズが確保できないはずがない。
標準的な環境キター
DB使う。
>>665 「共有メモリ」とは具体的に何を指すのか? shm*(2)? mmap(2)?
XML-RPCの説明は余分で、「共有メモリ」に絞って質問し直すべきではないか?
それはLinux板が適当ではないか?
670 :
デフォルトの名無しさん :04/11/16 10:03:48
LANで結ばれたPC2台の間でバイナリデータのやりとりをしたいのですが、どのような方法が最適ですが? データは1MB程度で、それほど頻繁にはやりとりしません。
671 :
デフォルトの名無しさん :04/11/16 10:05:21
クロスのシリアルケーブルでつなげば?
>>665 プロセス間通信は RPC で行うのが最近の流行です。
Unix なら単に Pipe を利用しても良いでしょう。
共有メモリみたいなものが必要な場合には、まず DB の利用を考え、
SQL が解らないなどのくだらない理由以外できちんと否定的な結論が
出てから他の手段について検討してみてください。
また、多くのOSにおいて小さなファイルに対するファイルI/Oは
それほど低速なものではありません。
何言ってんだか
DB検討は一番最後だろ。 ローカルのプロセス通信にDBかよ。めでたい奴だな。
677 :
デフォルトの名無しさん :04/11/16 18:38:10
質問です。 RAWソケットでUDPを作りたいのですが(ソースアドレス偽装の為) どこかに良い資料ないですかね?
/usr/src
680 :
デフォルトの名無しさん :04/11/16 20:17:41
質問です。 最近Winsockの勉強を始めたのですが、 どうもあちこちでACKやSYNと言う用語を見ます。 普通のTCPやUDPのsend()/sendto()で送る文字列とは別の何か特別なパケットなのでしょうか?
はい。
>>680 あちこちで見てるんなら、読もうよ。それを。
683 :
デフォルトの名無しさん :04/11/16 20:38:06
質問です。 最近Winsockの勉強を始めたのですが、 どうもあちこちでACKやSYNと言う用語を見ます。 普通のTCPやUDPのsend()/sendto()で送る文字列とは別の何か特別なパケットなのでしょうか?
684 :
デフォルトの名無しさん :04/11/16 20:40:30
マルチポストしようとしたら最初に書いたスレにまた書いちゃった。 といったところか。
俺の想いもあの子に届いて欲しい
689 :
684 :04/11/16 22:40:40
ためになる回答をどうもありがとうございます。 共有メモリはshm*(2)という意味で使ってました。 共有したいメモリの量は、今はなんともわかんないですが、 数十メガ以上、場合によってはメモリに乗り切れない量にも なりそうなのでmmap(2)を使って解決しようと思います。 DBの使用はすごくありだと思っていて、考えてもいたんですが、 諸事情で今回はつかえないためこういった方法にします。 ありがとうございました。
それで分散処理になるの?
複数で通信すれば分散処理
すみません。やっぱりもう少し教えてください。 sys/shm.hを使って if((shmid = shmget(key,100, IPC_CREAT | 0666)) < 0) { perror("shmget"); exit(1); } といった事をしたいのですが、引数の100の所を200とか 大きな数字にすると実行時Invalid argumentといったエラーが出ます。 /proc/sys/kernel/shmmaxのファイルには33554432と書かれているので、 33Mまで共有メモリを使えるということなのかな?と考えているのですが、 なにがまずいのか教えてください。
確かにもうネットワークプログラミングの事じゃないですね。 質問が続いてたのでここがよいかなと思ったんですが、 UNIXプログラミング質問スレの方に移動したいと思います。 ありがとうございました。
696 :
デフォルトの名無しさん :04/11/17 11:17:47
質問です。 最近Winsockの勉強を始めたのですが、 どうもあちこちでACKやSYNと言う用語を見ます。 普通のTCPやUDPのsend()/sendto()で送る文字列とは別の何か特別なパケットなのでしょうか?
荒らしウゼ どうせ本人じゃないだろうな。 とりあえずこれ以上やるんだったら荒らし報告として通報してくるよ。
質問するときはトリップ必須にするかID導入要望でも出してくるか
私は、研究生なのですが,今,プログラムがわからず危機的状況です。 JAVAでファイルを保存するプログラムを作成したいのですが, どのようにすればよいかわからないのです。 (ついでに私は、JAVAプログラムど素人です。何処から初めていいのかも 分らないのです。) 動きとしては,以下のようなことです。 クライアント(ブラウザ)からファイルが送られる。 サーバ側で,そのファイルを受け取るとDBに保存する. DBに同じファイルがあるならば,クライアントで上書きするかどうかを確認する. 上書きOKならば,DBにあるファイル(同じファイル)を消して,上書きする. どのようなプログラムをすればできるのでしょうか? ⇒またこの場合DBは、どのような構造にすればよいのでしょうか? どうぞ皆さんのお力をお貸しください。
702 :
デフォルトの名無しさん :04/11/17 23:28:44
703 :
デフォルトの名無しさん :04/11/19 18:11:21
sshクライアントを作りたいのですが、そのようなクラスとかありますか?
704 :
困ったくん :04/11/19 18:14:15
Visual Basicについての質問はこちらでいいのでしょうか?
なぜそこまで必死に環境や言語を書かないのかわからない
Ruby!
>>705 VBでsshクライアント作りたいんでしょ
708 :
デフォルトの名無しさん :04/11/19 19:58:59
いいえ、C++Builderです。
ssh -p 44444 -fgNR 1080:localhost:44444 aaaaaaaa.bbbb.ccc pc1-----------------------------------------------------------pc2 ./client -p 1080 127.0.0.1 --------> ./server -p 1080 INADDR_ANY clientから'A'という文字コードを送りserver側で++して'B'を返すプロラムなんですが 'S'という文字しか帰ってきません。 で調べたら "SSH-2.0-OpenSSH_3.8.1p1 Debian-8.sarge.3"という文字コードが受け取れました。 サーバーまで接続できてないようですがなぜなのでしょうか? おしえてくだしー
ネットワークプログラミングとSSHの使いかたは関係ないので他所へどうぞ。
そうだそうだ、読解家や!
712 :
709 :04/11/20 22:04:34
お前等やくたたずだなw
713 :
デフォルトの名無しさん :04/11/20 22:07:10
Punchingなんとかの次はsshか
それにしてもOpenSSHはたかが暗号程度でなんであんな煩雑な構成になってんだろね 頭痛くない?
ファイル転送もポートフォワーディングも鍵管理もしますがなにか?
X11の転送もな
717 :
デフォルトの名無しさん :04/11/21 02:16:29
Punchingなんとかってマジでいらねーな。 RAWソケットでTCP自作して、ちょっと小細工すればNAT越え出来るじゃん。 UDPみたいなエラー処理しなくていいし。TCPのプロトコルは公開されてるから何にも考えずに実装できるよ。 Kazaaの作者もSkypeにPunchingなんとかっての使ってるみたいだが、所詮素人だなw
まぁどうにかして構って欲しいという意気込みは伝わった。
分かったんなら構ってやれよ
720 :
デフォルトの名無しさん :04/11/22 10:07:39
UDPソケットとTCPソケットを同じポートにバインドして, UDPソケット側でUDP hole punchingしていれば, 外部からのTCP接続を受けられ…ないか. ルータのアドレス変換テーブルがTCP/UDPで共有されていれば うまく行きそうだけど,だれもやってないということは,ダメなんだろうなぁ.
>>721 > ルータのアドレス変換テーブルがTCP/UDPで共有されていれば
んな実装するエンジニアがもしいたらアホです。
>>724 キタ━━━ヽ( ゚∀゚ )ノ━ヽ( )ノ━ヽ( ゚∀゚ )ノ━━━!!
サンクソ
とりあえず読んでみる
>>723 ただRAWでパケット生成するだけのツールだろ
こんなのだったらソース付きで他にいくらでもあるだろ・・・
>>723 割り込みエラーでるぜ・・・
このダイアログ ボックスではなく、Just-In-Time (JIT) デバッグを呼び出すための詳細については、
このメッセージの最後を参照してください。
************** 例外テキスト **************
System.Net.Sockets.SocketException: ブロック操作は WSACancelBlockingCall の呼び出しに割り込まれました。
at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remoteEP)
at System.Net.Sockets.Socket.SendTo(Byte[] buffer, EndPoint remoteEP)
at IPhederIncl2.Form1.sendRawSock(Int32 SendCount, IPAddress sendhost_IP, Byte[] IPHEAD)
at IPhederIncl2.Form1.BuildByte()
at IPhederIncl2.Form1.Button_send_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
729 :
デフォルトの名無しさん :04/11/23 21:57:29
ほ
>>728 まじ?
SrcAddrをDNSに問い合わせないときはIP直打してくれ
それ以外だとバグの原因はわからん。
テストは結構したんだが。
731 :
デフォルトの名無しさん :04/11/27 14:40:38
Windows2003SP1でRawSockがつかえなくなったってまじですか? もうWindowsとさよならする日がきたのかも
732 :
デフォルトの名無しさん :04/11/27 14:41:54
WindowsXP SP2で使えなくなったという話は聞いたけど。
736 :
デフォルトの名無しさん :04/11/27 15:49:02
こんにちは WinsockでHTTPS通信をしたいのですが、 方法がわかりません。 誰か詳細がわかるサイトをご存知ではないでしょうか? ちなみに、SOFTBANK社のWinsockプログラミング2.0という本を持ってますが、 HTTPS通信に関して記述されてないみたいです。
737 :
デフォルトの名無しさん :04/11/27 16:43:42
・・・マジですか?>SP2以降のWindowsではRAW使えない。 ヤバイです。(汗 今やってるプロジェクトでモロRAW使ってます。。。 完成寸前なのですが。。。 それが本当ならうちの会社はつぶれます。。。
>>738 RAQ ってなんですか?
ググッても痴呆のぼくにはわからないので教えてください
RAWのタイポ
ソースアドレス偽装をしたUDPが使えないのか。 でも、SkypeとかってPunchingHoleUDP使ってシンメトリックNATを通過出来るから 恐らくUDPのソースアドレスを偽装してやってるんだと思ってたけど、これがSP2でも使えるのは何故?
742 :
デフォルトの名無しさん :04/11/27 21:39:04
OpenSSLのWindowsへのコンパイルですが
http://waga.homeip.net/openssl/install_win.html C:\src\openssl-0.9.6a>nmake -f ms\ntdll.makのコマンドを入れたら
>cryptlib.c
>crypto\cryptlib.c(59) : fatal error C1083: インクルード ファイルを開けません。'stdio.h': No such file or directory
>NMAKE : fatal error U1077: 'cl' : リターン コード '0x2'
>Stop.
となり、コンパイルがSTOPしてしまいます。
原因がわかりません。
どのように対処すればいいのでしょうか?
ご返答いただけると、助かります。
>>743 Skypeってシンメトリックは無理なの?
てっきり出来ると思ってたから、どうやってるんだろうな?と不思議だったのだが・・・
レジストリ書き換えれば送信出来るようになるらしい
Skypeがレジストリ書き換えるとは考えられない。 もしかすると、シンメトリックの場合だけ通信が可能なノードに仲介してもらうとかなのかな?
>・無効なソースアドレスによるUDPデータグラムはRAW socketで送信できない。送出されるあらゆるUDPデータグラムのIPソースアドレスは必ずネットワークインターフェイス上に存在しなければならない。そうでない場合データグラムはドロップされる。 これを問題視してるんじゃないの? つまり、シンメトリックは双方のアドレスまでチェックするのでPunchingHoleUDPをそのまま使っては駄目 そこでRAWソケットでソースアドレスを偽装したUDPを作成し使おうとするのだが ここで上記の制限のおかげで、無理 と
おいブタども、X800って10800っていう意味だって知ってたか?
( ・∀・)つ〃∩ ヘェーヘェーヘェー
関係ない話なので
>>751 死ね
753 :
デフォルトの名無しさん :04/11/28 07:35:01
RADEONのことかー!
754 :
sage :04/11/28 08:12:45
TCPで通信したい場合、WinsockではWSASocket(AF_INET, SOCK_STREAM, 〜 とソケットを作成する事で可能で、 「ホストAからホストBへ1000バイトデータを送る」場合、 ホストBではrecv一回のコールで1000バイト取得できない場合もあるので、 recvを1000バイト取得できるまで、コールする必要がありますよね? ここで質問なのですが、 プロミスキャスモードで受信する場合でも、上記と同様に 「IPパケット」が分断された状態で受信される事はあるのでしょうか? 同様にIPパケット長だけ受信できたかチェックし、できていない場合は再度 recvをコールする必要があるのでしょうか 実装例はたまに見るのですが、受信部を見るとrecv一回しかコールしないよう になっており、「IPパケットだから分割されて受信する事はないのかな?」 と思いつつ、これを正解とする資料を見つけ出せませんでしたので、質問しま した これについてご存知の方がいるならば、教えていただけませんか
あります
>>742 Microsoft Visual Studio\VC98\Bin\VCVARS32.bat
バージョソによってVCVARS32の場所が違うな
環境のためのメモリが足りません
今更9x系使ってるのかよ(w
760 :
デフォルトの名無しさん :04/11/28 15:15:44
行番つけサーバ作ってるんですが、なぜかだめです。 @平行サーバ Apipeを駆使して、クライアントからのデータを”cat -n”に与え、結果をもらったら、クライアントに送り返す、というやつなんですが、、、 おかしなところあったら、指摘してください。↓ pipe(fd),pipe(fd2) while (1) { cfd=accept(lfd,(struct sockaddr*)NULL,NULL); printf("accept OK.\n"); if ((pid=fork()) < 0) { perror("fork");exit(1);} if (pid == 0) { /* child */ close(lfd); printf("fork OK.\n"); while ((nbytes=read(cfd,buf,sizeof(buf))) > 0) { if ((pid2=fork()) < 0) { perror("fork2");exit(1);}
761 :
デフォルトの名無しさん :04/11/28 15:16:38
if (pid2 == 0) { /* child-child */ printf("fork2 OK.\n"); dup2(fd[0],STDIN_FILENO); close(fd[0]);close(fd[1]); dup2(fd2[1],STDOUT_FILENO); close(fd2[1]);close(fd2[0]); execlp("cat","cat","-n",(char*)NULL); perror("cat"); exit(1); } close(fd[0]);close(fd2[1]); printf("OK1 "); write(fd[1],buf,nbytes); printf("OK2 "); nbytes=read(fd2[0],buf,sizeof(buf)); printf("OK3 "); write(cfd,buf,nbytes); while (wait(&status) != -1) ; /* do nothing */ }
762 :
デフォルトの名無しさん :04/11/28 15:18:05
close(fd[0]);close(fd[1]);close(fd2[0]);close(fd2[1]); exit(0); } close(fd[0]);close(fd[1]);close(fd2[0]);close(fd2[1]); while (wait(&status) != -1) ; /* do nothing */ }
マルチ
こんなのすらわからんやつが書くソフト使う方も災難だな。
>>763 for(c=0;c<strlen(sessionID);c++){
wsprintf(encode,"%%%x",sessionID[c]);
}
簡単に書いたが、それの場合特殊文字だけをASCII文字へ変換しないとLoginできないんやとおもう。
そのセッションIDを一文字づつ特殊文字かどうか調べ、特殊文字ならprintfでASCII文字へ変換すればいい。
この辺はクセが強いから難しいだろうけどガンガレ。
>>742 誰も返答してないみたいなので一言
このスレでOpenSSLがきちんと分かる人はいないと思う。
あまり期待しないほうがいい。
俺もよくは知らんが^^
>>767 どんな難問かと思ったらただのコンパイルエラーかよ
がっくりさせるな
>>768 じゃどうしてコンパイルエラーになるのか答えてみぃー^^
>>767 よくわからんが、
漏れの環境だとActivePerl、ml.exe、MSVC6.0SP5が入ってて、
openssl-0.9.7dのバイナリは作成できてる。
途中でmasm使うやつな。
INSTALL.W32の中読めとしか言えんな。
OpenSSL使ってないけどな。
だって、どう見たって、「stdio.hが見つからない」だよ。 INCLUDEを設定するためのvcvars32.batを実行してないだけでしょ。 ネットワークプログラミングとは全く関係ない。
772 :
デフォルトの名無しさん :04/11/28 21:17:04
ネットワークプログラミング始めたばっかなんですけど ルータ通してインターネットに接続してる場合 なんか特別な設定しないでも外にデータ飛んでくれますか? ポートマッピングはしました、どうか教えてください
>>772 どういう通信でどういう不都合が起こると想定して言ってるのかをまず説明すれば?
ただアドレス指定してコネクトするだけのプログラム書くのに普通はルータ云々を
考慮することはないと思うけど。ルーティングの仕組み自体について理解がない
んならそっち勉強してきてからだな。
774 :
772 :04/11/28 22:13:13
>>773 申し訳ないです
IRCクライアントを作ろうとおもってwinsockの勉強しているのですが
とりあえずconnectだけさせるプログラム書いて実行させたのですが
10060エラー(接続要求がタイムアウト)がでてしまい
いろんなとこに接続させようとしてもかわらず
とりあえずあえてポート番号間違えて打って実行させたら10061エラー(接続拒否)
が出たのでプログラムは間違っていないのではないかと思い
質問させてもらいました
俺がただ単にプログラムを間違えてるだけなのでしょうか?よろしくお願いします
windump(
>>3 )で追跡しろ。
想定しているIPアドレス、ポート番号に接続しようとしているか。
>>755 ありがとうございます
やはり受信データ長をチェックする必要はあるのですね
もしこれについて、何か注意を促している書籍、情報へのポインタをご存知でしたら、
教えていただけないでしょうか?
何故受信データ長? 接続段階で失敗してるんでしょ。
778 :
774 :04/11/28 23:22:03
>>775 ありがとうございました
WinDumpで追跡したら、ポートが変になっていたので見てみたら
htonsしていなかっただけでした、athlonだからいらないと思ってました;
>athlon 一瞬新しく追加されたPOSIXの関数かと思ったよ・・・
At Host Local Network
Athlonは魔法の石ではない。
athlonだからいらないと思ってました;
alphaと間違えてるとか。alphaがbig endianか知らんけど。
athlonなら毛糸洗いに自信がもてるよ。
athronな
Ruby!!!!!!!!!!!!!!!!!!!!!!! >>>>>>>>>>>>>>>>>>>>asshole
athlon>>|超えられない壁|>>Ruby!!!!!!!!!!!!!!!!!!!!!!! >>>>>>>>>>>>>>>>>>>>asshole>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<お前
789 :
デフォルトの名無しさん :04/11/29 20:24:08
Rubyは
790 :
デフォルトの名無しさん :04/11/29 20:25:48
最高!
791 :
デフォルトの名無しさん :04/11/29 20:30:25
何この変な荒れ方
792 :
デフォルトの名無しさん :04/11/29 21:57:23
IPやTCP, ICMP等のパケットを自分で作りたいんですが、それぞれの関係や、具体的なデータの例を出して解説してるWebサイトってありませんか? (UDPパケットはIPパケットのデータ部分に含まれてるとか、そういうプロトコル同士の関係とか)
仕事なら金を惜しむな。遊びならそんな怪しげなことするな。
金を惜しむならRFC読め。
http://www.rfc-editor.org/ 時間を惜しむなら本を読め。
ComerのInternetworking with TCP/IPが代表的な教科書。
なぜかamazonにはハードカバーしか載ってないが、
安めのペーパーバックのものもあるはずなんだが(北米以外では)。
800 :
デフォルトの名無しさん :04/11/30 06:42:37
801 :
デフォルトの名無しさん :04/12/01 06:40:37
age
802 :
デフォルトの名無しさん :04/12/01 06:40:59
803 :
デフォルトの名無しさん :04/12/01 08:03:27
質問です。
HTTPのクライアントをWinsockで作成しています。
ttp://blog.goo.ne.jp/index.php?fid=freshEntryRss なんですが
HTTP/1.0とHTTP/1.1とバージョン番号を変えただけで取得する内容が異なってしまいます。
具体的には1.1の場合データ部の先頭に
”17a36”
のような形の文字列がつき、末尾には
2
(改行略)
0
などといったものがつきます。
他のURLではどちらにしても同じ内容がかえってきます。
レスポンスヘッダはどちらも
HTTP/1.1 200 OK
となっています。
何が原因でこういったことが起きるのでしょうか?
また先頭と、末尾にくっついたものはなんなのでしょうか?
わかる方がいらっしゃいましたら教えてください。お願いします。
chunked
chunked… OKわかりました。ありがとうございます。 …あきらめます。
>>796 この本、よさそうなんだけど、サンプルコードがCなのか、、、
>>806 漏れは昨日ゲッツしたよ。
いまサンプルコードをC#に修正中。
808 :
デフォルトの名無しさん :04/12/01 13:09:26
ストリームソケットで質問です。 連続してsend()を行った場合、 recv()すると、send()したデータが繋がって受信してしまいます。 分けて受信する方法は無いのでしょうか? 受信するバッファは、どんなデータが来ても良いように、 多めに取っています。 送信する際に \0 を付けてやると、1つ目は \0 の場所で受信するのですが、 残りを受信する際に、また連続で取れてしまいます。 送る側 send( "a\0" ); send( "bc\0" ); send( "def\0" ); 受け取る側 char* pcBuf = new char[ 100]; while( 1 ){ recv( pcBuf ); printf( "%s\n", pcBuf ) } //結果///////////// a bcdef ↑こんな感じになってしまいます。
FAQ嫁
FAQ読みました。 大体理解できました。 ありがとうございます。 というか、\0あってもなくても変わらないし...orz
Winsockの質問です。 TCPでサーバ動作させているとき、サーバソケットはオープンしたままで 接続先ソケットをclosesocketしても問題ないでしょうか? サンプルを見てみると、異常時には接続先ソケットを切断しているので、 処理としては問題ないように思うのですが…。
812 :
デフォルトの名無しさん :04/12/01 18:06:19
>>796 このURLアホみたいに貼る奴いるけど
作者か出版社か?あんまりしつこいと業者の宣伝として通報するぞ
先輩いわく データとデータの間は1秒休みが基本だぜ! ・・・マジかよ
合ってるよ
>>811 shutdownした場合と、closesocketした場合に、
blockingされていたrecvの戻り値を比べて見なされ。
>>810 > というか、\0あってもなくても変わらないし...orz
sendのところ省いて書いてるけど、strlen("ab\0")してない?
\0も送りたければ、strlen + 1だぜ?
>>813 その先輩はabsolutely糞。
817 :
デフォルトの名無しさん :04/12/02 00:27:56
>その先輩はabsolutely糞。 現実的かつ具体的にどう糞なのかを説明してください。
脳みそにウジ虫湧いてる。108匹/cm^3
要は相手が受け取れる速度でデータを送れってことだ。 アプリが固まった時にマウスをクリックしまくる奴は糞。
>>819 そういうアプリを作る奴こそが糞なんだけどな。
同期型ソケットしか使えない愚か者が愚痴をこぼすスレじゃないんで
無能さを露見するような恥ずかしいレスはしないでくれ。
>>821 はぁ?なにそれ
馬鹿?あんた馬鹿か?面白いの?それ。お前、面白いって思って打ったのか?!
どんなツラして送信したんだ?いっぺん鏡みてみろよ!
う〜ん、マンダム。
824 :
デフォルトの名無しさん :04/12/02 07:26:38
>>815 む、やってみます。
素人な質問に答えていただいて感謝。
Raw IPの話題をするのは厨房ときまってる Raw IPがわかってたら質問自体しないしな
828 :
デフォルトの名無しさん :04/12/02 09:29:42
/ // ̄ ̄\ヽ /: : : : . :`l、 | │| /^l l^ヽ | ∠-'''´: ̄ ̄``ヽ、| | │| l:::::l l:::::l | /: : : : . . : \ | │|┌┐┌┐| l : : : : ._,: -‐-:、_ . : .:.:/ | │| l::::l .|::::l .| l_ ,::-'''´ _,. --:、_`''-、_/ | │\┘.└'/| |_,. ,.::-: :|| | `''-、| |──┴────┤ .|,l.|,l-、!ー┘ニニ二r|!r-、 l::-‐―――‐―=―‐ヽ r‐:-.、 iハ!'´li゙}゙f| '´lリ` |l}、l ,r‐‐v‐、 / ノ リ ル' レ' リ リ`ー-ー` / (_i_ノl l;  ̄.ソ  ̄ j「ノノヽ.(_ァ ノ .) / レヽ| '"^二´ `ニ^h /ヽ、_,..:.:.:,ノヾ! Lャ- ,!r':. ヾ:. . ' ,ノ゙) く { ^r ゙⌒////(⌒ { | l:.: . '. .:.:/ .:', ーニ-''" /::.:i:.: `:.: . `ー-く ヽ ヽ.( ij ∠ィ リ >、.__,. ': .;ノ / i、 ー' /! ヽ ::.: :`.ヽ.、__) ) . ヽ ド、 r ⌒`ー--‐1 ,' ( '. .:.: _」 \_/ ,! `ヽ、、_:.: : . ヽ、,ノ ヽl ト、ヽ. l / \__,,、-‐''"´ |i , ′ `ー- 、..__,ノ゙ リ \` -─- , ' / `‐- _ ′! / ! _,..、 ''"´ ``丶、 ─- ..⊥. ` ー- イ-‐''" ̄ヽ. / _ ヾ  ̄`` r┴'''"´ ̄ -''゙
830 :
デフォルトの名無しさん :04/12/02 22:40:02
えーっと、、、保守
保守は上げなくても良いと何度いったr(ry
832 :
デフォルトの名無しさん :04/12/02 23:42:44
パンの枚数を(r
13枚 私は和食ですわ
835 :
デフォルトの名無しさん :04/12/03 06:50:25
WindowsをクライアントでLunuxをサーバーという アプリケーションを作りたいのですが、Winsockを 解説したサイトだと、WinsockとLinuxのsocketとは 互換性がなく、繋がらないで、送受信が出来ないという のを見たのですが、もし、Windowsのクライアントと Linuxサーバーを作るとしたらJavaくらいしか ないのでしょうか? それか、Linuxのsocket互換のWindowsのsocketを 作るしかないのでしょうか? すいませんが宜しくお願いします。
そのサイトのURL晒してくれ
>>836 >Winsockを解説したサイトだと
どこだ、そのDQNサイトって
ありえねーよw その理論だと、Linux + Apacheサーバなサイトは、Windowsじゃ見れないことになっちまうんじゃないのか?w
そこまでDQNなのも珍しいんじゃなかろうか。
プログラムをそのままもっていっても動かないというだけで、 > WinsockとLinuxのsocketとは互換性がなく、繋がらないで、送受信が出来ない なんて事は全くない。 あなたがどちらを普段使っているか知らないが、 Windows(IIS)のサーバにも、Linux(Apache)のサーバにも問題なくつながるでしょう。 その糞ページの記述は全て無視すること。
かぶった…orz
その糞サイト、どこなのか知りたいよー。 単に836が理解していないだけって可能性も大だけど。
その後、836の姿を見た者はいない・・・
FireFoxでIE用のサイトが見られないのは有名な話。
>>845 それはSocket云々じゃなくて、ブラウザのレンダリングエンジンの差じゃ?
TCP/IPという共通のルールがあって成り立ってるのがインターネットなわけですよ OSがなんだろうが開発環境がなんだろうがインターネットで通信するってことは そのTCP/IPの流儀に合わせてやるということなんですよ
ここでリセット ------------------------------------------------------------ ノーマルモード ↓
FireFoxでIE(ry
改行コード間違ってるんじゃないのか
>>836 > 解説したサイトだと、WinsockとLinuxのsocketとは
> 互換性がなく、
までを書いてあったんじゃないかと思う。同じC言語開発環境でsocketを扱っても
コードの互換性はないって言いたいだけじゃない?そこから後の部分は
>>836 が
勝手に思ったことだろ。だって「つながる」のなんのってのと「ソケット」云々っての
は話のレベルが違う部分だから。
Pentium4で送信したデータをPowerPCで読み込むと化けるのは有名な話。
エンディアン違いもいいとこ
こうして質問とは関係なく予想だけで論争が始まる ↓
856 :
デフォルトの名無しさん :04/12/04 00:47:31
さがりすぎ
つーかおまえらさすがに釣られすぎだろ。スルーしろよ。
WinsockとLinuxのSocketはm9(^Д^)プギャー
IEコンポーネントの話も、ここで良いのかな? ATLってのを使ってSDKで、IEコンポーネントをウインドウに貼り付けました。 それでIEコンポーネントをサブクラス化にしても、キーボードをフックしても いつのまにか、キーボードのメッセージが飛んで来なくなります。 どうやって、キーボードのメッセージを捕まえたら良いですか?
↑ 開発環境は、VC++6.0 (SP6)、OS 2000(SP4) 使ってます。
おまえ「IE」ってついてるだけで→Web→ネットワークって発想だろ。 質問する場所考えるときにもっと頭使えよ!
昔、IEコンポーネントスレってあったような気がするんだけど、どこいっちゃったの?
数日前に落ちた。
980越えで落ちてそのまま。 俺は、WinInetならともかく IEコンポーネントやFireFoxとネットワークプログラミングは 殆ど関係なく、思い切りスレ違いだと思ってるけどね。
Linuxのsocketはオープンソースですが、 winsockはクローズドソースなので、相性が悪いです。
???
嫁と相性が悪いのはソケットのせいでしょうか?
>>861 >>864 発想はその通りです。
このスレだとネットワーク全体のこと、やってるのかなと思って
質問させてもらいました。
勉強不足で、すみません。
>>862 昔みかけたことあったので、そのスレに聞きたかったのですが
落ちてたんですね。
>>865 >>866 誘導ありがとうございます、過去ログ読んで来ます。
>>853 そんな話あったっけ? と思ったが、
ネットワーク・バイトオーダーを知らん知障だったってことか。
872 :
デフォルトの名無しさん :04/12/04 09:27:52
すぐに分からない871も・・・
勘弁してやれ。当たり前のことすぎて気付かないってことはあるもんだ。
ここでリセット ------------------------------------------------------------ 再開 ↓
1台しかPCを持っていない場合、 ネットワークプログラミングの勉強をするにはどうしたらいいのかな。 ものすごく基礎的な話題にしてみるテスト
internetに接続されたPCのほとんどがIntel PCだというのに、 ネットワーク・バイト・オーダーがbig endianというのは はっきり言って無駄である。
じゃあ変えとけ。
>>876 TCPのクライアント/サーバなら一台でできるよ。
どうしても別ホストへの接続がやりたいなら、
VMWareやVirtualPCなどのエミュレータを導入するとか。
coLinuxもおすすめ。
勉強だったらこの環境でゲップが出ると思う
「ネットワーク・バイト・オーダーをlittle endianとする会」
127.0.0.1 を相手に通信する
普通テキストファイルは big endian だろうが。
ネットワークの話してるんだけど? スレ違いも甚だしい
>>876 中古でボロそうなPCを買ってくるという手も
886 :
デフォルトの名無しさん :04/12/04 12:25:55
性善説のUNIXサーバを使え。
>>876 「Virtual Server 2005」 イイヨ
>>876 localhostとloopback network interfaceを。
ネットワークにつなぐ必要すらない。
てか鯖クラックすればいいじゃない
確かに「1台のコンピュータにインストールできます」ってライセンスでも 実記と仮想PCの両方にはインストールできない場合が多いな ところで死ぬほどどーでもいーが喪前らFireFoxじゃなくてFirefoxですよ
894 :
デフォルトの名無しさん :04/12/04 21:02:21
だから性善説の(ry
>>877 Intelがビッグエンディアンにすりゃ問題解決だよなぁ、
と常々思っています。
いまさら変えられない
>877 組み込み系はビッグエンディアンが多いが... ネットにつなぐのはPCに限らない 携帯とか、いろんな機器類とかね
まあ、独自プロトコルなら困らないでしょうけど。
というか、通信データ内で、integer型が占める割合ってどのくらいよ? byte swapが無駄なんて考えている事自体、時間の無駄だと思うけど。
>>900 精神分裂病か?
一行目と二行目に関連がないぞ
>byte swapが無駄なんて考えている 誰もそんなこと言ってない。
>通信データ内で、integer型が占める割合ってどのくらいよ? どうやって調べろと?
無駄という話ならそんなどうでもいいことより チェックサム計算しながら使われていないとか もっと気にすることがあるだろ
そういえばさ、 TVでちらっと見ただけなので、詳しいことは知らんが、 痴呆症が認知症に名称変更されるらしいね。
>>905 リンク先には「統」合失調症って書いてますけど
クローズド・ソースならbyte orderは好きにしてくれていい。 オープン・ソースは、network byte orderを使うのが原則。
909 :
デフォルトの名無しさん :04/12/05 02:39:44
>>906 そうです。「認知障害」という案も出たそうなのですが、
すでに心理学で使用されているとかで。
>>908 リトルエンディアンかビッグエンディアンかの話なんだが?
リアル池沼?
913 :
デフォルトの名無しさん :04/12/05 03:23:38
>>911 阿呆か。ソースがクローズドかオープンなのかは関係ない。
Intel以外のCPUを使えばいい。
オープン・ソース・バイト・オーダー というのを決めればいいと思うんだ。
917 :
デフォルトの名無しさん :04/12/05 07:52:41
バイトオーダーくらいカタカナで書け
918 :
デフォルトの名無しさん :04/12/05 10:56:49
919 :
デフォルトの名無しさん :04/12/05 10:57:32
ネットワークバイトオーダーの実体がlittleだろうがbigだろうが、 アプリ側でntoh,htonをサボるいいわけには成らないよ。
統一すれば無駄が省けるって話だろ。 いくら劣勢とはいえゴキブリのようなbig連中を死滅させるのは難しいが。
>>898 ルータなんかはPowerPC, MIPS系が多いからね。 ネットワークコード書くのにバイトスワップを
しなくて良いのはやっぱり楽よ。
こんなにあほな流れが続いてるとは思わんかった
>>921 だから、「オープンソース・バイトオーダー」にしよう、と。
パケットモニタで見たとき読みやすいし
927 :
デフォルトの名無しさん :04/12/05 18:01:18
SMTP-POP等のメール用(?)サーバを経由せずに、メールを相手に確実に届ける方法ってありますか? 相手のIPアドレスだけがわかってる状態で、相手のシステムフォルダに送りたいんです。
928 :
デフォルトの名無しさん :04/12/05 18:06:24
(´・ω・`)なんで通報されるんだろ・・・ショボーン
悪いということを理解できない奴が真の悪。
>>929 は未成年の犯罪者予備軍。
>>927 > 相手のシステムフォルダに送りたいんです。
それってもうメールじゃないじゃん
マリネラ一の美少年
>>927 相手が何の準備もなくいきなり送れるわけないだろ。
ファイルコピーしたいならFTPかフォルダの共有させるとかなにかサービス利用しとけ。
934 :
デフォルトの名無しさん :04/12/05 19:49:11
935 :
デフォルトの名無しさん :04/12/05 19:56:36
hostはbig or little networkはmiddleにすればすべて解決
938 :
デフォルトの名無しさん :04/12/05 20:15:11
939 :
デフォルトの名無しさん :04/12/05 20:42:54
big endianでもlittle endianでもないものもあるよ。
>>927 システムフォルダじゃないけど、スパマーのルートにtelnetで送ったことならある。
だからそれはメールじゃないだろと・・・
944 :
デフォルトの名無しさん :04/12/06 15:05:51
ちょっと教えてください サーバー側でlisten後acceptすると相手から接続要求がくるまでacceptから抜けてこないのですが 一定時間経つとぬけるようにするにはどうしたらいいのでしょうか?
selectはダメ?
>>944 そういうケースって現実のどのくらい起こってるの?
acceptが即戻ることを前提に組んでるのが結構あったりして・・・
>>945 あ、すみませんselectではどうやってやればいいですか?
>>946 いえ、例えば普通にIPやポートを間違った状態でacceptすると現状では一生抜けてこないので・・
>>946 select使おうぜ。
acceptがすぐに戻るなんて幸せなことはほとんどない。
人生に幸せなことなんてほとんどない。
ないんだよ・・・
949 :
デフォルトの名無しさん :04/12/06 15:30:31
acceptの仕様を理解してるのかと小一時間・・・。
945の言うようにselectで待つか、acceptスレッドを切れ。
>>946 サーバなのにacceptが即戻ることを前提にするプログラムって、
どんなんだ。
950 :
デフォルトの名無しさん :04/12/06 15:32:44
>>947 なあ、まずはヘルプくらい読もうな。
selectにソケットIDとタイムアウトまでの時間を渡すんだ。
あ、selectでできたわ つか、おまいら文句ばっかで役にたたねーわ、あばよ(´,_ゝ`)
_ (⌒Y´ ̄ヽ ∧_/( ̄)) ∧_∧
γ´ `ヽ_`と.__ )( ゚ ∩( 《 ( ゚ ∞゚ ) ゴロン
)) ,、 , ) <、_,.ノ ヽ、.__,ノ l つ つ
((_/し∪V Å .ヽ.__ノ!__)) ゴロン
∧__∧ / \ ∧_∧
( ) ( ;・∀・) (゚∞゚ )ペーチュンチュン〜。
( つ (U_U )つ (つ と)
.ヽ___ノj
>>951 (⌒Y⌒)
∧__∧ . / ̄ヽ ̄
(゚ ) __ ( __ ) ( ゴロン
と ヽ ( ̄))∧_∧ /´ `Y⌒) VUVJ_)
(__ト、__丿 〉 》∩ _) ( .__つ´
ヽ、.__,ノ ヽ、__,.>
∧∧
(゚∞゚)ペー | |チュンチュンチュン!
と ) | | 人
Y /ノ .人 < >__Λ∩
/ ) .人 < >__Λ ∩Д´)/
_/し' < >_Λ∩Д´)/ / ←
>>951 (_フ彡 V`Д´)/ / ←
>>951 / ←
>>951
__
〜|・∀・|〜 ←
>>951 |__|
( ゚∞゚) | |
___ ?
〜lД・〜l
|___|
((((((( ゚∞゚) < |
___
Ξ( ゚∞゚)Σ l・Д・lァゥァ
|___|
< |
__
〜| ゚∞゚|〜ペーチュンチュン
|__|
| |
|\_____________|
| |:::::::::::::::::::::::: |
/⌒彡 /⌒彡 | |::::☆:::::::::::::::::::::::: |
/ ゚∞゚)ペーチュン / ゚∞゚)チュソ | | :::::::::::::::::::::::::::::::::::::|
| / | / | |:::::::::::::::::::::::: |
( ニニニニニニニニニニ_ア /::::::::::::;\ | | |
|:::::::::::: l | //´|:::::::::::: l | | | |
|:::::::::::: | | | | |::::卍::: | | | | |
/::::::::::::/| | // /::::::::::::/| | | | (゚∞゚)星 |
|::::::::::/ Uヽ /U |::::::::::/ | | | | 逝き↓ |
|::::||:::| | |???| | |::::||:::| U | | ___A___ |
|::::||::| |∧_∧/ |::::||::|. | (_o_o_o.) |
| / | | (; ゚Д゚) | / | | | |_______ハ___|
// | | | ` / // .| | | | / / |
// | | | /| | // .| | | | / / |
// | | // | | // | | | | / / |
U U U U U U  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
↑
>>951 このスレ内で(゚∞゚)ではない
>>951 を発見した。
>>951 はスレ内で
意味不明かつ不適切な発言をしたとして、我々は
>>951 を(゚∞゚)星に連行し
>>951 を(゚∞゚)化後、キティ星に追放の刑に処す
957 :
デフォルトの名無しさん :04/12/06 16:34:10
はにゃ〜ん
958 :
デフォルトの名無しさん :04/12/07 13:17:35
メールソフト作ってるんですが、ESMTPは実装したほうがいいんでしょうか? OEでは実装されてますか?
ESMTPは、クライアント主導で決定されるので、 必要な物があれば実装すればいいです。例えばSTARTTLSなど。 OEは実装してます。
OE以下のメールソフトなんて誰が使うものか
961 :
デフォルトの名無しさん :04/12/07 14:16:58
recvか何かで受信する前にデータ数がわかる方法があったら教えてください
962 :
デフォルトの名無しさん :04/12/07 14:18:59
ない。
あらかじめ定量しか送らないことに決めておく あるいは何らかの形で量を規則化しておく
964 :
デフォルトの名無しさん :04/12/07 14:34:57
んーやっぱりないですかあ recvで取ったデータをまた戻すってこともできないですよね?
そういうのはrecvしてバッファリングしておく層を作っておくのが定石。
966 :
デフォルトの名無しさん :04/12/07 14:41:46
つかMSG_PEEKでできますた(;´Д`)
>>966 それって
>>961 とはちょっと違うよ。
用意したバッファ分だけ受ける。ただしqueueから除かない。
だからもっとあるかも知れない。
>>967 え?そうなんですか?
>>964 みたいに戻しはしないけどキューから削除しないからいいかなって思って
試してみてもちゃんとできたしああ
「もっとあるかも知れない」 それが分からなくていいならMSG_PEEKで問題なし。
1つのソフトでクライアント(connect)とサーバー(bind)をあっせたい場合に各々ポート番号は何を指定すればいいのでしょうか? socketでAF_INETとSOCK_STREAMを指定している時です。両方とも80ではダメですよね?
>>970 サーバは 80 番に bind して listen する。
クライアントはbindしないで、80番に connect する。
誰か次スレ立てて。
>>971 ありがとうございます。
ちなみに80番以外では失敗するのですが、
>>970 での場合はポートは80限定になるのでしょうか?
>>973 具体的に何番がどう失敗したのかわからないとアドバイスもしにくい。
既に動いているアプリがそのポートを使用中なのかもしれないし、
ファイアウォールの様なソフトが介入しているのかもしれないし。
976 :
デフォルトの名無しさん :04/12/07 19:54:00
978 :
デフォルトの名無しさん :04/12/07 21:40:11
俺も無理だったからスレ立て依頼してきた。
ネットワークスレの住民がスレ立てることもできないとは笑止千万
糞スレ立てまくってたら、肝心な時にスレ立てれない
あFOX ★のせいだ。
982 :
デフォルトの名無しさん :04/12/07 22:57:56
983 :
デフォルトの名無しさん :04/12/07 22:58:35
984 :
デフォルトの名無しさん :04/12/07 22:58:43
985
986
0 埋めるときはzero fillで。 じゃないとchecksumが合わないよ。
988 :
デフォルトの名無しさん :04/12/08 17:38:10
(´,_ゝ`)プッ
989 :
デフォルトの名無しさん :04/12/08 17:45:41
チェンジアップの投げ方を教えて
990 :
デフォルトの名無しさん :04/12/08 18:00:23
どうせブラジャーのはずしかたも知らんのだろ?
>>989 腕をよく振ること
内角には投げないこと
993 :
デフォルトの名無しさん :04/12/08 23:53:57
listen()のキュー長を越えるアクセスがあった場合ってconnect()すると-1が返ってきますか? listen(sock,5); たとえば、このときに自分が6人目だったら… connect() == -1 ?
それくらい試せるだろ
995 :
デフォルトの名無しさん :04/12/09 13:38:32
Winsockでsend()する時に送信データのバイト数を 付加しようと思い、以下のようにコーディングしましたが・・・ うまくいきません。どうすればちゃんと送れるか、どなたか教えていただけませんか? char *data; long net_byte; int host_byte; int host_byte = strlen(data); net_byte = htonl(host_byte); // バイト数をビッグエンディアンで取得 send(sock, net_byte+data, sizeof(data)+4, 0) // 送信(ここがうまくいきません)
Cの勉強からやりなおせ。
>>995 ポインタにintを足したら何になると思ってるんだキミは。
1000 :
デフォルトの名無しさん :04/12/09 14:11:17
1000ゲット
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。