我想在端口 514 上从 UDP 读取 syslog。我使用的是 delphi 2010。我放置了一个 IdUDPServer 并将 DefaultPort 设置为 514,将 BuffeSize 设置为 1024。此 syslog 由 Cisco 防火墙 5505 生成。我正在向我的防火墙发送 ping 命令,如下所示. Ping 192.168.1.100 -t 当我运行 kiwi(一个监控系统日志消息的软件)时,每次 ping 都会收到 2 条这样的消息。
%ASA-6-302021:拆除 faddr 192.168.1.4/1 gaddr 192.168.1.100/0 laddr 192.168.1.100/0 的 ICMP 连接 %ASA-6-302020:为 faddr 192.168.1.4/1 gaddr 192.168 构建入站 ICMP 连接。 1.100/0 梯形图 192.168.1.100/0
但在我的 Listener 中,每次 ping 我只会收到一条消息。像这样 %ASA-6-302020:为 faddr 192.168.1.4/1 gaddr 192.168.1.100/0 laddr 192.168.1.100/0 构建入站 ICMP 连接
我不知道为什么我无法在我的听众中收到第一条消息。我在 IdUDPServer 的 OnRead 事件上写了这样的代码
procedure TMyTestOnSyslog.Listener514UDPRead(
AThread: TIdUDPListenerThread; AData: TBytes; ABinding: TIdSocketHandle);
var S:string;
i:Integer;
begin
S:='';
for i := 0 to High(AData) do
S:=S+chr(Adata[i]);
...
end;
我应该怎么办?:D