- 1 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 23:04:56 ]
- 主にソケットに関しての質疑応答スレッドです。
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辺り 足りなかったら適当に付け足してね 前スレ ネットワークプログラミング相談室 Port18 pc10.2ch.net/test/read.cgi/tech/1159692799/
- 98 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 00:11:12 ]
- udpでメッセージを交換する簡単なプログラムを作っているのですが、
可変長文字列で詰まってしまいました。 struct message{ int size; char buf[1]; } struct message *p; p = (struct message *)malloc( sizeof(struct message) + strlen(input) ); 送信したい文字列をinputに格納して、その長さに合わせてこのmessage構造体をmallocしているのですが、 受信側ではなぜか文字列が途中で途切れてしまいます。 可変長を実装するにはこのやり方は間違っているのでしょうか?
- 99 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 00:31:48 ]
- MTUよりでかくなってないか?
- 100 名前:98 mailto:sage [2007/03/13(火) 01:03:07 ]
- MTUが1500で、送信サイズが20byte程度でしたので、MTUを越えてはいないと思います。
今色々デバッグしてみたところ、sendtoで送信できているサイズが、sizeof(struct message)と同じ値でした。きちんとmallocはしているはずなのですが…
- 101 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 01:41:23 ]
- 送信側のsendのところと受信側のrecvのところのコードを晒せ
- 102 名前:98 mailto:sage [2007/03/13(火) 02:16:30 ]
- sendとrecvのサイズを設定する引数が間違っていました。
send: sendto( s,p,sizeof(struct message) + strlen(input),0,(struct sockaddr *)pfrom,fromlen ); recv: recvfrom(s,p,sizeof(p)+20,0,(struct sockaddr *)pfrom,fromlen); といった感じに改造したところ、短いメッセージならきちんと受信できるようになりました。ただ20という数字が適当なので、この部分をきちんとinputの長さに合わせたいです。
- 103 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 09:24:59 ]
- sizeof(p)がstruct message *pなんだろうなぁ
C言語のテキスト見直ししる。
- 104 名前:98 mailto:sage [2007/03/13(火) 11:23:32 ]
- 受信側をsizeof(struct message *p)としましたが、やはり適当な値を受信サイズに加算しないと駄目なようなので、この方法でやろうと思います。
ありがとうございました。
- 105 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 12:46:23 ]
- >>103
> sizeof(p)がstruct message *pなんだろうなぁ これは>>98のミス原因をつぶやいただけだろ。 Cの勉強し直してくれ。Cが分からないから>>103を誤読する。
- 106 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 12:49:16 ]
- それからC99から、
struct message{ int size; char buf[0]; } と定義できるぞ。 これで出来ることは増えないが、サイズ計算が単純になる。 seclan.dll.jp/c99d/c99d04.htm#dt19990726
- 107 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 14:00:49 ]
- >>103
recvfrom(s,p,sizeof(p)+20,0,(struct sockaddr *)pfrom,fromlen); で、pの宣言がstruct message *pなら sizeof(p)+20=24ぐらいになるってことでしょ? paddingとか32bit環境とかは置いといてね。
- 108 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 20:20:03 ]
- > これで出来ることは増えないが、
C99以前は配列の最終要素を踏み越えるのは厳密には未定義じゃなかったっけ
- 109 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 20:57:03 ]
- UDPはパケット境界保持されるんだから小細工しなくていいんでない?
- 110 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 21:00:07 ]
- UPNPのnat traversalで空けたポートに
"本当に"外部ネットワークからアクセスできるか確かめる方法って 外部にそれようのサービス立てておいてそれを叩くしかないよね?
- 111 名前:デフォルトの名無しさん [2007/03/13(火) 21:03:34 ]
- >>110
携帯電話からアクセスしたら?
- 112 名前:デフォルトの名無しさん mailto:sage [2007/03/13(火) 21:05:53 ]
- すまん言い方が悪かったかな
ポートを空けたプロセス自身から確かめる方法
- 113 名前:デフォルトの名無しさん mailto:sage [2007/03/14(水) 19:50:51 ]
- ちょっと基本的な事ですいません。
[サーバ(accept側)]−[クライアント(connect側)] こんな感じで繋がっている時、 1秒間にサーバからsendできるデータの限界量=上り帯域 1秒間にクライアントからsendできるデータの限界量=下り帯域 という概念で合ってるでしょうか。
- 114 名前:デフォルトの名無しさん mailto:sage [2007/03/14(水) 23:51:36 ]
- sendがsocket apiのsendのことをさしているなら違う。
sendはtcpの送信バッファにコピーするだけ。
- 115 名前:デフォルトの名無しさん mailto:sage [2007/03/15(木) 02:01:58 ]
- udpだったらクライアントからはsendできたように見えても
どんどん捨ててるだけということもあり得るし
- 116 名前:113 mailto:sage [2007/03/15(木) 20:53:07 ]
- では、
1秒間にサーバ/クライアントから送信できるデータの限界量=上り/下り帯域(/sec) という事でしょうか?
- 117 名前:デフォルトの名無しさん mailto:sage [2007/03/15(木) 21:07:50 ]
- ごはんつぶは糊として使えるが
糊=ごはんつぶというわけではない
- 118 名前:58 mailto:sage [2007/03/16(金) 00:04:01 ]
- >>60
さんざん遅れて申し訳ありませんが、ありがとうございます。 しばらく仕事に忙殺されていて死にかけていました。
- 119 名前:113 mailto:sage [2007/03/17(土) 02:47:41 ]
- なんとなく自己解決しました。
- 120 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 00:54:02 ]
- ソケット通信でどっかのHPのCGIに引数を渡すときはどういう応答すればいいんですか?
HTMLで言うところのformからPOSTでCGIを呼ぶってことです。
- 121 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 01:04:51 ]
- RFC 2616を読む
- 122 名前:デフォルトの名無しさん [2007/03/18(日) 09:58:27 ]
- ここってライブラリの質問もあり?
- 123 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 11:05:24 ]
- 前スレでOpenSSLの話はダメという結論になった
- 124 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 11:14:56 ]
- じゃあ、このスレ限定でおk
- 125 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 14:22:26 ]
- >121
まとめてください。
- 126 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 15:21:00 ]
- おらさっさとまとめろやクズ。
- 127 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:17:47 ]
- みなさん。スルーで。
- 128 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 17:29:29 ]
- 急ぎませんので、今日中にまとめておいてください。それでは。
- 129 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 21:00:24 ]
- わろたw
- 130 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:02:54 ]
- windowsとlinuxの間で、C/C++でソケットプログラミングしてます。
チャットソフトです。 ・print、strcpyとか気を付けるのと、ほかになにかあるでしょうか。 ・もしも、WEBサイトに文字列を表示させる場合は、メタキャラクタのエスケープ処理ですよね。 検索したところ、これぐらいかと思ったのですが、まだまだたくさんあるでしょうか。 アドバイスよろしくお願いします。
- 131 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 20:13:39 ]
- >>130
ttp://www.freebsd.org/ja/security/#spg ここが参考になるよ
- 132 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 21:57:22 ]
- >>131
ありがとうございます。 参考にさせていただきます。
- 133 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 04:01:45 ]
- 便乗質問させてください。recv関数は受信される最大サイズが
決まってると思いますが、プログラミングしてて 長さがわからなくなるときって、どんなときですか。
- 134 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 04:41:28 ]
- 日本語でおk
- 135 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 04:43:10 ]
- つかマジで機械翻訳なのかな
TCPなら繰り返し受信すればいい UDPだったら1つのパケットに入りきらないメッセージが来ること自体あり得ない
- 136 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 16:02:47 ]
- >>133
長さがわからなくなるときは、無い 長さは必ず返却される
- 137 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 17:24:33 ]
- >>136
レスありがとうございます。 ネットワークプログラミングでは、バッファ・オーバー・フローは 気にしなくても大丈夫なんでしょうか。 気を付けて使ってるのかわからないですが、猫でもわかるとか、 他の本でもstrcpy使用してみるみたいです。 strncpy、snprintfは全然見ないような。
- 138 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 17:38:07 ]
- 返された長さにもとづいてやればオーバーフローしないよ
長さを無視してるとダメだけど、 それはネットワークに限った話じゃないし
- 139 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 18:01:20 ]
- >>137
バッファオーバーフローは無論あってはならない。特にネットワークプログラミング においては重大なセキュリティホールに繋がりかねないので、強く意識すべき。 C++を使えるのなら、Cなんぞ使わずにstringやvector<>を使うことを薦める。
- 140 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 18:02:44 ]
- ていうかさ、そんな事を質問している時点で
基本を何も分かってないって事だろ。 まず系統的に解説してある入門書読めよ。
- 141 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 20:56:11 ]
- サンプルソースうpして聞けばいいよ
- 142 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 02:26:15 ]
- >>138-141
レスありがとうございます。 >それはネットワークに限った話じゃないし >C++を使えるのなら、Cなんぞ使わずにstringやvector<>を使うことを薦める。 とても勉強になりました。ありがとうございました。
- 143 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 01:22:19 ]
- webアプリはクライアントがどのプログラムからhttpリクエストを出してるかということを
判別できるんですか? ブラウザ(IE)に偽装した形でhttpリクエストを出したいんです。
- 144 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 01:34:49 ]
- >>143
スレ違い pc11.2ch.net/php/
- 145 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 11:49:08 ]
- >>143
ajax使うしかないな だが単純に普通にIE使ってたら最初の一発目は偽装不能
- 146 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 09:16:33 ]
- ひとつのコネクションでデータの送信と待ちうけを行うには
ポーリングするのが一般的でしょうか?
- 147 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 09:58:48 ]
- 俗に言うselect系
- 148 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 10:02:27 ]
- selectもブロックしてしまいますよね?
- 149 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 10:06:18 ]
- >>148
ブロックさせたいんじゃねーのかよ
- 150 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 10:17:50 ]
- ブロックしちゃうと任意のタイミングで送信ができないと
思うわけです。
- 151 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 10:52:30 ]
- selectはポーリングにも使えるが?
- 152 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:00:53 ]
- 送信可能な時はブロックしないで戻るしね。
- 153 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:09:14 ]
- selectの改良版はpollって名前だしね。
- 154 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:13:41 ]
- ちょっと詳しく教えてくれないか?
- 155 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 12:20:08 ]
- >>150
その任意のタイミング発生装置(ttyとかXのイベントとか)も selectに含ませてブロックさせる。
- 156 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 12:27:59 ]
- >>155
なるほど あなた、もしかして天才?
- 157 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 12:48:32 ]
- 何、通りすがりのサラリーマンさ。 単身赴任のね
- 158 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 12:58:46 ]
- >>157
すみません。本当はよく意味がわかってません。 しかーし、外部からselectを抜けさせればよいということですよね!
- 159 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 13:00:22 ]
- こんな感じですよね?
www.geekpage.jp/programming/linux-network/select-eintr.php
- 160 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 21:28:56 ]
- スレッド1:selectで受信待ち
スレッド2:問答無用でsend
- 161 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 21:39:18 ]
- >>160
( ・∀・)イイ!!
- 162 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 04:21:50 ]
- 1つのコネクションを複数のスレッドから使えるんだっけ?
- 163 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 04:25:43 ]
- >>162
今解らないことだらけでしょ?>プログラム作ってて ソケットとかスレッドとか。 もしそうなら本買って勉強したほうがいいと思うよ
- 164 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 04:43:26 ]
- >>146とは別人なんだけど。
たとえばWinsockはスレッドセーフであることは保証されていない www.kt.rim.or.jp/~ksk/wskfaq-ja/intermediate.html
- 165 名前:デフォルトの名無しさん [2007/03/29(木) 12:01:30 ]
- 女(socket)は一人、男(thread)が複数。
同時に複数の男が出し入れすることはできない。 一人がIOしているときは、他の奴が待つように作らないとバグるよ。
- 166 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 12:21:35 ]
- >>165
その説明だと、1 socketに対し、3 thread同時にI/Oできるように読めるが? また、thread同士でもI/Oできることになるので、適当な例えではない。
- 167 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 12:29:17 ]
- >>166
(゚Д゚)ハァ?
- 168 名前:デフォルトの名無しさん [2007/03/29(木) 12:33:50 ]
- 3Pはできたとしてもそれでも「同時に」IOできるのは一人の男と言いたかった。
(もう一つ穴があるだろ、はなしね) socket自体はスレッドセーフではないが、スレッド間で同時にIOを 行わないように制御すれば、複数スレッドで単一socketを使うことは可能じゃね? しかし、それでもデータ内容がごちゃごちゃになる可能性があったりするし、 あまり良い方法とは思わないが。 誰の子供かわかんな〜い、になっちゃう。
- 169 名前:165 mailto:sage [2007/03/29(木) 12:37:39 ]
- あ、165=168 ね
- 170 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 12:54:30 ]
- >>168
別の板でやれ
- 171 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 00:26:08 ]
- さて、そろそろパケットをティッシュに送信してから寝るかな
- 172 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 05:45:21 ]
- winsockでTCP通信するプログラムを作ってますが、クライアントがconnectする時に
接続先のIPアドレスに自分のマシンのプライベートアドレス指定しているときは、正常に動作しますが グローバルアドレスを指定すると、connectからエラーコード10061 (接続が拒否された)が返ってきます Windowsファイヤウォールによるブロックは、されてない様子です ネットワーク初心者ですが、どういうケースが考えられるでしょうか よろしくお願いします
- 173 名前:172 mailto:sage [2007/03/31(土) 08:18:29 ]
- 自分自身のグローバルIPには接続できないって事ですかね
テストを行うには、リモートマシンを使わないといけないんでしょうか
- 174 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 08:43:37 ]
- ルータやファームのバージョンによるのでは
うちはファームのバージョンあげたらできるようになった
- 175 名前:172 mailto:sage [2007/03/31(土) 10:20:27 ]
- ポート4123番を開放して、自分のマシンでサーバを起動して、外部からクライアントで接続を試してもらったんですが
同じくconnectでエラーコード10061が発生します。何がいけないんでしょうか
- 176 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 10:55:02 ]
- サーバって何?自作?
もしそうならbind呼び出しのところのコードを晒せ
- 177 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 11:21:02 ]
- >>172 NATとかIPマスカレードの問題では。あるいはルータに
折り返し機能がないか(>>175はこの問題と関係ないが)。 どっちにしても、ルータの設定の見直しが必要だと思います。
- 178 名前:172 mailto:sage [2007/03/31(土) 11:30:34 ]
- ポートを開放できてないのが原因でした。ありがとうございました!
- 179 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 14:12:13 ]
- 穴という穴に漏れの精子を流し込んだら、鯖が発狂しちゃった。
壊しちゃってごめん。
- 180 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 07:11:29 ]
- コマンドラインだけのチャットプログラムを作って、
ネットワーク勉強したところです。 もっと、複雑な通信規則のアプリを作りたいとき、 なんの命令待ちか状態の推移の管理の仕方で、 わかりやすいサンプルプログラムや本などないでしょうか。 本屋に行ってもいい本みつからないです。 ・データを送信したので、OKを待っている状態 ・データを待ってる状態 どんどん何を待ってるか、変わってくると思うんです。 よろしくお願いします。
- 181 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 09:50:10 ]
- linuxからWINDOWS2000に、20000バイトの文字列送信したら
WINDOWSの方で、2回に分けてrecv()が呼ばれているようでした。 ■linux send(soc,buf,strlen(buf)); //20000バイトの文字列を送信 WINDOWSのグローバルIPアドレスを指定して送信。 ブロッキングモード ■WINDOWS while(1){ recv(soc,buf,sizeof()); } ブロッキングモード //2回に分けてrecvが呼ばれました。16000文字と4000文字 サイズが大きいときは、分けてrecv関数が呼ばれることを 想定してプログラミングしないとだめでしょうか。 16000バイトというのは、環境関係なく決まった数字ですか?
- 182 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 11:40:49 ]
- FAQよむことをおすすめする。
TCPならどこで切られるか、どこでくっつくかは予想できない。 UDPで2回に分かれたというなら、バグじゃね?
- 183 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:11:47 ]
- UDPの場合1回で送信し切れなかったら単純に捨てられる
- 184 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:35:54 ]
- >>182
>>183 レスありがとうございます。 今回はTCPでした。UDPはそうでしたか。ふむふむ。 図書館で調べたら、パケット一個分だっり8000ぐらいのときもあったり ばらばらなんですね。 ブロッキング、ノンブロッキング、ローカルホスト、リモートホスト でも違うみたいです。 勉強になりました。 ありがとうございました。
- 185 名前:デフォルトの名無しさん mailto:sage [2007/04/01(日) 23:46:37 ]
- >>184
というか、TCPはストリームベースのプロトコルだから、そういうことは 一切仮定してはならない。 TCPは、実際にはいくつかのIPパケットとして送られるデータを 区切りの無いただのバイト列のように見せる。 TCPで「メッセージの区切り」のようなものが欲しければ、自分で(アプリ層で) 仕掛けを作りこまなければダメだ。
- 186 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:10:26 ]
- >>185
大きなデータもらうときは、 std::string s; s+=buf; で、終わるまでこれを繰り返すようにして 解決できました。 勉強になりました。ありがとうございました。
- 187 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 00:55:21 ]
- std::stringって\0含むデータでもまともに動いたっけ?
- 188 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 01:32:02 ]
- 内部では動く。ただしもちろん、operator+=(const char*)は引数の終端を見る。
- 189 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 05:37:59 ]
- bufに\0が含まれてると破綻するわけですね
- 190 名前:デフォルトの名無しさん mailto:sage [2007/04/02(月) 09:42:44 ]
- ACEってライブラリ使ってる方居ますか?昔ここで薦められましたが
- 191 名前:デフォルトの名無しさん [2007/04/06(金) 14:02:00 ]
- windows環境で一台の管理端末から複数の制御端末を制御する
プログラムを開発したいのですが この場合、制御される側にサーバアプリを置くのが一般的だと思っています。 しかし、それによって制御される側にWindowsファイアフォールを 開ける必要があると思うのですが、それをしたくないとしたら 管理端末にサーバアプリを置いて、制御端末にクライアントアプリを 置けばいいと考えています。 具体的にどのように考えているかというと @制御端末は管理端末にsendメッセージを送信したあとrecvメッセージがあるまでひたすら待ち続けます。 Aそして管理端末の操作によりrecvメッセージが返り、そのメッセージの指示に従い動作します。 の繰り返しを行うのです。 この考え方に非現実的でないとか不備がありましたら、 指摘してもらえますでしょうか?よろしくおねがいします。
- 192 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 15:21:25 ]
- 問題ないでしょう
- 193 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 16:29:31 ]
- 制御端末ってのは「制御される端末」って意味なのか?
変な言葉の使い方だな。
- 194 名前:デフォルトの名無しさん mailto:sage [2007/04/06(金) 16:43:07 ]
- 制御端末というと普通はunixの制御端末(/dev/tty, controlling terminal)のことだがな。
- 195 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 09:59:29 ]
- まああれだ
世間様の常識と自分の常識は必ず一致するとは限らないわけだな
- 196 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 12:48:07 ]
- すみません、初心者です。[ADSLモデム]-[ルータ]-[PC]と繋いでいるんですが、
ルータのWAN側グローバルIPを取得したいのですが、直接ルータに聞く方法ってありますでしょうか。
- 197 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 14:25:39 ]
- ADSLモデムのWAN側グローバルIPだろ?
・ADSLモデムのスレに行って、方法を聞く。 ・tracedumpを使う。 ・checkip.dyndns.org/などを使う。 というかそれプログラミングの話題と言うより、 ネットワークそのものの話題だな。
- 198 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 15:14:15 ]
- >>197
Windowsアプリのプログラムの中で取得したかったんです。 httpでルータの管理画面にアクセスして、取得すると、機種依存するんで、 何か決まった方法があるのか知りたかったんです。 直接ルータではなく、一度、外にアクセスするのが一般的なんでしょうか。
|

|