Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

stream socket send/receive broadcast messages?

Tags:

python

I browsed the python socket docs and google for two days but I did not find any answer. Yeah I am a network programming newbie :)

I would like to implement some LAN chatting system with specific function for our needs. I am at the very beginning. I was able to implement a client-server model where the client connects to the server (socket.SOCK_STREAM) and they are able to change messages. I want to step forward. I want the client to discover the LAN with a broadcast how many other clients are available. I failed. Is it possible that a socket.SOCK_STREAM type socket could not be used for this task? If so, what are my opportunities? using udp packets? How I have to listen for brodcast messages/packets?

like image 852
sipiatti Avatar asked Feb 11 '10 19:02

sipiatti


1 Answers

The broadcast is defined by the destination address.

For example if your own ip is 192.168.1.2, the broadcast address would be 192.168.1.255 (in most cases)

It is not related directly to python and will probably not be in its documentation. You are searching for network "general" knowledge, to a level much higher than sockets programming

*EDIT

Yes you are right, you cannot use SOCK_STREAM. SOCK_STREAM defines TCP communication. You should use UDP for broadcasting with socket.SOCK_DGRAM

like image 56
Eric Avatar answered Oct 20 '22 20:10

Eric