[Python-de] UDP Socket-Programmierung und "falsche" IP-Adressen
Helge Wiethoff
helge at nicht-laut.de
Di Aug 13 13:18:34 CEST 2013
Moinmoin,
>> Nimm mal statt '255.255.255.255' die Konstante INADDR_BROADCAST
>
> Das check ich grad irgendwie nicht. Der bind auf INADDR_BROADCAST
> geht nich:
> --------------
> botschek~ # ms_controll
> Traceback (most recent call last):
> File "/usr/sbin/ms_controll", line 147, in <module>
> cs.bind((INADDR_BROADCAST,UDP_GET_PORT))
> File "/usr/lib64/python2.7/socket.py", line 224, in meth
> return getattr(self._sock,name)(*args)
> TypeError: coercing to Unicode: need string or buffer, int found
> --------------
> print INADDR_BROADCAST # gibt 4294967295 raus. Also 255.255.255.255
>
>
>> Socket existiert ? Mal mit linux netstat prüfen.
>
> udp 0 0 255.255.255.255:8340 *:*
> 15596/python
> von den Geräten aus dem gleichen Subnetz kommen die Pakete ja auch
> korrekt an.
>> Alternatic:
>>
>> http://codingrelic.geekhold.com/2009/10/code-snippet-sobindtodevice.html
>>
>> Geht wohl nur mit root.
>> Soll ans Device binden, nicht an die Adresse.
Das hab ich grad mal gecheckt aber ist tatsächlich nicht das was ich
suche...
So wie es aussieht ist es mit Python nicht möglich, bzw. entzieht sich
meiner Kenntnis.
Gruß,
Helge
Mehr Informationen über die Mailingliste python-de