使用客户端容器连接到主机上的BACNET Server

时间:2018-09-25 04:25:22

标签: docker linux-containers bacnet

我正在尝试连接已容器化的BACNET客户端和在主机上运行的BACNET服务器。我在具有Linux容器的Windows 10(主机)上使用Windows的Docker。 我尝试了以下方法:

a。使用run命令发布客户端容器的端口47808。

b。使用network = host运行容器,以访问localhost的服务。

c。尝试使用run命令将网关IP指定为服务器的IP地址。

d。在与服务器相同的子网中运行容器

e。使用指定的主机IP和已发布的端口运行容器。 我的bacnet服务器取自https://sourceforge.net/projects/bacnet/,始终连接到DockerNAT 10.0.75.1?知道为什么会这样吗?服务器应用程序不是容器,而是可执行文件。

服务器IP:10.0.75.1(dockerNAT) 客户端容器在主机上运行。

1 个答案:

答案 0 :(得分:0)

通过快速的google:

  

对于Windows容器,不使用此组件,而容器和   它们的端口只能通过NATed IP地址访问。

关于BACnet,这将使您陷入一个痛苦的世界。您必须在容器中使用具有NAT支持的BACnet BBMD才能实现此目的,并且BACnet客户端将必须注册为BACnet外部设备。 SourceForge的BACnet堆栈似乎确实支持NAT(代码似乎已经存在,但我从未以原始形式对其进行过测试)。

因此,您所看到的是“预期的”,但是您的解决方案将要求您对BACnet BBMD的了解要比以往更加熟悉。仔细阅读BACnet规范。祝你好运。