I'm working on a small, networked game prototype which will be played on LANs using UDP. For the discovery of other computers on the network, I've been investigating broadcasting. However, I'm still unsure about a few details regarding UDP socket setup/usage (networking newbie). I found a good library to use after the game is started, but at first, all computers running the game must be discovered and one has to be chosen as a server. So my questions are the following:
- Can a single UDP socket be used to listen for and send broadcasts? I'm pretty sure the answer to this is yes, but I wanted to verify it.
- When using UDP, do you actually have to use
bind()
? As far as I understand,connect()
is not required, nor issend()/recv()
, since they are for TCP (sendto()/recvfrom()
being the replacements).