【问题标题】:Port and IP address usage in UDP communicationUDP 通信中的端口和 IP 地址使用情况
【发布时间】:2014-03-06 17:56:06
【问题描述】:

我有两个客户端,我想将它们连接到使用 UDP 套接字的守护进程。它使用 IP addr1 和 Port#1 进行通信。在每个客户端中,我创建一个与守护进程使用的 IP 和端口#1 相同的套接字。可以为两个客户端使用相同的 IP 地址和端口号吗?

【问题讨论】:

    标签: c++ udp ports


    【解决方案1】:

    这取决于您所说的“使用”。

    使用守护程序正在侦听的 IP 和端口对两个客户端执行 connect()sendto() 是正确的。

    任何客户端都不能使用守护程序正在侦听的 IP 和端口执行bind()

    【讨论】:

    • 我想使用 sendto() 和 recv() 方法来发送和接收数据。我什么时候使用 bind()?它是干什么用的?
    • bind() 仅在您希望控制客户端将使用的源 IP 和/或端口时使用。当您在 UDP 套接字上调用 sendto() 时,操作系统将为您执行隐式 bind(),因此通常客户端不需要调用 bind()
    猜你喜欢
    • 2021-12-11
    • 1970-01-01
    • 1970-01-01
    • 2012-09-30
    • 2014-03-14
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多