ich möchte drahtlos Daten zwischen 2 linuxsystemen via UDP verschicken.
Der Client.py PC ist zugleich SoftAp(Accesspoint) und der Server.py in diesen SoftAp eingeloggt.
Beide Systeme könne sich gegenseitig anpingen.
Client.py - IP:192.168.8.1
Server.py - IP:192.168.8.107
Es kommt die Fehlermeldung:
sock.bind(server_address)
OSError: [Errno 99] Cannot assign requested address
Client.py - IP:192.168.8.1
Code: Alles auswählen
import socket
import sys
import time
while True:
# Create a UDP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server_address = ('192.168.8.107', 10000)
message = b'This is the message. It will be repeated.'
start=time.perf_counter()
try:
# Send data
print('sending {!r}'.format(message))
sent = sock.sendto(message, server_address)
# Receive response
print('waiting to receive')
data, server = sock.recvfrom(4096)
print('received {!r}'.format(data))
finally:
print('closing socket')
sock.close()
stop= time.perf_counter();
print(stop-start)
time.sleep(0.5)
Server.py - IP:192.168.8.107
Code: Alles auswählen
import socket
import sys
# Create a UDP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# Bind the socket to the port
server_address = ('192.168.8.1', 10000)
print('starting up on {} port {}'.format(*server_address))
sock.bind(server_address)
while True:
print('\nwaiting to receive message')
data, address = sock.recvfrom(4096)
print('received {} bytes from {}'.format(
len(data), address))
print(data)
if data:
sent = sock.sendto(data, address)
print('sent {} bytes back to {}'.format(
sent, address))
Weiss jmd. woran es liegen könnte? Bin da jetzt ziemlich ratlos.