Я пытаюсь написать прослушиватель системного журнала, и до сих пор хорошо получается заставить его принимать входящие сообщения через TCP, но я также хочу, чтобы функционировал UDP.
Это код сервера UDP, который я использую, который работает с помощью клиентского приложения Python. У меня также есть другое приложение, которое также работает только с помощью клиентского приложения Python.
# Server program
# UDP VERSION
from socket import *
# Set the socket parameters
host = "localhost"
port = 514
buf = 1024
addr = (host,port)
# Create socket and bind to address
UDPSock = socket(AF_INET,SOCK_DGRAM)
UDPSock.bind(addr)
# Receive messages
while 1:
data,addr = UDPSock.recvfrom(buf)
if not data:
print "Client has exited!"
break
else:
print "\nReceived message '", data,"'"
# Close socket
UDPSock.close()
Используя этот код, я могу отправить его на сервер, чтобы он отобразил код.
# Client program
from socket import *
# Set the socket parameters
host = "localhost"
port = 514
buf = 1024
addr = (host,port)
# Create socket
UDPSock = socket(AF_INET,SOCK_DGRAM)
def_msg = "===Enter message to send to server===";
print "\n",def_msg
# Send messages
while (1):
data = raw_input('>> ')
if not data:
break
else:
if(UDPSock.sendto(data,addr)):
print "Sending message '",data,"'....."
# Close socket
UDPSock.close()
Я попытался с помощью генератора сообщений системного журнала Kiwi и Snare отправить сообщения системного журнала на сервер UDP, но ничего не происходит. Может ли кто-нибудь помочь мне понять?