你好,

我使用RCM 4300与dcrtcp。Lib和http.lib。它被配置为位于子网“a”上的静态IP地址10.130.216.11。
从另一个子网上的计算机,称为“B”,物理地连接到“a”,IP配置为10.130.192.122,我想使用web浏览器访问我的RCM以显示网页。问题是,RCM 4300可以从计算机ping,但网页不显示在web浏览器上。

似乎RCM 4300正在重置连接。

[03:15:18:56 .697290] 802.1Q vlan#205 P0 INLINE-TAG 32 10.130.216.11.80 > 10.130.192.122.1030: R 0:0(0) ack 1189365308 win 0
[04:15:18:56 .697931] 802.1Q vlan#205 P0 INLINE-TAG 32 10.130.216.11.80 > 10.130.192.122.1031: R 0:0(0) ack 171557416 win 0

更详细地说,RCM 4300正在http(不是https)上工作,端口80,如果计算机在子网“a”上,则网页可以正确启动。

为了了解为什么它不能正常工作,我应该调查什么?请随意问我更多的细节。

提前感谢您的宝贵时间!

RCM4300和您的PC的子网掩码和默认网关设置是什么?

子网是否属于同一物理网络?在Rabbit的TCP/IP栈中,当向不在当前子网上的设备发送数据时,Rabbit会将其定向到默认网关以传递到目标设备。

要确定设备是否在同一子网上,设备检查是否" (src_ip & netmask) == (dst_ip & netmask) "(这是位和)。我的猜测是PC有正确的网掩码(255.255.0.0),所以它可以直接寻址兔子,但是兔子认为它在一个较小的网络上(比如255.255.255.0),它应该使用默认网关到达目标。

你好,

两台设备都在同一个“物理”网络上,它们只是在不同的“ip范围”上。
PC设置如下:
IP: 10.130.192.0/23
网关:10.130.192.1
子网掩码:255.255.254.0

RCM4300的设置如下:
IP: 10.130.216.11
网关:10.130.216.1
子网掩码:255.255.255.0

供您参考,客户可以在PC上通过命令提示符使用此配置“ping”RCM 4300。

然而,我忘了提到,在现场,在与RCM 4300相同的子网上,有RCM 6700与RCM 4300通信,配置类似于RCM 4300(静态IP):
IP: 10.130.216.14
网关:10.130.216.1
子网掩码:255.255.255.0

我是否也应该调整这些信息?

谢谢你!

这可能是防火墙的问题吗?您是否可以在每个网络上的计算机上运行Wireshark或tcpdump来捕获流量,以帮助确定可能发生的情况?也许RCM4300网络上的另一个设备正在使用相同的IP地址?这可以解释为什么在您最初的问题中包含的捕获中,不同的ACK数据包紧密地连续出现。
您是否使用Dynamic C 10.72或更高版本(最好是10.72 e)?
如果你认为这是RCM4300 TCP/IP协议栈的某种bug,你可以向Digi的技术支持部门投诉。

从客户的角度来看,这是一个RCM4300故障。然而,我已经设法询问了他们Wireshark的踪迹。

由于我不知道如何在这里分享这些数据,我已经和技术支持开了票。