【发布时间】:2023-04-09 00:08:01
【问题描述】:
我用了大约两周的时间尝试了很多不同的代码,但没有一个像我认为的那样有效。
我只需要在定义的端口上接收数据包并将该数据包应答到远程 IP 的源端口
I.E. 我正在侦听端口 8090 并接收来自远程端口 6508(源端口)的数据包我需要将答案从 8090(本地传出端口)传递到 6508(远程传入端口)而不停止侦听来自另一个远程主机的另一个传入数据。
问题在于,使用 UDPClient,我无法使用我用来监听应答的相同端口。
我得到的最佳方法是只接收一个远程主机(第一个)的答案。
所以我想知道是否可以使用相同的 UDPClient 来回答来自不同远程主机的接收。
我有点沮丧。
你能指导我吗?
新信息 我进行了一些测试,接收线程工作正常,可以从任何远程主机接收数据,直到通过以下代码发送答案。
Private Sub UdpSend(ByVal txtMessage As String)
Dim pRet As Integer
GLOIP = IPAddress.Parse(IpRemotaLbl.Text)
GLOINTPORT = PuertoEscuchaLbl.Text
MyUdpClient.Connect(GLOIP, DstPort) 'Can be here the error?
bytCommand = Encoding.ASCII.GetBytes(txtMessage)
pRet = MyUdpClient.Send(bytCommand, bytCommand.Length)
PrintLog("No of bytes send " & pRet)
End Sub
似乎当它连接到远程主机时停止侦听任何其他远程主机。
【问题讨论】:
标签: sockets vb.net-2010 udpclient