ネットワークプログラミング相談室 Port30 [転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2014/10/31(金) 07:57:16.24ID:2NZQQB6u
主にソケットに関しての質疑応答スレッドです。

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

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

前スレ
ネットワークプログラミング相談室 Port28
http://toro.2ch.net/test/read.cgi/tech/1334736934/
ネットワークプログラミング相談室 Port29
http://peace.2ch.net/test/read.cgi/tech/1351670708/

関連スレ
ネットワークプログラミング雑談
http://toro.2ch.net/test/read.cgi/tech/1235800707/
2020/05/10(日) 21:38:11.98ID:7lvCzCJV
エラー処理も知らない度素人なんだら虐めるなよ(爆笑)RFCを調べて見る(大爆笑)
2020/05/11(月) 04:32:25.86ID:2l46YMFf
相手するから居着くんだろ
優しくしちゃいかん相手かどうかも見分けられない奴が
中途半端に書くんじゃないよ
2020/05/11(月) 18:44:11.23ID:K9UXTRs2
>>667
うーーーん

>ためしに
>host = gethostbyname("localhost/dample.html");
>とやってもダメだったし。

この時点でsocketプログラムの流れとか関数の意味が理解できていないことは
わかるんだけんど、みんなが言うとおり親切に説明してくれているページとか
読んでもう少し基礎知識付けた方が良いと思うよ

たとえば
https://www.geekpage.jp/programming/linux-network/
なんかは割りと親切に書いてあってサンプルも載っているし
あ、LinuxじゃなくてWindowsでVSだとか言われるとまた話がややこしくなるけど
ここにそのものズバリHTTPのクライアントサンプルとかも載っているんで
読んでみたらどうかな
2020/05/11(月) 21:37:35.82ID:vktvLe6W
教えたがり爺さん
2020/05/12(火) 02:06:38.35ID:W8htw+SM
>>684
メアド送って二人でやってくんないかなあ
2020/05/12(火) 09:05:13.47ID:rA4rVxbw
レスしたい人がすればいい
外野が喚く事ではない
688デフォルトの名無しさん
垢版 |
2020/05/12(火) 10:21:56.31ID:4WwqN1hQ
最初から触っちゃ逝けない臭いプンプンですし
2020/05/12(火) 15:32:39.74ID:PnPswIbc
場外の人間に限って「外野が喚く事ではない」というね
2020/05/12(火) 15:35:19.11ID:kBGJCwRV
馬鹿には無理
2020/05/12(火) 16:51:29.25ID:rA4rVxbw
>>689
喚いてしまったか
2020/05/21(木) 10:29:55.98ID:of4pwmcJ
相談でもなんでもないけど落とし穴に落ちたんで聞いとくれ(落とし穴というより自損事故)

ローカルサーバ(いや、ローカルでなくても起こるか)で、間違ったURLだったときにリダイレクトしてるんだ
んで、リダイレクト先のURLまちがえた…
それも301でリダイレクトしちゃってた テヘ
2020/05/21(木) 12:21:56.57ID:zX7e3U/4
笑いどころはどこ?
ブラウザ側でToo many redirectsで止まるだろ?
2020/05/21(木) 12:29:22.69ID:of4pwmcJ
>>693
自分にリダイレクトじゃなく、誤URLに永続的リダイレクトだよ

ブラウザによるかもしれないけど、301が返るとリダイレクト先を記憶
そのアドレスへのアクセスはブラウザ内でリダイレクト先に書き換えられる
結果としてブラウザ側でのリセットが必要
2020/05/21(木) 12:40:41.47ID:zX7e3U/4
ああ、chromeだな。
いきなり301を返すようにするのをやめたほうがいいぞ。
307あたりで試してから恒久対処なら301にするといい。
2020/05/21(木) 12:51:45.14ID:YeVPsLPD
だから、それも含めてミスったって言ってるんだろ
アホかよ
2020/05/21(木) 13:02:23.76ID:of4pwmcJ
>>695
すごいな、一発でブラウザ特定されたw
ブラウザの特性って頭に叩き込まれてるのか

あ、じゃ質問
デカイサイズのチャンクでのレスポンスを返した時に、chromeとedgeがコネクションを切断するんで、書き込みがWSAECONNABORTED(10053)でエラーになるんだ
試した中ではfirefoxだけ問題ないんだけど、
レスポンスの実装を失敗していてfirefoxがザルなのかな?
2020/05/21(木) 13:07:58.02ID:of4pwmcJ
ちなみにvideoタグからのgetでサイズは21MBほど
動画はどのブラウザでも問題なく再生される
699デフォルトの名無しさん
垢版 |
2020/05/21(木) 15:57:27.26ID:uQcHcT1e
goスレへお帰りください
2020/05/21(木) 16:46:35.97ID:of4pwmcJ
ソケット周りなんでスレ違いじゃないよね?
2020/05/21(木) 17:17:12.65ID:roNx1geG
[NGID:of4pwmcJ]>>/dev/null
2020/05/22(金) 07:32:53.84ID:t88LG3w+
>>697
>あ、じゃ質問

何様?
2020/05/22(金) 09:05:09.82ID:glrqa+sF
>>702
何様も何も、ここって本来は質疑応答スレだから>>1
であるなら、ブラウザの特性に詳しそうな人がいたら、質問を投げるのは普通じゃないかと
フレンドリーな書き方が気に障ったならご免なさい
教えろとか強要しないからセーフだと思ったんだ
2020/05/22(金) 09:08:37.40ID:Y2UVyjFx
雑音は無視していいです
2020/05/22(金) 15:03:05.97ID:MU4pD2nI
socketと主張するつもりかも知れないがスレチ
httpプロトコルの話ならweb板がふさわしい
2020/05/22(金) 15:14:26.50ID:1qH2iPtK
webクライアントの話、アプリの話、関係ない、クロームのスレへ行け
2020/05/22(金) 17:32:06.06ID:XuNnU0qT
>>697
コネクションを切断することが正しいかという話ならsocketの話じゃないから
ここで聞いてもダメかな

cromeとedgeがコネクションを切断すると「WSAECONNABORTED」になるのが
問題ならば、コネクションを切断しにきているのを知らせるエラーが返ってきて
いるってことなのでエラーハンドラを書きましょうって話かな
2020/05/22(金) 18:21:57.91ID:glrqa+sF
>>707
そうなのですか

コネクションを切断してくるのは相手なので、レスポンスのヘッダに何か特定の指定が必要なのかと
送信データが残っているのにブラウザがチャンク受信を打ち切って切断する
というHTTPプロトコル上の問題だと思っていました
で、プロトコルならばネットワークプログラミングの範疇だとばかり

エラーハンドリングは入っているのですが、一々ログに出てしまっていて、対処できるならばしたいという理由でした
2020/05/22(金) 20:53:16.76ID:1qH2iPtK
意味不明なローカールサーバのことを聞かれても分からんわw
2020/05/22(金) 21:35:59.96ID:glrqa+sF
ローカル内部だとインターネット層を通さないだろ?
だからネットワークプログラミング的にはローカルと非ローカルのどちらであるのかってのは、問題を考えてもらう上で意味を持った条件だと判断したんだよ
2020/05/22(金) 21:39:00.92ID:1qH2iPtK
だめだこりゃw
2020/05/22(金) 21:40:40.20ID:glrqa+sF
あ、いやここで最初に書いたときはリダイレクトで掘った墓穴ネタだったから無駄な情報だった!
2020/05/22(金) 21:41:58.51ID:glrqa+sF
それはこっちの台詞だよ雑音君
2020/05/22(金) 21:42:27.81ID:t88LG3w+
>問題を考えてもらう上で意味を持った条件

宿題は自分でやろうな?
2020/05/25(月) 02:30:17.11ID:0vvFctdH
お前らすぐに関係ない喧嘩はじめるね
なんで?
2020/05/25(月) 08:23:16.47ID:sFiHK4td
暇つぶし?
2020/05/25(月) 10:23:28.01ID:5tDlblTP
>>710
ローカル通信でも、AF_INETのソケットを使った通信ならば
きちんとソケットからプロトコルスタックに出力されて、
経路を引いた上で、ローカルの場合はループバックに出力し帰ってきて、
自分自身の別のソケットで受信する。
即ち正しくインターネット層の通信が行われる。
2020/05/25(月) 11:21:07.85ID:ltgSCU1m
>>717
えっ、知らなかったありがとう
インタフェース層以前でバイパスされるんだと思い込んでた
2020/05/25(月) 14:23:14.01ID:j8W769QL
素人の馬鹿厨房
720デフォルトの名無しさん
垢版 |
2020/05/25(月) 14:32:47.95ID:xHeORMOB
708
710
718
並べると面白いな
自分でhttpって言いながらバイパスされるとか痴呆疑い有り
2020/05/25(月) 16:00:41.01ID:IaM+0Exq
ただの知ったかぶりだろう
2020/05/30(土) 11:04:38.38ID:1G1uwH9t
>>708
プロトコルはネットワークじゃないとか原理主義者どもにはすまんが(煽り)

URLを叩いてファイルとしてダウンロードするとエラーにはならずファイルは一致
ということは送信側ではなくchromeとedgeのvideoタグの実装がどこかおかしい
ウィルス対策ソフトが何か悪さしてる可能性はダウンロードが成功することからかなり低い
2020/05/30(土) 14:11:13.88ID:qu/N+Ses
アホ馬鹿参上
2020/05/30(土) 20:07:32.88ID:fk+arB0Z
三菱電機とかNECはウイルス対策ソフトが悪さをしたので
防衛情報をお漏らししちゃったのにね
725デフォルトの名無しさん
垢版 |
2020/08/17(月) 12:33:36.54ID:ic3GQTBz
SMTPサーバでメールを送ろうとしています
YahooメールのSMTPサーバのホストはsmtp.mail.yahoo.co.jpですが
MXレコードで調べるとmx1.mail.yahoo.co.jpとなっています
MXレコードからSMTPサーバのホストを調べるにはどうやればいいですか?
2020/08/17(月) 12:40:02.93ID:QYRCZwWN
すいません、そんなこともわからない人は
SMTPなんて触らないでください。
727デフォルトの名無しさん
垢版 |
2020/08/17(月) 12:44:47.55ID:6yBIhPPf
ほんそれ

っていうかいちいちyahooのSMTPにアクセスするな
そのまま自分の所のSMTP鯖使え
自分がyahooと契約してるって話ならyahooの指示に従え
2020/08/17(月) 17:28:43.64ID:bkw0hS+S
MXレコードで回答されるホストではSMTP動いていないみたいだよ
昔と違ってSMTPで送りつけるとなんでも転送する仕組みではなくなっているので
メールサーバを構築して運用するならばそこら辺から調べないと出来ないよ
2020/08/17(月) 17:33:33.02ID:QYRCZwWN
>>728
OB25くらい理解してからレスしてほしいです。
730デフォルトの名無しさん
垢版 |
2020/08/17(月) 17:44:13.25ID:L1BKvkJB
ヒントとかエサとか与えるから何度もオカワリ来るんだよな
https://sendgrid.kke.co.jp/blog/?p=3509
731デフォルトの名無しさん
垢版 |
2020/12/21(月) 09:06:49.92ID:q+Sqs2B6
OSCで複数のパスに複数のデータを送信するのって、処理負荷重くなりますか?

send("/aaa",111)
send("/bbb",222)
send("/ccc",333)
....

みたいなのを1秒間に3000回とか送信するより
send("/json","[111,222,333.....]")
みたいに一回に分けて送信する方が、送信側の端末での処理負荷は軽い気がするのですがどうなのでしょうか?
2020/12/21(月) 10:35:19.36ID:QefTMhkw
>>731
重いからHTTP2が出てきた、と理解してる
2020/12/21(月) 11:57:57.16ID:o/I/TQaM
要求順に処理される必然があるからHTTPパイプラインでいいんじゃない。
2021/01/08(金) 12:02:33.82ID:Q1os/2WZ
UDPでsendしてるなら同じだろう
2021/01/08(金) 12:18:34.50ID:HCVbRSev
UDPに順序の保障は・・・
2021/01/08(金) 19:47:01.79ID:Q1os/2WZ
ネットワーク上の順序の保証w
2021/01/08(金) 19:57:30.13ID:SFYEeLwk
何がおかしいのか分からない……
2021/01/08(金) 20:03:04.21ID:Q1os/2WZ
素人は気にしなくていい
739デフォルトの名無しさん
垢版 |
2021/01/08(金) 20:19:49.24ID:nWfuCqZb
>>736
は?
740デフォルトの名無しさん
垢版 |
2021/01/08(金) 20:20:34.14ID:nWfuCqZb
>>738
え?
741デフォルトの名無しさん
垢版 |
2021/01/08(金) 20:22:43.98ID:nWfuCqZb
UDPでも保証されると思っているのか
TCPでも保証されないと思っているのか
そしてどこにwをつける要素があるのか


そしてそして、どこが他人を素人呼ばわり出来るほどのプロフェッショナルなのか
2021/01/08(金) 20:25:36.18ID:Q1os/2WZ
気にしなくていいよ
2021/01/08(金) 20:26:02.07ID:lTP85lYC
UDPでパケットを投げた順に処理してもらうには
ペイロード中にそれなりの細工が必要なんだけど
その工夫はなされてる前提なの?
2021/01/08(金) 20:30:41.87ID:Q1os/2WZ
そもそもOSCの仕様はどうなってんの?
2021/01/08(金) 20:40:09.67ID:SFYEeLwk
…… もしかしてOSIと言いたかった?
骨董品だなぁ
2021/01/08(金) 20:42:34.10ID:Q1os/2WZ
頓珍漢、アホ
2021/01/08(金) 20:49:12.27ID:U7lVuSlq
引っ込みつかなくなったモグラでしょ
2021/01/08(金) 21:01:06.39ID:aRvlR45P
OSCも知らない生きている価値のない究極のごみクズ。
2021/01/08(金) 21:04:20.49ID:Q1os/2WZ
OSCなんか知るかボケw
2021/01/08(金) 21:08:06.06ID:Q1os/2WZ
OSIの世界では有名らしいなw
2021/01/08(金) 21:18:58.87ID:cUApPko3
OSI なんて何の役に立つのですか?
2021/01/08(金) 22:37:59.42ID:Q1os/2WZ
金平は脳の手術で入院中らしぞ
2021/01/09(土) 09:20:33.00ID:P9+8Zppc
仕様、実装、レイヤーを区別できない素人はレスしないようにw
754デフォルトの名無しさん
垢版 |
2021/01/10(日) 03:17:39.39ID:u+z9sHpH
さすが玄人www
言うことが違うwwwwwww
2021/01/10(日) 09:48:25.89ID:CV/Zevbq
雑草の根まで枯らすサンフーロン撒いておきますね
756デフォルトの名無しさん
垢版 |
2021/02/05(金) 15:37:55.74ID:Wzlgg/bF
有識者の方、ご教示ください。Win10 64bit/cygwin64(gcc 7.4.0)環境で、C言語によるUDPポートチェックを試みています。UDPソケットでsendto()を要求した後、タイムアウト付きのselect()でICMPソケットのreadfdsを監視しています。目的のUDPポートは閉じているため、Wiresharkでは期待どおり"port unreachable"の受信を確認しています。しかし、readfdsがreadyにならずにselect()ではタイムアウトが生じ、UDPポートは空いていると判断してしまいます。どうもICMP受信をアプリケーションに返却してない(?)ようです。何か情報をお持ちではないでしょうか?以下コードの抜粋。
send = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
recv = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
dst_addr.sin_addr.s_addr = inet_addr("192.168.1.100");
dst_addr.sin_port = htons(12345);
sendto(send, NULL, 0, 0, (struct sockaddr *)(&dst_addr), sizeof(dst_addr));
tv.tv_sec = 1;
tv.tv_usec = 0;
FD_ZERO(&readfds);
FD_SET(recv, &readfds);
if(0 > select(recv+1, &readfds, (fd_set *)NULL, (fd_set *)NULL, &tv))
{
fprintf(stderr, "select() error.??/n");
} else {
if(FD_ISSET(recv, &readfds))
{
recvfrom(recv, buf, MAXBUF, 0, NULL, NULL);
ip = (struct ip *)buf;
ihlen = ip->ip_hl << 2;
icmp = (struct icmp *) ((char *)ip + ihlen);
if ((ip->ip_src.s_addr == dst_addr.sin_addr.s_addr)
&& (icmp->icmp_type == ICMP_UNREACH)
&& (icmp->icmp_code == ICMP_UNREACH_PORT)
{
fprintf(stdout, "NOT open.??/n");
} else {
fprintf(stdout, "Unexpected ICMP response.??/n");
}
} else {
fprintf(stdout, "May be open (due to a timeout).??/n");
}
}
2021/02/05(金) 15:56:56.25ID:y2LPN7jg
アドバイス
LinuxかWindows winsockでやれよ
758デフォルトの名無しさん
垢版 |
2021/02/06(土) 11:23:43.73ID:PohEB++t
http://manpages.ubuntu.com/manpages/bionic/ja/man2/select_tut.2.html
2021/02/06(土) 16:11:50.48ID:4BfCt3EJ
知りたいのはcygwinのソケットの実装だぞw
2021/02/06(土) 17:21:23.24ID:b91D85Wz
wsl2やらコンテナ全盛の昨今でもsygwinやらmingwやらって需要あったんだなビックリ
2021/02/06(土) 19:22:37.50ID:kyUBfZ1R
仕方なくPHPかJavaScriptどっちか勉強しなければいけなくなったんだけど
今からやるならどっちがいい?
2021/02/06(土) 20:18:17.08ID:4BfCt3EJ
スレチ
2021/02/06(土) 20:41:03.04ID:zn5WrP4C
JavaScript 一択だろ
2021/02/06(土) 22:20:53.76ID:4BfCt3EJ
javascriptでネットワークプログラミング(笑)
2021/02/06(土) 22:22:38.50ID:b91D85Wz
クライアントなら……
2021/02/06(土) 22:27:56.37ID:LwIa9kRI
PHPでネットワークプログラミングって方が辛そうな気がするが
2021/02/07(日) 06:46:05.91ID:jX/y7Db/
>>764-765
>>244
2021/02/07(日) 07:58:08.75ID:9kVjsnaW
Node.js があることを失念してたわ
2021/02/07(日) 10:13:48.15ID:WCHi594P
>主にソケットに関しての質疑応答スレッドです。
770デフォルトの名無しさん
垢版 |
2021/02/07(日) 18:12:57.29ID:4v/nAOdw
websocketか?
2021/02/07(日) 19:21:51.48ID:WCHi594P
パー
2021/02/07(日) 19:35:37.78ID:FMeHGFKC
>>756
IP_RECVERR
773デフォルトの名無しさん
垢版 |
2021/02/08(月) 11:56:40.93ID:5JxS4RLe
ちょうど良い作図問題
https://www.youtube.com/watch?v=9NSwcVHxwzg
https://www.youtube.com/watch?v=-snkU0aZ5CU
774デフォルトの名無しさん
垢版 |
2021/02/08(月) 12:00:42.09ID:5JxS4RLe
再放送よろ
https://twitter.com/jounetsu/status/1355887360320307202
https://mainichi.jp/articles/20210205/org/00m/200/002000c
https://www.mbs.jp/jounetsu/2021/02_07.shtml
https://twitter.com/5chan_nel (5ch newer account)
2021/02/08(月) 14:53:10.96ID:y/9s/RLd
>>773,774
イタチ
2021/02/10(水) 15:19:21.63ID:mwMdCY8S
cygwin小僧は逃走w
777デフォルトの名無しさん
垢版 |
2021/02/11(木) 11:54:38.01ID:n0GRjtoR
777
778デフォルトの名無しさん
垢版 |
2021/02/14(日) 11:16:27.00ID:PGTjJwEI
WindowsのTCP/IP実装に複数の重大な脆弱性、今月のセキュリティパッチはかならず適用を
https://asahi.5ch.net/test/read.cgi/newsplus/1613138346/
779デフォルトの名無しさん
垢版 |
2021/02/14(日) 11:17:47.97ID:PGTjJwEI
WindowsのTCP/IP実装に複数の重大な脆弱性、今月のセキュリティパッチはかならず適用を
ブルースクリーンが引き起こされるサービス拒否(DoS)脆弱性はすぐに攻撃が出回る可能性
2021/02/10
https://forest.watch.impress.co.jp/docs/news/1305583.html
780デフォルトの名無しさん
垢版 |
2021/03/13(土) 11:49:14.86ID:EQQgDTOm
https://security.srad.jp/story/21/03/11/1559240/
2021/08/01(日) 03:17:33.43ID:D98l4VUM
誰か居ますか・・・質問なのですが、

winsock2を使ってwebサーバーからファイルを受信する処理があるのですが、
現状では所定時間間隔で新ファイルがあるかどうかポーリングしています

これをロングポーリングに処理を変更して各所の負荷を低減させたいのですが、
そもそもwinsock2・クライアント側のみの修正で実現可能でしょうか?
可能であれば、実現方法のヒントをお願いしたくよろしくお願いします
2021/08/01(日) 03:22:32.97ID:D98l4VUM
なお、現状ではhttpレスポンスヘッダーのLast-Modifiedを利用する方法でも
負荷の低減は出来そうですが、でも結局はヘッダ分の通信は頻繁に行われるままですので
上記の質問に至りました

ファイルの有無だけを調べようにもwebサーバーからは即時404が返ってくるだけなので
ロングポーリングが可能なのか疑問ではありますが
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況