私はVB.NETで作業しています
だから私はそれ自身のIPを毎秒ブロードキャストするサーバーを持っています
Private Sub IPBroadcastTimer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IPBroadcastTimer.Tick
BroadcastIP()
End Sub
クライアントが数分または数時間後に受信できるように、毎秒ブロードキャストし続ける必要がありますか?
もしそうなら、ログインをリッスンするようにサーバーを設定するにはどうすればよいですか?
クライアント側とサーバー側で何が起こるかは次のとおりです。
サーバー : "毎秒 IP をブロードキャストする" > "着信をリッスンする" > "3 つの文字列[ユーザー名/パス/IP]を受信する" > "ローカル XML ファイルでユーザー名とパスワードの有効性をチェックする" > "ターゲット IP に確認または拒否を送信する"
クライアント : 「サーバー ブロードキャストをリッスンする」 > 「サーバー IP を受信する」 > 「フォームを通じて 3 つの文字列を送信する: ユーザー名、パスワード、およびローカル IP」 > 「サーバーの確認または拒否をリッスンする」
これを使って送信したのですが、リスニングがうまくいかないようです...
Public EndPoint As New IPEndPoint(IPAddress.Parse("255.255.255.255"), 1001) ''Send destination port
Public EndPoint2 As New IPEndPoint(IPAddress.Any, 2001) ''Receive destination port
Public UserIPEndPoint As New IPEndPoint(IPAddress.Any, 2001)
Public UsernameEndPoint As New IPEndPoint(IPAddress.Any, 2001)
Public PassEndPoint As New IPEndPoint(IPAddress.Any, 2001)
Public Send As New UdpClient(2001) ''Send source port
Public Receive As New UdpClient(1001) '' Receive source port
送信:
Send.Send(IPInBytes, IPInBytes.Length, EndPoint)
受信:
Receive.Receive(UserIPEndPoint)
これを解決するにはどうすればよいですか?