Я использую Python для разработки OPC- клиента с пакетом freeopcua
. Чтобы проверить это, я использую Prosys OPC Simulation Server . Эта программа позволяет вам разместить сервер на вашем компьютере, который имитирует данные, чтобы увидеть, можете ли вы успешно читать и писать с вашего клиента.
Тем не менее, у меня возникли проблемы, с которыми я считаю, проблема с сетью. Адрес подключения моделируемого сервера:opc.tcp://DESKTOP-EPETSMR:53530/OPCUA/SimulationServer
. Таким образом, когда я пишу эти строки в скрипте Python, я могу успешно подключиться к нему:
client = Client("opc.tcp://DESKTOP-EPETSMR:53530/OPCUA/SimulationServer/")
client.connect()
Первая строка может быть заменена любой из следующих двух, и она также будет работать:
client = Client("opc.tcp://localhost:53530/OPCUA/SimulationServer/")
client = Client("opc.tcp://127.0.0.1:53530/OPCUA/SimulationServer/")
Теперь я хочу получить доступ к серверу с другого компьютера (т.е. компьютера, отличного от того, на котором размещен сервер), который подключен к той же сети Wi-Fi. Я думал, что замены IP- адреса обратной связи 127.0.0.1
на IP-адрес компьютера будет достаточно. Поэтому я запустил ipconfig
из командной строки Windows и получил:
Wireless LAN adapter Wi-Fi:
IPv4 Address. . . . . . . . . . . : 192.168.1.5
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
Но когда я запускаю предыдущие две строки, заменяя петлевой IP-адрес на 192.168.1.5
, клиент не может подключиться к серверу.
Поэтому я попытался выполнить пинг в обоих направлениях (с одного компьютера на другой), и оба работали нормально, поэтому кажется, что проблема не в связи между обоими хостами.
Есть идеи, как это можно исправить?