linux - PYMODBUS : How to get master to communicate with slave?

标签 linux modbus denial-of-service man-in-the-middle pymodbus3

我正在做一个项目,我有两个都安装了 Pymodbus 的 Debian 虚拟机。我正在尝试设置一个虚拟测试环境,在其中我可以在它们通信时从第三个 Kali VM 对两者执行各种网络攻击。不幸的是,我对 unix 和 PLC 编程还很陌生,很难让两者相互通信。理想情况下,主机应该向从机发送数据,然后从机更新一些信息并发回响应。有谁知道如何开始让这两者一起工作?我真的很茫然,我不知道从哪里开始。非常感谢,我真的很感激。

我从这里得到了 pymodbus:https://pypi.python.org/pypi/pymodbus 文档位于此处:https://github.com/riptideio/pymodbus

附言我使用 pip 安装上面的 .whl 文件,但我看到其他人通过简单地运行命令来安装 pymodbus,这让我担心我做错了。

最佳答案

您可以在一个 Debian VM 系统中运行测试。

1。运行 server file , 并设置ip和端口。

2。运行 client file ,并连接到ip和端口。

那是tcp/ip方式,你可以用同一个文件做串口方式。看看上面文件中的注释就可以了。如果有任何问题,请告诉我。

服务器图片: enter image description here 客户图片: enter image description here

更新:

1.通过局域网连接两台PC,确保两台PC能互相ping通。 2.设置同步服务器.py:

StartTcpServer(context, identity=identity, address=("0.0.0.0", 5020)) 这意味着监听来自所有 ip 的所有即将到来的连接请求。

3.设置synchronous-client.py(假设服务器pc ip是“192.168.1.10”,你应该把这个ip替换成真实服务器ip):

client = ModbusClient('192.168.1.10', port=5020)

4.运行这两个py文件,它现在应该可以工作了。

关于linux - PYMODBUS : How to get master to communicate with slave?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47422864/

相关文章:

Python TCP/IP 通信

c# - 计算 CRC16 (Modbus) 值的函数

linux - 重命名目录中的多个文件

c - RS 232 DB9 引脚切换代码的​​问题

linux - 使用 shell 脚本从先前创建的文件中删除单词

node.js - MongoDB ReDOS 测试

java - 您能否以编程方式连接到一系列网页并解析源 HTML,而不会对系统造成压力或引发危险信号?

c - 使用提示 : child prints after parent waitpid 实现 shell

python - 使用 libmodbus C 为 Open-WRT 路由器编写 modbus 程序(将 Python 应用程序重写为 C)

PHP:同时打开 URL 以模拟 DOS 攻击?