如何正确调试 XMLRPC 失败

如何正确调试 XMLRPC 失败

我有一个在 Ubuntu 服务器上运行的 Odoo 实例,我想从同一子网中的 Windows 计算机查询 XMLRPC api。两者可以正常通信并且一切正常,但如果我在 Windows Scheduler 中将客户端脚本设置为每 5 分钟运行一次,它就会开始遇到问题。

socket.error: [Errno 10061] 无法建立连接,因为目标机器主动拒绝

如果我等待一小段时间,禁用计划任务并且不触及脚本,它就会再次开始工作,但只需进行几次调用,错误就会再次出现。

因此,出于某种原因,如果呼叫过多,Ubuntu 机器就会拒绝。我只能找出这些规则处于哪个级别。我不使用防火墙。

root@oddo9:~$ ufw status
Status: inactive 
root@oddo9:~$

也没有 iptables

root@oddo9:~$ iptables -L
Chain INPUT (policy ACCEPT) target     prot opt source    
destination

Chain FORWARD (policy ACCEPT) target     prot opt source              
destination

Chain OUTPUT (policy ACCEPT) target     prot opt source               
destination

Odoo 也没有输出,所以我不知道如何调试这个问题。

答案1

我发现了问题所在。我们的子网中有两台具有相同 IP 的机器,因此存在冲突。客户端试图连接到其他机器,而该机器甚至没有监听 XMLRPC 协议。

我以为只要等 15 分钟就可以了,但事实并非如此……它只是随机地接通了一两个电话。现在一切都说得通了。

相关内容