|
|
  |
Доступ из Интернета к Modbus TCP серверу в локальной сети |
|
|
|
Sep 14 2015, 09:48
|
Частый гость
 
Группа: Свой
Сообщений: 142
Регистрация: 11-01-11
Из: Орел
Пользователь №: 62 159

|
Здравствуйте! Есть локальная сеть с адресами 192.168.1.XXX. В этой сети есть Modbus TCP сервер (коробочка на микроконтроллере STM32F4, стек LwIP), его адрес 192.168.1.100 порт 502. Из любого компьютера локальной сети этот сервер доступен (в локальной сети работает). Компьютеры локальной сети и коробочка Modbus TCP сервер подключены к Switch на 8 портв, а Switch подсоединен к ADSL-роутеру SmartAX MT800. IP-адрес, выданный Интернет-провайдером статический 95.XXX.XXX.XXX. Требуется сделать Modbus TCP сервер доступным из Интернета (из глобальной сети), т.е. на каком-то компьютере в глобальной сети есть Modbus TCP клиент и этому клиенту разрешен доступ в Интернет. На данный момент из Интернета могу зайти только в Web-интерфейс SmartAX MT800 (дальше - локальную сеть, наверное, роутер не пускает), используя статический IP (адрес роутера). Пробовал в меню NAT добавить REDIRECT на IP 192.168.1.100 порт 502 (пробовал и 0-65535). Пробовал настраивать IP Filter.В общем, пинг в сторону 95.XXX.XXX.XXX есть, а соединения с 192.168.1.100 нет. Пробую в программе Hercules 3.2.5 задать глобальный статический IP 95.XXX.XXX.XXX, пинг есть, а соединения нет, выдает ошибку "TCP connection error :10061" Как установить соединение?
Сообщение отредактировал Pridnya - Sep 14 2015, 09:51
Эскизы прикрепленных изображений
|
|
|
|
|
Sep 14 2015, 18:43
|

Профессионал
    
Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226

|
Цитата(Pridnya @ Sep 14 2015, 12:48)  Здравствуйте!
Есть локальная сеть с адресами 192.168.1.XXX. В этой сети есть Modbus TCP сервер (коробочка на микроконтроллере STM32F4, стек LwIP), его адрес 192.168.1.100 порт 502. Из любого компьютера локальной сети этот сервер доступен (в локальной сети работает). Компьютеры локальной сети и коробочка Modbus TCP сервер подключены к Switch на 8 портв, а Switch подсоединен к ADSL-роутеру SmartAX MT800. IP-адрес, выданный Интернет-провайдером статический 95.XXX.XXX.XXX.
Требуется сделать Modbus TCP сервер доступным из Интернета (из глобальной сети), т.е. на каком-то компьютере в глобальной сети есть Modbus TCP клиент и этому клиенту разрешен доступ в Интернет.
На данный момент из Интернета могу зайти только в Web-интерфейс SmartAX MT800 (дальше - локальную сеть, наверное, роутер не пускает), используя статический IP (адрес роутера). Пробовал в меню NAT добавить REDIRECT на IP 192.168.1.100 порт 502 (пробовал и 0-65535). Пробовал настраивать IP Filter.В общем, пинг в сторону 95.XXX.XXX.XXX есть, а соединения с 192.168.1.100 нет.
Пробую в программе Hercules 3.2.5 задать глобальный статический IP 95.XXX.XXX.XXX, пинг есть, а соединения нет, выдает ошибку "TCP connection error :10061"
Как установить соединение? А если на второй картинке (правила) Dest IP Address поставить внешний IP а не локальный ?
|
|
|
|
|
Sep 15 2015, 07:33
|
Частый гость
 
Группа: Свой
Сообщений: 142
Регистрация: 11-01-11
Из: Орел
Пользователь №: 62 159

|
Цитата(x893 @ Sep 14 2015, 21:43)  А если на второй картинке (правила) Dest IP Address поставить внешний IP а не локальный ? Как приятно!  Нашелся таки человек, дай Бог здоровья! А я рядом блудил, блудил и не знал, весь Интернет забит "как пробросить порты", но нигде нет правильного ответа, то роутер не такой, то не то делают. В таком случае соединение из внешней сети (Интернет МТС с динамическим IP) устанавливается, ответ от Modbus TCP сервера приходит. На удаленном компьютере программа Hercules 3.2.5, открыта вкладка TCP Client, задан внешний IP 95.XXX.XXX.XXX и порт 502, в строке ввода "Send" задан запрос Modbus TCP "прочитать несколько регистров функцией пользователя с кодом 0x41" в HEX-виде. На своем компьютере из локальной сети такой же эксперимент (задать внешний IP в Hercules-е) не проходит, ошибка 10061 (может в роутере еще что-то настроить нужно?), т.е. для опытов нужно два человека (пока я в локалке возле сервера нахожусь). Вот что у нас получилось. Работает!!!  А из локалки на внешний адрес (и снова в локалку) не соединяется, но оно и не очень нужно, мне нужно было установить соединение из внешней сети в локалку. В локалке я локальный IP задаю и работаю.
Сообщение отредактировал Pridnya - Sep 15 2015, 07:40
Эскизы прикрепленных изображений
|
|
|
|
|
Aug 9 2016, 09:43
|
Группа: Новичок
Сообщений: 1
Регистрация: 9-08-16
Пользователь №: 92 890

|
Цитата(Pridnya @ Sep 14 2015, 10:48)  Здравствуйте!
Есть локальная сеть с адресами 192.168.1.XXX. В этой сети есть Modbus TCP сервер (коробочка на микроконтроллере STM32F4, стек LwIP), его адрес 192.168.1.100 порт 502. Из любого компьютера локальной сети этот сервер доступен (в локальной сети работает). Компьютеры локальной сети и коробочка Modbus TCP сервер подключены к Switch на 8 портв, а Switch подсоединен к ADSL-роутеру SmartAX MT800. IP-адрес, выданный Интернет-провайдером статический 95.XXX.XXX.XXX.
Требуется сделать Modbus TCP сервер доступным из Интернета (из глобальной сети), т.е. на каком-то компьютере в глобальной сети есть Modbus TCP клиент и этому клиенту разрешен доступ в Интернет.
На данный момент из Интернета могу зайти только в Web-интерфейс SmartAX MT800 (дальше - локальную сеть, наверное, роутер не пускает), используя статический IP (адрес роутера). Пробовал в меню NAT добавить REDIRECT на IP 192.168.1.100 порт 502 (пробовал и 0-65535). Пробовал настраивать IP Filter.В общем, пинг в сторону 95.XXX.XXX.XXX есть, а соединения с 192.168.1.100 нет.
Пробую в программе Hercules 3.2.5 задать глобальный статический IP 95.XXX.XXX.XXX, пинг есть, а соединения нет, выдает ошибку "TCP connection error :10061"
Как установить соединение? Лично у меня Modbus TCP опять перестал быть видимым из мира, может ли это быть следствием того, что я логинюсь через прокси, или того, что настройки прокси, или может его порты указаны неверно?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|