問題タブ [udpclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4535 参照

c# - Send()が機能しない直後のUdpClient、Receive()?

次のコードを検討してください。

WireShark(ネットワークスニファ)によると、リモートホストはデータで応答しますが、ここのアプリケーションはデータを永久に待機します...何らかの理由でリモートホストから応答を受信しません。

何か案は?

0 投票する
6 に答える
5284 参照

c# - すべてのケースを指定せずにオブジェクトを元の型にキャストする方法はありますか?

さまざまなタイプのオブジェクトの配列があり、BinaryWriter を使用して各アイテムをバイナリの等価物に変換し、ネットワーク経由で構造体を送信できるようにします。

私は現在、次のようなことをしています

問題は、タイプを逃した場合、コードが将来壊れる可能性があることです。

のようなことをしたいと思います。

でも、キャストごとにしないとうまくいきません。

編集:

答えを調べた後、これが関数について思いついたものです。テストのために、この関数は配列を syslog に送信します。

0 投票する
3 に答える
763 参照

udpclient - Udp 接続を使用したデータグラムの受信

UDP 接続を介してデータグラムを受信するために、タイプ UDPClient のオブジェクトを作成しました。

ただし、一度完了して receive メソッドを使用すると、次のようになります。

bind メソッドを呼び出さなければならないという例外が発生します。ただし、UDPClient クラスには bind メソッドはありません。この例外を克服するために何をすべきかについて、可能であればコードを教えてください。

0 投票する
1 に答える
446 参照

.net - UdpClient を DNS 更新に反応させる方法

サーバーにパケットを送信するために UdpClient を使用しています。(ホスト名、ポート) コンストラクターを使用して、Sender オブジェクトの構築時に UdpClient を初期化しています。この方法で構築されると、UdpClient はホスト名を IP アドレスに解決します。UdpClient オブジェクトへの後続の呼び出しでは、IP アドレスが使用されます。

残念ながら、使用されている DNS エイリアスが DNS システムを介して別の IP アドレスを指すように更新された場合、この変更は Sender オブジェクトを再作成しない限り反映されません。

Sender オブジェクトを DNS の変更にタイムリーに反応させる最善の方法は何ですか? パフォーマンスは非常に重要です。私はいくつかの解決策を考えることができます:

  1. すべての呼び出しで DNS 解決を実行します (つまり、ホスト名パラメーターを受け入れる Send オーバーロードを使用します)。Windows DNS キャッシュのおかげで、これは実際には非常に高速である可能性がありますが、わかりません。
  2. DNSエイリアスが別のIPに解決されるかどうかを定期的にチェックするために、タイマースレッドである種のDNSチェッカーを実行します。その場合、何らかの方法で UdpClient を更新して、新しい IP アドレスを使用します。ただし、すべての呼び出しで UdpClient オブジェクトをロックしたくはありません。前述のとおり、パフォーマンスは重要です。

誰でもこれを行った経験がありますか?

0 投票する
4 に答える
29973 参照

c# - 利用可能なすべてのネットワークカードにUDPメッセージをブロードキャストする

特定のIPとポートにUDPメッセージを送信する必要があります。

ネットワークカードが3枚あるので、

UDPメッセージを送信すると、1つのネットワークアダプターでのみメッセージを受信して​​います...残りのIPは受信していません。

メッセージの送信中にネットワークアダプタを確認したい。どうやってやるの?


現在、私は以下を使用しています:

0 投票する
3 に答える
2117 参照

c# - 問題 利用可能なネットワークにパケットをユニキャストしようとしている

利用可能なネットワークにパケットをユニキャストしようとしています。全部で 3 つのネットワークがあります。1つのネットワークでのみパケットを取得できましたが、別のネットワークでパケットを受信できません。

このコードを使用して..

問題は何ですか?ありがとう。

0 投票する
2 に答える
9250 参照

c# - UDPクライアントに割り当てられたポート番号(.net / C#内)を見つけるにはどうすればよいですか?

を使用してソケットを作成する場合

次に、ソケットのポートを見つけるにはどうすればよいですか?

私はおそらく気が狂っていますが、MSDN / Googleでは運がありません(おそらく金曜日の4:42で、太陽が輝いているためです)。

バックグラウンド:

私がやりたいのは、開いているポートを見つけてから、別のプロセスに報告して、そのポートでメッセージを転送することです。複数のクライアントが存在する可能性があるため、固定ポートは使用しません。

ありがとう。

0 投票する
1 に答える
387 参照

udp - Windows ガジェットからの UDP 要求

Windows ガジェットから UDP 要求を行うにはどうすればよいですか? このガジェットは私が作りたいものと非常によく似ていますが、UDP リクエストを作成して TF2 サーバーからゲーム情報を取得するガジェットを作成したいと考えています。私は前述のガジェットのコードを調べましたが、本当に理解できませんでした。私は Java のトレーニングを受けており、ほとんどが単純なコンソール アプリでした。

MSDN によると、UdpClient は JScript でサポートされていますが、IE8 のスクリプト デバッガーを起動すると、次のコードを試すたびにエラーが発生します。

エラー:

"期待される ';'"

JNEXT は機能する可能性がありますが、本質的にガジェットの移植性が損なわれ、潜在的なセキュリティ リスクになる可能性があります。Script# はかなり長い間更新されておらず、明らかに UdpClient クラスをサポートしていません。

アイデア?

0 投票する
1 に答える
177 参照

c - 「TIME サービス用 UDP クライアント」は、変換前に読み取りデータの長さを確認する必要がありますか?

Comer 著、TCP/IP Vol III を使用したインターネットワーキングを読んでいる最中です。

UDP の「TIME」クライアントのサンプル コードを見ています。

コードは応答の読み取りを行うポイントに到達し、4 バイトであるべきものを取り、それを 32 ビットの符号なし整数に変換するため、UNIX 時間に変換できます。

「n」は、UDP をリッスンするソケットを指すファイル記述子です。

私が疑問に思っているのは:

変換を行う前に確認すべきいくつかの仮定はありますか? これは C であり、read が 4 以外のバイト数を渡す状況があるかどうか疑問に思っています。

「今」は次のように定義されます。

したがって、「time_t」の性質、Cでバイトがどのように渡されるのか、またはUDPがファイル記述子に間違ったバイト数を返す状況を理解していない可能性があります...

前もって感謝します。

0 投票する
1 に答える
4852 参照

c# - ASP.NET UDP ソケット コードは開発では機能しますが、IIS の運用環境では機能しません

ASP.NET Web アプリケーションの別のスレッドで静的コンポーネントとして実行されている次の UDP ブロードキャスト リスナーがあります。なぜこれを行うのかは本当に重要ではありませんが、展開したときにこれが機能しない理由は私を困惑させます. UDPブロードキャストを送信するコンソールアプリケーションがいくつかあります.VS2005開発WebサーバーのVisual Studioで実行すると、このスレッドとそのコードが動作することをテストして確認しましたが、コードをコンパイルして別のマシンに展開した瞬間IISで実行すると、動作が停止します。さらに、エラーではなく、機能しません。

log4net ロギングも Init() メソッドでのみ機能するようですが、スレッドでは機能しません (これは奇妙です)。しかしFile.AppendAllText、スレッドにいくつかのを追加しましたが、実行しているように見えますが、私が知る限り、行で停止しますbyte[] received = mUdpClient.Receive(ref mGroupEP);

ポートが開いていることを確認し、コンソールアプリでテストしました(これは機能します)。アクセス許可を確認し、デフォルトのIDでローカルシステムユーザーアカウントを使用するようにしましたが、まだ何もしていません. ファイアウォールをチェックし、イベント ログをチェックしましたが、何もありませんでした。エラーはありませんが、機能していません。

セキュリティ対策として IIS が System.Net リクエストをシャットダウンすることと関係があるのではないかと思いましたが、その仮説を支持するものは見つかりませんでした。

私は今、非常に絶望的になっています。助けてください。:(