IG902 内部APP实现数据互访
1.进入设备web管理界面,运行device_supervisor app程序,选择 设备监控->云服务.
2.配置 发布功能(需要明白mqtt协议的组概念,同一组中可以接收数据,及A发布主题 为topic_A,B 和 c 同时订阅 topic_A,则B和C能同时收到数据)
定义发布主题为jieshou, Qos 为1.
3.添加采集数据的相关信息
4.模拟客户自行开发的APP实现与device_supervisor 通讯.
4.1 开启IG网关 调试模式.
4.2 通过ssh 222端口连接 设备用户名密码 如上图
3.3 编写测试代码
import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected with result code: " + str(rc))
def on_message(client, userdata, msg):
print(msg.topic + " " + str(msg.payload))
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect('127.0.0.1', 9009, 600)
client.subscribe('jieshou', qos=1)
client.loop_forever()
4.3运行py文件,查看接收数据
注意:IG 里面开启 9009 只对设备本机内部APP互访数据有效, 不对外提供服务(外部通过IG地址加端口访问).
收起阅读 »IR915 作为OpenVPN服务器实现客户端子网互联
网络拓扑
1.配置openvpn server端
导入相关的证书文件.(ca.cart ca证书、 inhandserver.key 服务器端私钥、inhandserver.crt 服务器端公钥)
2.IR915开启openVPN服务器.
设计IR615 后端子网为192.168.10.0/24,IR915后端子网192.168.30.0/24,IR915_server 子网192.168.2.0/24
3.查看openvpn server 状态
4.配置IR915连接openvpn
5.查看openvpn连接状态
6.IR915 openvpn客户端上测试 到 openvpn server 子网地址的连通性.
7.配置IR615连接openvpn .
8.查看openvpn连接状态
9.测试IR615后端子网到其它子网的连通性.
9.1测试到openvpn server 后端子网连通性
9.2测试到 IR915 客户端子网的连通性.
收起阅读 »DTU Ping功能如何使用?
DTUToolInstaller_V1.1.36 以后的版本支持Ping功能
配置工具链接DTU之后,首先确认DTU是否拨号成功、获得IP地址。之后拨号成功ping服务器地址才意义。有肯能服务器是禁ping的,也可以ping 网络内的其他IP地址。确认网络是否畅通。
请下载:
收起阅读 »InRouter与Juniper SRX建立IPSec隧道配置案例
拓扑图中左侧为LTE 4G 无线路由器,4G路由器使用SIM卡拨号上网,获得运营商分配的动态私网IP地址。右侧为企业数据中心部署Juniper SRX防火墙,通过企业专线接入了互联网,并且使用静态公网IP,防火墙WAN接口(Unturst接口)接入互联网,LAN(Trust接口为企业内网)。LTE 4G 无线路由器与Juniper SRX防火墙建立IPSec VPN,使得企业的LAN可以访问LTE 4G 无线路由器的LAN。
IPSec协议来实现远程接入的一种VPN技术,IPSec全称为Internet Protocol Security,是由Internet Engineering Task Force (IETF) 定义的安全标准框架,在公网上为两个私有网络提供安全通信通道,通过加密通道保证连接的安全——在两个公共网关间提供私密数据封包服务IPSEC是一套比较完整成体系的VPN技术,它规定了一系列的协议标准。
1. 防火墙配置- LAN端口 (WAN/LAN端口都可以在防火墙的配置向导中进行配置)
1.2 防火墙 WAN端口
2.1 防火墙IKE配置
配置 隧道预共享密钥。
由于4G路由器为动态IP,所以在建立SA时每台路由器需要配置FQDN,在防火墙的配置是Hostname。Hostname是自己定义的一串字符,下图为例第一台路由器的Hostname为 inhandstation1
2.2 防火墙配置IPSec策略
新增Tunnels 接口,将感兴趣流(从10.15.124.0/24 到192.168.1.0/24)关联到st.1接口
2.3 在路由器的路由表Untrust/Trust策略
3.1 LTE 4G无线路由器IR300/IR600 新增IPSec隧道配置
密钥与在防火墙中配置一样的内容。
第一阶段ISAKMP建立成功、第二阶段 IPsec SA建立成功
以无线路由器LAN地址为源地址 (-I 192.168.1.1)ping 目的f地址 10.15.124.254 (防火墙LAN地址)
4. LTE无线路由器 IR900 的iPSec配置
IG902上传数据到MQTT云平台EMQ
EMQX 是全球领先的开源物联网MQTT 5.0服务器,高并发、低延时,内置强大的规则引擎,支持边缘及云端部署,是5G时代大型物联网应用首选技术方案。IG902边缘计算网关,可以通过MQTT协议接入EMQ服务器,帮助您快速搭建IIoT计算方案。
1. IG902初始化配置
1)开启边缘计算安装相应APP device_supervisor并启动APP。
2)添加设备选择右侧栏目设备监控-》设备列表右上角操作中的“ ”号添加设备。
3)添加变量
2.模拟传感器数据上传:
1)使用软件modbus Slave
2) 添加模拟数据
3)启动数据发送connection-》connect
3.配置设备云服务及搭建EMQ服务器
1)在IG Web端查看接收数据
4.搭建EMQ服务器
1)下载链接 https://www.emqx.io/cn/downloads#enterprise
2)以Linux系统为例注册账户下载免费的license 文件,替换etc目录下的对应文件。
3)安装目录bin目录下启动系统 通过./empx start命令启动。
4)浏览器访问http://服务器地址:18083/#/login 输入用户名和密码用户名admin 密码public登录管理页面
5.EMQ平台配置用户名认证
1)关闭匿名登录
配置匿名认证开关:
# 修改etc/emqx.conf
## Value: true | false
allow_anonymous=false
方式一:
修改etc/plugins文件夹下的
emqx_auth_username.conf文件
# etc/plugins/emqx_auth_username.conf
auth.user.password_hash = plain
## 第一组认证数据
auth.user.1.username = admin
auth.user.1.password = public
## 第二组认证数据
auth.user.2.username = test
auth.user.2.password = test
启动认证服务
./emqx_ctlplugins loademqx_auth_username或在web界面开启服务
重启emqx服务
./bin/emqx stop
./bin/emqx start
查看运行状态
./bin/emqx_ctlstatus
方式二: 1)安装mysql 数据库
mysql安装
检查系统本身是否有预装的mysql
rpm -qa | grep mysql #检查是否安装了mysql
rpm -qa | grep mariadb #检查是否安装了mariadb
rpm -e xxx#一般使用此命令即可卸载成功
rpm -e --nodeps xxx #卸载不成功时使用此命令强制卸载)
安装
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
//下载mysql的rpm的包
yum -y installmysql57-community-release-el7-10.noarch.rpm
yum -y installmysql-community-server
2)创建相关表格:
>mysql –u root –p
createdatabase mqtt;
CREATETABLE`mqtt_user`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`username`varchar(100) DEFAULTNULL,
`password`varchar(100) DEFAULTNULL,
`salt`varchar(35) DEFAULTNULL,
`is_superuser`tinyint(1) DEFAULT0,
`created`datetime DEFAULTNULL,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_username`(`username`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;
3) 修改文件
# etc/plugins/emqx_auth_mysql.conf
## 服务器地址
auth.mysql.server = 127.0.0.1:3306
## 连接池大小
auth.mysql.pool = 8
auth.mysql.username = mysql数据库名
auth.mysql.password = 数据库密码
auth.mysql.database = mqtt数据库
auth.mysql.query_timeout = 5s
4)启动服务mysql认证服务emqx_ctl plugins load emqx_auth_mysql 或通过web管理端插件开启
注意:如果服务未启动查看报错内容解决。1.配置文件出错(检查后修改)。2.mysql未开启远程管理权限
5)添加测试用户
mysql -u root -p
usemysql;
updateusersethost=’%’ whereuser=‘root’ andhost=‘localhost’;
添加认证用户test密码test
INSERTINTO`mqtt_user`( `username`, `password`, `salt`)
VALUES
('test', ' f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2', NULL);
密码采用sha256加密
6)客户端测试使用软件MQTTX 链接:https://mqttx.app/cn/
7)点击connect,提示连接成功
8)IG连接需要添加用户名密码
9)编辑发布脚本
相关发布脚本参考链接:
6.配置客户端数据存储到Mysql
1)手动新建数据表,或根据附件mqtt.sql导入数据库。
修改文件emqx_backend_mysql.conf
# etc/plugins/emqx_backend_mysql.conf
## 服务器地址
auth.mysql.server=127.0.0.1:3306
## 连接池大小
auth.mysql.pool=8
auth.mysql.username=mysql数据库名
auth.mysql.password=数据库密码
auth.mysql.database=mqtt数据库
auth.mysql.query_timeout=5s
2)建立相关表格MySQL设备在线状态表
mqtt_client 存储设备在线状态:
DROPTABLEIFEXISTS`mqtt_client`;
CREATETABLE`mqtt_client`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`state`varchar(3) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`online_at`datetime DEFAULTNULL,
`offline_at`datetime DEFAULTNULL,
`created`timestampNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
KEY`mqtt_client_idx`(`clientid`),
UNIQUEKEY`mqtt_client_key`(`clientid`),
INDEXtopic_index(`id`, `clientid`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
1 rows in set(0.00sec)
MySQL主题订阅表
mqtt_sub 存储设备的主题订阅关系:
DROPTABLEIFEXISTS`mqtt_sub`;
CREATETABLE`mqtt_sub`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`topic`varchar(180) DEFAULTNULL,
`qos`tinyint(1) DEFAULTNULL,
`created`timestampNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
KEY`mqtt_sub_idx`(`clientid`,`topic`,`qos`),
UNIQUEKEY`mqtt_sub_key`(`clientid`,`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
MySQL消息存储表
mqtt_msg 存储MQTT 消息:
DROPTABLEIFEXISTS`mqtt_msg`;
CREATETABLE`mqtt_msg`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`msgid`varchar(64) DEFAULTNULL,
`topic`varchar(180) NOTNULL,
`sender`varchar(64) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`qos`tinyint(1) NOTNULLDEFAULT'0',
`retain`tinyint(1) DEFAULTNULL,
`payload`blob,
`arrived`datetime NOTNULL,
PRIMARY KEY(`id`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
MySQL保留消息表
mqtt_retain 存储retain 消息:
DROPTABLEIFEXISTS`mqtt_retain`;
CREATETABLE`mqtt_retain`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`topic`varchar(180) DEFAULTNULL,
`msgid`varchar(64) DEFAULTNULL,
`sender`varchar(64) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`qos`tinyint(1) DEFAULTNULL,
`payload`blob,
`arrived`timestampNOTNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_retain_key`(`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
select* frommqtt_retain wheretopic = "retain";
MySQL消息确认表
mqtt_acked 存储客户端消息确认:
DROPTABLEIFEXISTS`mqtt_acked`;
CREATETABLE`mqtt_acked`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`topic`varchar(180) DEFAULTNULL,
`mid`int(11) unsignedDEFAULTNULL,
`created`timestampNULLDEFAULTNULL,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_acked_key`(`clientid`,`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
3)启动服务mysql存储方法一:emqx_ctl plugins load emqx_backend_mysql方法二:通过插件启动对应插件emqx_backend_mysql
4)通过mysql查看客户端发送数据
EMQ配置文档https://docs.emqx.io/enterprise/latest/cn/
7.数据显示通过软件Grafana
1)下载链接:https://grafana.com/grafana/download安装完成后访问服务器地址:3000进入管理界面,此处访问10.5.20.245:3000
2)设置相关参数
3)测试连接mysql是否可以连接
4)创建视图表格
5)编辑表格
6)设置数据库及查询语句。
8.尝试修改上传值
查看传输的数据
9.EMQ平台下发数据到客户端
1)编辑订阅
2)填写代码
import logging
import json
defctl_test(topic, payload, wizard_api): #定义订阅主函数
logging.info(topic) #打印订阅主题,假定topic为write/plc
logging.info(payload) #打印订阅数据,假定payload数据为{"method":"setValue", "TagName":"SP1", "TagValue":12.3}
payload = json.loads(payload) #反序列化订阅数据
ifpayload["method"] == "setValue": #检测是否为写入数据
message = {payload["TagName"]:payload["TagValue"]} #定义下发消息,包括下发的变量名称和变量值
wizard_api.write_plc_values(message) #调用wizard_api模块中的write_plc_values方法,将message字典中的数据下发至指定变量
3)EMQ服务器端连接websocket
4)发布信息到客户端,填写对应客户端订阅主题,及修改字段{"method":"setValue", "TagName":"字段名", "TagValue":修改值为}此处修改客户端字段temperature修改值为12.3此处输入{"method":"setValue", "TagName":"temperature", "TagValue":12.3} 点击发布按钮
查看值是否修改(modbus中值和变量列表中值都被修改)
相关日志
扩展 python实现对数据的修改
import paho.mqtt.client as mqtt
# 连接成功回调
defon_connect(client, userdata, flags, rc):
print('Connected with result code 'str(rc))
client.subscribe('to_service')
# 消息接收回调
defon_message(client, userdata, msg):
print(msg.topic " "str(msg.payload))
client = mqtt.Client()
# 指定回调函数
client.on_connect = on_connect
client.on_message = on_message
# 建立连接
client.username_pw_set('用户名','密码')
client.connect('服务器地址', 1883, 60)
# 发布消息修改对象修改值
client.publish('to_client',payload='{"method":"setValue", "TagName":"T1", "TagValue":12}',qos=1)
client.loop_forever()
Python paho-mqtt 模块使用 https://www.jianshu.com/p/ef546f476322
运行程序查看数据变化
其它:
相关启动命令
启动mysql: systemctl start mysqld
启动EMQ: ./emqx/bin/emqx start
启动grafana:service grafana-server start
如果访问服务器IP:端口无法访问的情况
1.检查服务是否开启
2.centos下防火墙开启相关接口
查看命令
开启相关端口例:开启tcp协议端口3306 firewall-cmd --permanent --add-port=3306/tcp
IG902上传数据到MQTT云平台EMQ(2)
6.配置客户端数据存储到Mysql
1)手动新建数据表,或根据附件mqtt.sql导入数据库。
修改文件emqx_backend_mysql.conf
# etc/plugins/emqx_backend_mysql.conf
## 服务器地址
auth.mysql.server=127.0.0.1:3306
## 连接池大小
auth.mysql.pool=8
auth.mysql.username=mysql数据库名
auth.mysql.password=数据库密码
auth.mysql.database=mqtt数据库
auth.mysql.query_timeout=5s
2)建立相关表格MySQL设备在线状态表
mqtt_client 存储设备在线状态:
DROPTABLEIFEXISTS`mqtt_client`;
CREATETABLE`mqtt_client`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`state`varchar(3) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`online_at`datetime DEFAULTNULL,
`offline_at`datetime DEFAULTNULL,
`created`timestampNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
KEY`mqtt_client_idx`(`clientid`),
UNIQUEKEY`mqtt_client_key`(`clientid`),
INDEXtopic_index(`id`, `clientid`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
1 rows in set(0.00sec)
MySQL主题订阅表
mqtt_sub 存储设备的主题订阅关系:
DROPTABLEIFEXISTS`mqtt_sub`;
CREATETABLE`mqtt_sub`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`topic`varchar(180) DEFAULTNULL,
`qos`tinyint(1) DEFAULTNULL,
`created`timestampNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
KEY`mqtt_sub_idx`(`clientid`,`topic`,`qos`),
UNIQUEKEY`mqtt_sub_key`(`clientid`,`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
MySQL消息存储表
mqtt_msg 存储MQTT 消息:
DROPTABLEIFEXISTS`mqtt_msg`;
CREATETABLE`mqtt_msg`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`msgid`varchar(64) DEFAULTNULL,
`topic`varchar(180) NOTNULL,
`sender`varchar(64) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`qos`tinyint(1) NOTNULLDEFAULT'0',
`retain`tinyint(1) DEFAULTNULL,
`payload`blob,
`arrived`datetime NOTNULL,
PRIMARY KEY(`id`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
MySQL保留消息表
mqtt_retain 存储retain 消息:
DROPTABLEIFEXISTS`mqtt_retain`;
CREATETABLE`mqtt_retain`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`topic`varchar(180) DEFAULTNULL,
`msgid`varchar(64) DEFAULTNULL,
`sender`varchar(64) DEFAULTNULL,
`node`varchar(64) DEFAULTNULL,
`qos`tinyint(1) DEFAULTNULL,
`payload`blob,
`arrived`timestampNOTNULLDEFAULTCURRENT_TIMESTAMP,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_retain_key`(`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
select* frommqtt_retain wheretopic = "retain";
MySQL消息确认表
mqtt_acked 存储客户端消息确认:
DROPTABLEIFEXISTS`mqtt_acked`;
CREATETABLE`mqtt_acked`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`clientid`varchar(64) DEFAULTNULL,
`topic`varchar(180) DEFAULTNULL,
`mid`int(11) unsignedDEFAULTNULL,
`created`timestampNULLDEFAULTNULL,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_acked_key`(`clientid`,`topic`),
INDEXtopic_index(`id`, `topic`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8MB4;
3)启动服务mysql存储方法一:emqx_ctl plugins load emqx_backend_mysql方法二:通过插件启动对应插件emqx_backend_mysql
4)通过mysql查看客户端发送数据
EMQ配置文档https://docs.emqx.io/enterprise/latest/cn/
7.数据显示通过软件Grafana
1)下载链接:https://grafana.com/grafana/download安装完成后访问服务器地址:3000进入管理界面,此处访问10.5.20.245:3000
2)设置相关参数
3)测试连接mysql是否可以连接
4)创建视图表格
5)编辑表格
6)设置数据库及查询语句。
8.尝试修改上传值
查看传输的数据
9.EMQ平台下发数据到客户端
1)编辑订阅
相关程序参考http://app.ig.inhand.com.cn/
2)填写代码
import logging
import json
defctl_test(topic, payload, wizard_api): #定义订阅主函数
logging.info(topic) #打印订阅主题,假定topic为write/plc
logging.info(payload) #打印订阅数据,假定payload数据为{"method":"setValue", "TagName":"SP1", "TagValue":12.3}
payload = json.loads(payload) #反序列化订阅数据
ifpayload["method"] == "setValue": #检测是否为写入数据
message = {payload["TagName"]:payload["TagValue"]} #定义下发消息,包括下发的变量名称和变量值
wizard_api.write_plc_values(message) #调用wizard_api模块中的write_plc_values方法,将message字典中的数据下发至指定变量
3)EMQ服务器端连接websocket
4)发布信息到客户端,填写对应客户端订阅主题,及修改字段{"method":"setValue", "TagName":"字段名", "TagValue":修改值为}此处修改客户端字段temperature修改值为12.3此处输入{"method":"setValue", "TagName":"temperature", "TagValue":12.3} 点击发布按钮
查看值是否修改(modbus中值和变量列表中值都被修改)
相关日志
扩展 python实现对数据的修改
import paho.mqtt.client as mqtt
# 连接成功回调
defon_connect(client, userdata, flags, rc):
print('Connected with result code 'str(rc))
client.subscribe('to_service')
# 消息接收回调
defon_message(client, userdata, msg):
print(msg.topic " "str(msg.payload))
client = mqtt.Client()
# 指定回调函数
client.on_connect = on_connect
client.on_message = on_message
# 建立连接
client.username_pw_set('用户名','密码')
client.connect('服务器地址', 1883, 60)
# 发布消息修改对象修改值
client.publish('to_client',payload='{"method":"setValue", "TagName":"T1", "TagValue":12}',qos=1)
client.loop_forever()
Python paho-mqtt 模块使用 https://www.jianshu.com/p/ef546f476322
运行程序查看数据变化
其它:
相关启动命令
启动mysql: systemctl start mysqld
启动EMQ: ./emqx/bin/emqx start
启动grafana:service grafana-server start
如果访问服务器IP:端口无法访问的情况
1.检查服务是否开启
2.centos下防火墙开启相关接口
查看命令
开启相关端口例:开启tcp协议端口3306 firewall-cmd --permanent --add-port=3306/tcp
收起阅读 »IG902上传数据到MQTT云平台EMQ(1)
EMQX 是全球领先的开源物联网MQTT 5.0服务器,高并发、低延时,内置强大的规则引擎,支持边缘及云端部署,是5G时代大型物联网应用首选技术方案。IG902边缘计算网关,可以通过MQTT协议接入EMQ服务器,帮助您快速搭建IIoT计算方案。
1. IG902初始化配置
1)开启边缘计算安装相应APP device_supervisor并启动APP。
2)添加设备选择右侧栏目设备监控-》设备列表右上角操作中的“ ”号添加设备。
3)添加变量
2.模拟传感器数据上传:
1)使用软件modbus Slave
2) 添加模拟数据
3)启动数据发送connection-》connect
3.配置设备云服务及搭建EMQ服务器
1)在IG Web端查看接收数据
4.搭建EMQ服务器
1)下载链接 https://www.emqx.io/cn/downloads#enterprise
2)以Linux系统为例注册账户下载免费的license 文件,替换etc目录下的对应文件。
3)安装目录bin目录下启动系统 通过./empx start命令启动。
4)浏览器访问http://服务器地址:18083/#/login 输入用户名和密码用户名admin 密码public登录管理页面
5.EMQ平台配置用户名认证
1)关闭匿名登录
配置匿名认证开关:
# 修改etc/emqx.conf
## Value: true | false
allow_anonymous=false
方式一:
修改etc/plugins文件夹下的
emqx_auth_username.conf文件
# etc/plugins/emqx_auth_username.conf
auth.user.password_hash = plain
## 第一组认证数据
auth.user.1.username = admin
auth.user.1.password = public
## 第二组认证数据
auth.user.2.username = test
auth.user.2.password = test
启动认证服务
./emqx_ctlplugins loademqx_auth_username或在web界面开启服务
重启emqx服务
./bin/emqx stop
./bin/emqx start
查看运行状态
./bin/emqx_ctlstatus
方式二: 1)安装mysql 数据库
mysql安装
检查系统本身是否有预装的mysql
rpm -qa | grep mysql #检查是否安装了mysql
rpm -qa | grep mariadb #检查是否安装了mariadb
rpm -e xxx#一般使用此命令即可卸载成功
rpm -e --nodeps xxx #卸载不成功时使用此命令强制卸载)
安装
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
//下载mysql的rpm的包
yum -y installmysql57-community-release-el7-10.noarch.rpm
yum -y installmysql-community-server
2)创建相关表格:
>mysql –u root –p
createdatabase mqtt;
CREATETABLE`mqtt_user`(
`id`int(11) unsignedNOTNULLAUTO_INCREMENT,
`username`varchar(100) DEFAULTNULL,
`password`varchar(100) DEFAULTNULL,
`salt`varchar(35) DEFAULTNULL,
`is_superuser`tinyint(1) DEFAULT0,
`created`datetime DEFAULTNULL,
PRIMARY KEY(`id`),
UNIQUEKEY`mqtt_username`(`username`)
) ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;
3) 修改文件
# etc/plugins/emqx_auth_mysql.conf
## 服务器地址
auth.mysql.server = 127.0.0.1:3306
## 连接池大小
auth.mysql.pool = 8
auth.mysql.username = mysql数据库名
auth.mysql.password = 数据库密码
auth.mysql.database = mqtt数据库
auth.mysql.query_timeout = 5s
4)启动服务mysql认证服务emqx_ctl plugins load emqx_auth_mysql 或通过web管理端插件开启
注意:如果服务未启动查看报错内容解决。1.配置文件出错(检查后修改)。2.mysql未开启远程管理权限
5)添加测试用户
mysql -u root -p
usemysql;
updateusersethost=’%’ whereuser=‘root’ andhost=‘localhost’;
添加认证用户test密码test
INSERTINTO`mqtt_user`( `username`, `password`, `salt`)
VALUES
('test', ' f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2', NULL);
密码采用sha256加密
6)客户端测试使用软件MQTTX 链接:https://mqttx.app/cn/
7)点击connect,提示连接成功
8)IG连接需要添加用户名密码
其余步骤点击链接 :http://www.m2mlib.com/?/article/303
收起阅读 »IG902连接公有MQTT测试平台
1.访问EMQ 平台的MQTT测试信息页面 网址:https://www.emqx.io/cn/mqtt/public-mqtt5-broker
2.访问IG902的web管理界面,进入“边缘计算”,启动APP。
3.配置设备列表,配置读取的设备协议及寄存器地址。
4.使用Modbus Slave 模拟数据。
5.查看 IG设备读取状态
6.选择“设备管理>>云服务”,配置MQTT连接。
7.配置脚本将数据上传至云端。
1)选择“云服务”,点击发布中的“+”。
2)配置相关的发布设置。
3)配置订阅脚本。
代码:
import logging
import json
def ctl_test(topic, payload, wizard_api): #定义订阅主函数
logging.info(topic) #打印订阅主题,假定topic为write/plc
logging.info(payload) #打印订阅数据,假定payload数据为{"method":"setValue", "TagName":"SP1", "TagValue":12.3}
payload = json.loads(payload) #反序列化订阅数据
if payload["method"] == "setValue": #检测是否为写入数据
message = {payload["TagName"]:payload["TagValue"]} #定义下发消息,包括下发的变量名称和变量值
wizard_api.write_plc_values(message) #调用wizard_api模块中的write_plc_values方法,将message字典中的数据下发至指定变量
相关脚本程序参考http://app.ig.inhand.com.cn/
8.PC端使用MQTT客户端订阅相同的Topic,接收IG设备发送的数据。
1)使用MQTTBox 充当MQTT协议的客户端2。
2)订阅IG设备的发布主题。
3)查看数据
4)测试下发数据到IG。
发布信息到客户端,填写对应客户端订阅主题,及修改字段 {"method":"setValue", "TagName":"字段名", "TagValue":修改值为} 此处修改客户端字段 temperature 修改值为12.3 此处输入{"method":"setValue", "TagName":" temperature ", "TagValue":12.3} 点击发布按钮 .
5)查看数据是否下发成功。注:如果下发未成功,1.确定该变量允许写入。2.根据日志查找其它原因。
IR302配置VRRP
前提:两台IR302固件版本号必须一致.
此次实验固件版本号如图:
网络拓扑如下:
实验目的:当Master 设备出现故障或上行链路出现问题时,切换数据流量到Backup设备,保证业务的稳定运行。
1.配置IR设备连接无线wifi
1)登录设备的web管理界面,选择“网络”->"WLAN模式切换",选择"STA"",点击应用。
2)选择“系统”->"重启系统"。
3)重启系统后进入web管理界面,选择"网络"->"WAN(STA)"->类型选择"动态DHCP",点击"应用"。
4)选择“网络”-> "WLAN客户端",扫描无线选择相应的无线名称,点击"应用"。
5)查看网络连接,选择“状态”->"连接状态”,查看“WAN(STA)”。
2.配置LAN口地址防止IP地址冲突,Master LAN口设置IP为192.168.2.1,Backup LAN口地址设置为192.168.2.2。
)选择“网络”->“LAN”,设置“IP地址”,点击“应用”。
注:Backup设置同Master,先连接无线,后修改LAN口地址为192.168.2.2。
3.配置VRRP
1)选择“网络”->"VRRP",Master设备配置如下.。
注:优先级设置越大,成为Master的几率越高。
由于上行链路采用无线网络,因此此处监视接口为wan(sta),需根据应用场景选择对应接口。
Backup设备配置如下:
4.配置pc端网关为虚拟IP 192.168.2.111,模拟Master设备上行链路故障(设备断开wifi),客户端测试数据通讯。
1)PC端设置
2)PC端测试网络连通。
3)模拟故障发生(断开Master 的wifi连接),测试网络。
路由器如何添加到DM网管平台
1. https://iot.inhand.com.cn 注册账号
2. 在平台添加路由器序列号,进入网关管理页面,点击新增 网关名称可以自定义,序列号在路由器Web状态页面或设备标签SN可以查看。
3. 在路由器开启网管功能,进入 设备远程管理平台
服务类型:设备管理
服务器:iot.inhand.com.cn
注册账号:(填写第一步时候注册时候的账号)
常见问题:
1.保证路由器联网正常,联网可以通过有线、4G、Wi-Fi等方式,如果路由器没有链接互联网,则路由器无法自动登录平台。
DecieManager 端口代理功能如何使用?
https://iot.inhand.com.cn
2. 配置路由器链接平台
添加路由器到平台
3. 配置代理
进入网关列表,点击“远程维护”进入配置页面
点击“新建隧道”
以路由器下联服务器192.168.2.85 的telent端口为例,创建隧道
点击链接按钮创建临时链接
获得链接地址端口号,telnet登录路由器192.168.2.85
收起阅读 »
IR615 实现VPN链路备份
拓扑:
1. 配置IR设备wan口地址
IR615设置wan口地址为192.168.10.10,出口网关为192.168.10.1
2. 配置IR设备连接无线网络参考链接
http://www.m2mlib.com/?/article/294
3. 配置OpenVpn
1)server端设置,确保为同一用户分配到相同的IP地址,便于后期测试。
2)IR设备端配置openvpn,先配置证书管理。选择vpn》证书管理添加证书
3)配置openvpn,选择vpn》Openvpn 配置》选择新增。相关配置如下。
4)查看Openvpn状态
4. 设置完成后查看路由表,可以看到数据通过WAN口路由,并且openvpn已经建立连接。
5. 设置链路备份,设置主接口为WAN口备份接口为WAN(sta)口。选择网络》链路备份
测试:
断开IR615 WAN口网线,查看路由表,可以看到默认路由已经切换到WAN(sta)
OpenServer端查看网络连通性,可以看到模拟故障后丢失三个数据包。
模拟故障恢复,连接wan口网线,查看路由表。可以看到路由已经恢复到wan口。
OpenServer端查看看,可以看到链路恢复丢失四个数据包。
附件说明:
service-config:为服务器端配置文件
user01:为客户端配置文件 收起阅读 »
IR302 IR611 IR615 如何配置网管云平台?
2. 开启设备远程管理平台
注意选择:设备管理 服务器:iot.inhand.com.cn (iot.inhandnetworks.com 为海外平台)
3.复制设备SN (设备标签内也有SN)
添加路由器到平台
4.查看在线状态
收起阅读 »
IR915 连接 cisco L2tp over ipsec
配置
1.AAA配置
aaa new-model //启用AAA
vpdn enable //启用vpdn
crypto isakmp policy 10 //定义isakmp策略,注意路由器会按序号匹配策略所定义的参数,先匹配的先采用,如果一个都没有匹配到,则ipsec第一阶段协商失败
crypto isakmp key 1234 address 0.0.0.0 0.0.0.0 //这里定义预共享密钥,所有地址都使用这个密钥,路由器会寻找一个地址最匹配的预共享密钥,如果还有更精确的地址匹配,则采用其定义的预共享密钥
mode transport //定义模式为传输模式
crypto map mymap //在接口上应用此映射图
5.Virtual-Template配置:
interface Virtual-Template1
ip unnumbered GigabitEthernet0/1 //借用物理接口
ppp authentication pap chap ms-chap ms-chap-v2 //配置验证方式
6.配置内网接口:
interface GigabitEthernet0/0
ip address 192.168.10.1 255.255.255.0
ip nat inside
access-list 11 permit 192.168.10.0 0.0.0.255
ip nat inside source list 11 interface GigabitEthernet0/1 overload
ip route 0.0.0.0 0.0.0.0 113.208.113.33
Ihand 915L配置:
IPSEC 配置:
1.IR915L 采用默认的拨号设置,操作步骤 网络 >> 拨号接口 >> 点击应用并保存。
查看状态 显示如下图则拨号成功。
选择 VPN 》 IPSEC
选择 VPN >>L2T
windows下OpenVPN搭建
OpenVPN简介 OpenVPN是一个用于创建虚拟专用网络(Virtual Private Network)加密通道的免费开源软件。使用OpenVPN可以方便地在家庭、办公场所、住宿酒店等不同网络访问场所之间搭建类似于局域网的专用网络通道。OpenVPN使用方便,运行性能优秀,支持Solaris、Linux 2.2 (Linux 2.2 表示Linux 2.2及以上版本,下同)、OpenBSD 3.0 、FreeBSD、NetBSD、Mac OS X、Android和Windows 2000 的操作系统,并且采用了高强度的数据加密,再加上其开源免费的特性,使得OpenVPN成为中小型企业及个人的VPN首选产品。
使用OpenVPN配合特定的代理服务器,可用于访问Youtube、FaceBook、Twitter等受限网站,也可用于突破公司的网络限制。由于OpenVPN支持UDP协议,还可以配合HTTP代理(HTTP Proxy)使用,使得只要是能够打开网站或上QQ的地方,就可以访问外部的任何网站或其他网络资源。
OpenVPN的官方最新版本是OpenVPN 2.3.0(发布于2013年01月08日),你可以点击此处查看OpenVPN 2.3.0的更新日志内容。
OpenVPN下载
下载链接:
https://www.softpedia.com/get/Security/Security-Related/OpenVPN.shtml
OpenVPN安装
在OpenVPN 2.3.0中,默认是不安装easy-rsa(一个加密证书生成程序)的,因此,我们必须手动勾选如下图所示的两个选项(在OpenVPN 2.2中是默认选中的)。一路Next(如果询问是否安装TAP-Win32驱动程序时,请选择「仍然继续」),就安装成功了。
OpenVPN的配置
OpenVPN的配置工作主要分为如下两步:
• 第一步,创建加密证书和私钥,其中包括服务器端和客户端都要用到的核心CA证书和私钥,服务器端自身的加密证书(即公钥)和私钥,以及每个客户端对应的加密证书和私钥。
• 第二步,为服务器和客户端编写对应的配置文件,然后将其与第一步中生成的相应证书、私钥放在OpenVPN安装目录的config文件夹下。
OpenVPN支持基于加密证书的双向认证。在OpenVPN中,不管是服务器还是客户端,所有的证书和私钥都需要由服务器端生成,客户端要先获得服务器端分配给它的加密证书和密钥才能成功连接。这与使用网上银行有些类似,大多数银行网站都会要求你先下载并安装一个数字证书,才允许你进行网上付款或其他操作。
下面我们开始具体配置:
第一步:创建加密证书和私钥
1、修改OpenVPN服务器端的vars.bat.sample文件(客户端的无需做任何修改)。
使用记事本或其他文本编辑工具打开OpenVPN安装目录\easy-rsa\vars.bat.sample文件,如下图所示:
由于稍后给客户端生成对应加密证书和私钥时,程序会要求我们输入一些注册信息。如果你需要配置多个客户端,并且许多信息都相同(比如国家、省市、地址、公司名称等)你还可以修改vars.bat.sample文件后面的一些相关变量的默认值,这样在稍后生成客户端证书的时候,如果该信息项不输入就会采用默认值。
2、运行DOS命令,初始化执行环境。
在作为服务器端的电脑A上打开DOS命令窗口,并进入到%OpenVPN的安装目录%\easy-rsa目录。笔者的服务器端安装目录是D:\OpenVPN,因此这里进入D:\OpenVPN\easy-rsa。
然后依次输入并执行以下命令(括号内的是笔者附加的注释):
init-config(初始化配置,将vars.bat.sample文件的内容复制到vars.bat。实际上,你也可以直接双击执行easy-rsa目录下的init-config.bat文件来代替这一步。)
vars(设置相应的局部环境变量,就是我们在vars.bat.sample文件中设置的内容)
clean-all(相关设置和清理工作)
3、创建CA根证书:build-ca
如图所示,在build-ca的时候需要输入一些注册信息。在输入信息的时候,如果你不输入任何信息,就表示采用默认值(前面中的内容就是默认值);如果你输入.,则表示当前信息项留空白。值得注意的是,上图中红色矩形框中的OpenVPN_CA是证书的通用名称(Common Name),相当于我们常说的账号,你也可以自行输入其他名称。(ca证书中显示颁发给谁)
4、创建服务器端证书:build-key-server server
如上图所示,命令中的参数server指的是生成的证书文件名称,你可以按照自己的需要进行修改,不过后面的Common Name也应保持一致。第二个红色矩形框中是输入的密码,你也可以根据意愿自行输入。最后程序会询问你是否注册并提交证书,两次均输入y即可。(生成server.crt server.key server公钥私钥)
5、创建迪菲·赫尔曼密钥:build-dh
迪菲·赫尔曼密钥交换(Diffie–Hellman key exchange,简称「D–H」) 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。(生成dh2048.pem)
6、创建客户端证书:build-key client
如上图所示,命令中的参数client表示生成的证书文件名称,你可以按照自己的需要进行修改,不过后面的Common Name也应保持一致。第二个红色矩形框中是输入的密码,你也可以根据意愿自行输入。最后程序会询问你是否注册并提交证书,两次均输入y即可。
如果你想创建多个不同的客户端证书,只需要重复此步骤即可。切记,Common Name不要重复,这是OpenVPN用来区分不同客户端的关键所在。(生成client.crt
client.key client 公钥私钥)
7、生成ta.key:openvpn --genkey --secret keys/ta.key
生成的ta.key主要用于防御DoS、UDP淹没等恶意攻击。命令中的第3个参数keys/ta.key表示生成的文件路径(含文件名)。
创建完证书后,我们会发现easy-rsa目录下多了一个keys文件夹。现在我们将keys文件夹中对应的文件复制到OpenVPN服务器或客户端的安装目录的config文件夹下。
服务器端config目录需要的文件包括:
ca.crt客户端config目录需要的文件包括:
ca.key(核心CA证书和私钥)
dh1024.pem(如果最初的变量KEY_SIZE设为2048,这里就是dh2048.pem)
server.crt 公钥
server.key(私钥 名称server根据个人设置可能有所不同)
ta.key(名称也可自行设置,如果不需要防御攻击,可以不创建或复制此文件)
ca.crt
client.crt
client.key(名称client根据个人设置可能有所不同)
ta.key(如果服务器端具备此文件,客户端也应具备)
第二步:编写对应的配置文件
上面我们已经创建了OpenVPN配置所需要的各种证书和私钥,现在我们开始为服务器和客户端编写对应的配置文件。
对于一个刚刚接触OpenVPN的人来说,我们应该配置些什么呢,又该从哪里入手呢?别着急,OpenVPN已经考虑到了这一点。在OpenVPN的安装目录的sample-config文件夹中存放有3个示例模板文件:server.ovpn、client.ovpn、sample.ovpn。其中,server.ovpn是服务器的配置模板,client.ovpn是客户端的配置模板(sample.ovpn也可用作客户端配置模板,不过配置比较简单,不够全面。按照官方的说法,client.ovpn可用于连接具有多个客户端的服务器端配置文件)。
现在,我们就复制server.ovpn到服务器的config目录,client.ovpn到客户端的config目录,并在此基础上进行修改。在OpenVPN的配置文件中,前面带「#」或「;」的表示注释内容。
1、 编辑服务器端配置文件。
server.ovpn的英文注释中已经比较清楚地解释了每一个设置的作用,笔者对配置文件的英文注释作了全文翻译,你可以点击查看server.ovpn的配置内容详解,在此不再赘述,下面只提取所有用到的命令。
local 192.168.0.2 #指定监听的本机IP(因为有些计算机具备多个IP地址),该命令是可选的,默认监听所有IP地址。
port 1194 #指定监听的本机端口号
proto udp #指定采用的传输协议,可以选择tcp或udp
dev tun #指定创建的通信隧道类型,可选tun或tap
ca ca.crt #指定CA证书的文件路径
cert server.crt #指定服务器端的证书文件路径
key server.key #指定服务器端的私钥文件路径
dh dh1024.pem #指定迪菲赫尔曼参数的文件路径
server 10.0.0.0 255.255.255.0 #指定虚拟局域网占用的IP地址段和子网掩码,此处配置的服务器自身占用10.0.0.1。
ifconfig-pool-persist ipp.txt #服务器自动给客户端分配IP后,客户端下次连接时,仍然采用上次的IP地址(第一次分配的IP保存在ipp.txt中,下一次分配其中保存的IP)。
tls-auth ta.key 0 #开启TLS,使用ta.key防御攻击。服务器端的第二个参数值为0,客户端的为1。
keepalive 10 120 #每10秒ping一次,连接超时时间设为120秒。
comp-lzo #开启VPN连接压缩,如果服务器端开启,客户端也必须开启
client-to-client #允许客户端与客户端相连接,默认情况下客户端只能与服务器相连接
persist-key
persist-tun #持久化选项可以尽量避免访问在重启时由于用户权限降低而无法访问的某些资源。
status openvpn-status.log #指定记录OpenVPN状态的日志文件路径
verb 3 #指定日志文件的记录详细级别,可选0-9,等级越高日志内容越详细
修改注册表:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 将IPEnableRouter改为1
关闭防火墙或将1194端口加入到防火墙允许通过的端口中去
2、 编辑客户端配置文件。
client.ovpn中所有用到的命令如下:
client #指定当前VPN是客户端修改完毕并保存之后,服务器端的OpenVPN安装目录的config文件夹下服务端文件包含如下:
dev tun #必须与服务器端的保持一致
proto udp #必须与服务器端的保持一致
remote 192.168.0.2 1194 #指定连接的远程服务器的实际IP地址和端口号
resolv-retry infinite #断线自动重新连接,在网络不稳定的情况下(例如:笔记本电脑无线网络)非常有用。
nobind #不绑定特定的本地端口号
persist-key
persist-tun
ca ca.crt #指定CA证书的文件路径
cert client.crt #指定当前客户端的证书文件路径
key client.key #指定当前客户端的私钥文件路径
ns-cert-type server #指定采用服务器校验方式
tls-auth ta.key 1 #如果服务器设置了防御DoS等攻击的ta.key,则必须每个客户端开启;如果未设置,则注释掉这一行;
comp-lzo #与服务器保持一致
verb 3 #指定日志文件的记录详细级别,可选0-9,等级越高日志内容越详细
客户端)的OpenVPN安装目录的config文件夹下包含如下文件:
双击OpenVPN安装时在桌面上生成的图标,此时在任务栏的右下角将会出现如下图所示的红色小图标,右键该图标,点击connect:
连接成功后变为绿色。
参考链接:
http://www.fyluo.com/m/?post=198
http://blog.joylau.cn/2020/05/28/OpenVPN-Config/
收起阅读 »
InDTU对接力控ForceControl V7.2
力控通用监控组态软件ForceControl是一款通用型的人机可视化监控组态软件,是国内率先以分布式实时数据库技术作为内核的自动化软件产品。软件提供易用的配置工具和行业套件、良好的用户开发界面和简捷的工程实现方法,支持和国内外各种工业控制厂家的设备进行网络通讯,提供软、硬件全部接口实现与第三方的软、硬件系统集成,同时可与力控产品家族中的其他产品无缝集成,实现工业互联。软件广泛应用于市政、水利、环保、装备制造、石油、化工、国防、冶金、煤矿、配电、新能源、制药、交通、教育等行业,在20年应用基础上不断进行技术创新,产品丰富的采集驱动、行业监控插件及广泛的应用实践极大的提升了客户投资回报率。
本文主要的内容是InDTU配置位DCTCP的连接方式,连接力控ForceControl V7.2的配置。DTU下端连接Modbus RTU 协议的通讯协议设备,通过4G网络通讯。安装力控的服务器需要具备公网IP地址。
DTU配置
力控安装和新建项目
新建IO设备,驱动厂商选择映翰通。
打开数据库新建数据位
初使启动项目
运行项目
电脑运行modbus slave 程序,模拟modbus客户端设备。串口连接至InDTU串口1业务端口。
模拟控制:力控修改数据下发数据
InDTU连接力控6.1 请查看附件。 收起阅读 »
InDTU对接力控标准网桥协议
1. 标准TCP/IPServer(单端口)
登陆包(共14字节):报文头两字节(0xAA 0x01)+11字节长度的终端ID号(ASCII)+报文尾一字节(0x0D)
数据包:透明传送,不带ID。
DeviceManager 服务地址变更
为了规范国内平台的域名地址,Device Manager国内平台域名地址变更为https://iot.inhand.com.cn/,原有的地址:https://c.inhandcloud.com/也可以继续使用。
因设备固件版本的差异会导致客户在使用上有区别,这块的操作在《DM用户手册》(手册见附件)有解释和使用说明。
海外平台地址仍旧为:https://iot.inhandnetworks.com/,没有变化。
2、Device Manager平台将不再支持ovdp协议接入设备。
因平台技术升级,DM计划在4月24日后不再支持ovdp协议接入设备。对此有几项注意事项:
1)只支持ovdp的DTU设备将不能接入新DM平台,因此旧设备管理平台不会停服,以继续支持ovdp设备的接入管理。
旧设备管理平台是指:https://c.inhand.com.cn/(国内平台);http://g.inhandnetworks.com/(海外平台)
2)既支持ovdp也支持mqtt的路由器网关设备在使用DM平台只能用MQTT接入,因此大家在指导客户使用时要明确告知用MQTT的入口接入。 收起阅读 »
InConnct 中国服务器白名单
1.路由器登陆MQTT协议:54.222.145.115 TCP 1883、8883
2. 路由器InConnct 建立端口 54.222.145.115 UDP协议端口需要登陆用户在平台的账号内查看,如下图用户所使用的端口为DUP 31247
3.域名 https://ics.inhandiot.com ap.ics.inhandiot.com
4. NPT服务:认证需要做时间同步 服务器IP 114.80.81.1 UDP 123
5. 根据运营商要求,在路由器内将域名和IP进行映射
收起阅读 »
How to change DTU to AT mode?
Enter Advanced config mode:
Enter Multi-center mechanism:
Change Max reconnect interval vaule to : troy
Save config,reboot DTU.
Troy mode SIM Light and STATUS Light flash alternately.
Now you can sand AT command through COM 1.
Exit at mode. After entering at mode, the serial port is always connected to the module, so it is unable to log in DTU directly with configuration tool to read / download configuration and other operations. If you want to connect DTU with configuration tool, you need to connect to COM2; or connect PC with serial port, press ESC key of keyboard / send exit with serial port tool.
退出AT模式。进入AT模式后,串口一直连模块,无法直接用配置工具登陆DTU读取/下载配置等操作。如果想用配置工具连DTU需要接到串口2;或者用串口一接pc,按键盘的ESC键/用串口工具发送exit. 收起阅读 »
IR600(32M)怎样从c.inhand.com.cn(DM4.0)平台迁移c.inhandcloud.com(DM5.0)平台
1.首先,登陆c.inhand.com.cn云平台查看在线的IR600系列路由器固件版本,版本为V2.3.0.r4724及之后的版本可以不升级固件,之前的版本请升级固件,建议升级固件版本为V2.3.0.r4870
IR611S(32M)升级固件可以通过平台直接升级,单台升级请进入“网关管理”>>“设备升级”界面后,导入InRouter6XX-S-V2.3.0.r4870.bin升级文件,上传文件成功后保存,等待任务完成
批量升级时,在“网关管理”图标旁,点击“设备批量升级”后,选择好对应的机型,升级方式和单台升级一致
IR615S(32M)属于新推出机型,需要借助设备快线进行升级。维护通道连接成功后,通过路由器临时获取的虚拟ip地址远程登陆IR600的web界面,进入“系统”>>“系统升级”,选择对应固件升级后重启
2.完成升级后,可以查看平台固件版本已升级为对应版本
3.继续连接设备快线,远程修改完成升级的IR611S或IR615S的web配置
进入“服务”>>“网管平台(Device Manager),选择禁用后应用。注意:进行此操作前,请保证设备快线不要断线
然后,进入“服务”>>”设备远程监控平台“,启用选择服务器平台c.inhandcloud.com,填写自己新平台账号,应用保存配置,如果没有账号可自己进行注册。
4.此时,登陆c.inhandcloud.com新平台进行查看,使用这种方式IR600可以在新平台自动上线,上线成功表明这台设备已完成迁移
5.要对迁移设备进行名称修改,可以点击设备后面的编辑按钮完成修改
6.在新平台对设备进行远程管理非常方便,点击设备后面的web管理可以直接远程登陆IR600,无需使用设备快线了
固件版本:
收起阅读 »
IR912怎样从DM4.0平台(c.inhand.com.cn)平台迁移到DM5.0(iot.inhand.com.cn)平台
1.登陆c.inhand.com.cn云平台查看在线的IR900系列路由器,为了能在新平台对设备更好进行管理,请对设备固件进行一次升级,升级版本为1.0.0.r11700(请下载附件)。如果设备数量不大,可单独对每台设备进行升级,设备数量大可以选择批量升级方式,建议在网络状况良好的时段进行升级操作。
勾选要升级的IR900,进入“网关管理”>>“设备升级”界面后,导入IR9-V1.0.0.r11700.bin升级文件,上传文件成功后保存即可,等待任务完成。
设备批量升级时,在“网关管理”图标旁,点击“设备批量升级”后,选择好对应的机型,升级方式和单独升级一致
2.固件升级成功后,可以查看到设备已升级为对应版本号。
3.这时,需要使用c平台设备快线功能,维护通道连接成功后,通过路由器临时获取的虚拟ip地址登陆IR900路由器web界面进行配置修改。
进入“管理”>>“设备远程管理平台”后,将“设备远程管理平台(Legacy)”功能勾选取消,应用并保存。注意:进行此操作前,请务必保证设备快线不要断线
然后,在“设备远程管理平台”填写自己新平台账号,应用并保存,如果没有账号可以自行注册
4.此时,登陆c.inhandcloud.com新平台进行查看,使用这种方式IR900可以在新平台自动上线,上线成功表明这台设备已完成平台迁移。
5.要对迁移设备进行名称修改,可以点击设备后面的编辑按钮完成修改
6.在新平台对设备进行远程管理非常方便,点击设备后面的web管理,可以直接远程登陆设备进行配置修改
固件版本:
收起阅读 »
IR615怎样从c.inhand.com.cn平台迁移到InConnect平台(DT远程维护切换InConnect服务)
InConnect平台介绍 点击查看
若您的IR600系列路由器使用的是 v2.2.XXXX 版本的则法进行设备迁移。❗️ 仅支持 v2.3.xxxx软件版本迁移。
1、登录到网关(之前在现场的通过设备快线可以远程登录也可以远程切换)确认固件版本。
状态>>系统状态
固件版本建议大于2.3.0.r4724 (如果C平台设备在线,可以使用批量的方式从平台下发升级固件任务)
2、注册InConnect账号
登录ics.inhand.com.cn按照步骤注册。
3、添加InConnect配置
服务>>设备远程管理平台
服务器地址:ics.inhandiot.com
注册账号:XXX@XX.com(第二步注册的账号)
4、登录ics.inhand.com.cn,根据序列号添加网关:
添加设备:
下发运行配置:
5、配置电脑连接:
下载安装OpenVPN客户端:
下载配置文件:
导入配置文件:
测试连接以及测试业务:
测试时需要使用虚地址来进行访问配置
6、关闭OVDP:
迁移成功 收起阅读 »
IR600 AP-WDS中继模式
一、设置AP:
1、设置LAN口:
设置LAN口地址设置成自己需要的地址(与PLC、HMI等在一个网段)。
网络>>LAN端口:
2、设置AP:
上一步执行完后需要通过设定后的地址来访问路由器。
网络>>WLAN模式切换--选成AP模式
如果配置发生改变则需要重启设备。
配置AP参数:
网络>>WLAN端口:
二、设置中继:
中继建议使用WAN口登陆,避免更改模式后登录不上。
1、先启用WNA口:
网络>> WAN端口--该为启用并且设定为不用地址,最好于本项目无关地址。
2、使用WAN口登陆后进行下面操作:
设定AP工作模式:
网络>>AP模式切换--设定为AP模式
3、设定AP参数以及WPS参数:
AP参数可根据需求设置,可以设置为何上边AP一致也可隐藏SSID,根据需求设置
WDS参数设置,可以通过扫描,扫描到对应的SSID进行连接,注意要填写正确的加密方式和密码。
4、设定固定地址
为了方便管理可以设置固定的IP地址
设置好后就可以连接测试了!
收起阅读 »
IR900怎样从shebeiyun.net平台迁移到InConnect平台(远程维护)
1、登录到网关(之前在现场的去过设备快线可以远程登录也可以远程切换)确认固件版本,SDK版本。
管理>>系统-状态
固件版本建议大于1.0.0.r10406(如果设备云平台设备在线,可以使用批量的方式从平台下发升级固件任务)
APP>>APP-运行状态
SDK版本:1.6.0
2、注册InConnect账号
登录ics.inhand.com.cn按照步骤注册。
3、添加InConnect配置
管理>>设备远程监控平台-设备远程监控平台
服务器地址:ics.inhandiot.com
注册账号:XXX@XX.com(第二步注册的账号)
4、登录ics.inhand.com.cn,根据序列号添加网关:
添加设备:
下发运行配置:
5、配置电脑连接:
下载安装OpenVPN客户端:
下载配置文件:
导入配置文件:
测试连接以及测试业务:
6、关闭OVDP:
连接现场设备需要通过虚地址来进行访问!测试没问题再进行下一步。
迁移成功
收起阅读 »
IR900怎样从DM4.0 平台迁移到InConnect平台(DT远程维护切换为InConct服务)
InConnect平台介绍 点击查看
1、登录到网关(之前在现场的通过设备快线可以远程登录也可以远程操作切换)确认固件版本,SDK版本。
管理>>系统-状态
固件版本建议大于1.0.0.r10406(如果C平台设备在线,可以使用批量的方式从平台下发升级固件任务)
APP>>APP-运行状态
SDK版本:1.6.0
2、注册InConnect账号
登录 https://ics.inhandiot.com/ 按照步骤注册。
3、添加InConnect配置
管理>>设备远程监控平台-设备远程监控平台
服务器地址:https://ics.inhandiot.com/
注册账号:XXX@XX.com(第二步注册的账号)
4、登录ics.inhand,根据序列号添加网关:
添加设备:
点击下发运行配置:
5、配置电脑连接:
下载安装OpenVPN客户端:
下载配置文件:
导入配置文件:
6、测试连接以及测试业务:
测试连接现场设备的时候切记使用虚拟IP进行访问。
7、关闭OVDP:
迁移成功 收起阅读 »
Device Sense 计划停服公告
1、停服原因
1)平台更新;
2)释放服务器资源,减少运维成本
2、停服时间
国外DS平台(http://www.devicenetworks.io/):计划2020年1月1日停服
国内DS平台(http://www.shebeiyun.net/):计划2020年3月1日停服
3、客户后续安排
1)原主要使用DS网管服务的客户建议使用新Device Manager平台
2)原主要使用DS远程维护(DT)功能的客户建议使用InConnect平台
3)原主要使用DS其他功能的停止DS的服务
DS可以提供私有化部署方案。请联系请联系徐工程师:xuyan@inhand.com.cn
收起阅读 »
怎样通过DM平台管理InRouter/InGateway?
2. InRouter & InGateway 在“服务-设备监控平台”中服务器配置为 http://c.inhandcloud.com/ 注册账号填写在平台注册的账号信息:
* InRouter & InGateway 必须在已经联网的状态下, LTE4G网络或有线网络
3.InRouter & InGateway会被添加到平台
4.在平台设备列表里,点击“web管理” 即可以在新的弹出页面中,远程登陆管理页面:
收起阅读 »
InRouter 与 SINEMA Remote Connect 建立连接
• TeleService 通过交换机网络,移动通信或 internet 对设备和工厂的远程诊断和维护
• TeleService 非常有助于节省维护工作的差旅和人员成本,提高设备和工厂的可用性
• TeleService 基于OpenVPN技术实现
InRouter 与 SINEMA Remote Connect 建立连接如下
1. 创建设备
登陆 SINEMA Remote Connect Server 在Device 页面下创建一个Device:
创建一个名称为InRouter001 的设备,设备名称可以自定义:
选择OpenVPN 协议:
添加路由器LAN的子网信息(路由器LAN地址可以在InRouter LAN进行定义):
将设InRouter001添加到Station组:
设置InRouter001 的密码,该密码也作为路由器中的证书保护密钥:
设备创建完毕,点击 Finish 按钮。
2. 下载并安装证书
在Device 列表中,下载PKCS#12格式证书:
登陆InRouter中,默认登陆IP http://192.168.2.1 用户名 adm 密码 123456
在配置之前,保证路由器已经可以正常上网,并可以ping 通公网IP:
在VPN-证书管理页面中,配置并保存证书保护密钥,也就是在SINEMA Remote Connect中 InRouter001 的密码:
将下载的PKCS#12格式证书文件导入路由器中:
导入成功后,原来 导出共钥证书/私钥证书/CA证书 由灰色字体变为黑色字体
3. 创建并测试OpenVPN客户端
创建OpenVPN客户端:
配置服务器IP地址、端口号,点击新增
服务器端口号可以在 Security VPN basic settings中查看:
配置OpvnVPN客户端参数,认证类型使用数字证书方式,加密算法、HMAC需要与Server端一致:
配置完毕后点击应用并保存按钮,建议重新打开配置页面,检查加密算法、HMAC等参数。
3. 连接正常情况的状态以及测试
以LAN接口IP 192.1168.2.1 为源地址(-I 192.168.2.1),ping Server LAN地址 172.29.0.1
Server 端 Device 列表设备上线状态:
当下端PLC只配置IP,不配置网关的情况下,如果通过SNAT将源地址也就是隧道地址转换为LAN接口地址可以根据以下方式配置:
建立一条ACL,将源地址为172.30.0.0/0.0.255.255数据包匹配出来:
新建一条SNAT,将源地址ALC 111 的地址转换为以LAN端口也就是VLAN1 接口为源地址:
此方式代替西门子路由器中的:IP Masquerading 功能。
收起阅读 »
办公软件
- 修图软件:推荐 GIMP https://www.gimp.org/downloads 支持持 GNU/Linux | OS X | Microsoft Windows 完美替代PS;
- 绘制拓扑图:Apache OpenOffice包含文本文档、电子表格、演示文稿、绘图、数据库等。 其中绘图工具可以替代 Visio;
- 杀毒软件:Win10 推荐使用自带 Defeder ,win7系统推荐安装金山杀毒软件;
- 邮箱客户端 Foxmail
- SSH登陆软件: 推荐使用putty Windows版下载地址:http://www.hostbuf.com/downloads/finalshell_install.exe
- macOS版下载地址:http://www.hostbuf.com/downloads/finalshell_install.pkg
- JetBrians 系列软件请使用社区版本。
- 思维导图软件推荐使用百度脑图:https://naotu.baidu.com/
收起阅读 »
如何通过InConnect云服务实现远程上下载西门子PLC程序
1. https://ics.inhandiot.com/ 注册账号
2. 电脑安装客户端软件,下载电脑端“OpenVPN配置文件”并导入该配置;
3. 在平台添加InRouter的序列号,并在路由器下添加PLC的IP地址。
4. 路由器可以上网之后,配置路由器链接平台;
使用OpenVPN GUI建立维护通道后,打开博图V13软件创建项目并选择相应的PLC(本次使用S7-300系列PLC)。
上传PLC程序:
1.设置PLC的以太网参数,将IP地址修改为对应的虚拟IP(本次测试使用的虚拟IP为10.16.2.1)。
2.点击“转至在线”,按下图所示配置扫描参数,随后将扫描到的PLC转至在线。
3.选择需要上传程序的PLC并点击“从设备上传”。
4.勾选继续,点击从设备上传。等待完成程序上传。
5.完成PLC程序上传。
下载PLC程序:
1.编写或修改好PLC程序后,配置PLC的IP地址为真实IP地址(如192.168.2.222)。
2.选择需要更新程序的PLC,点击“下载到设备”。
3.在“扩展的下载到设备”页面中的“目标子网中的兼容设备”中设定设备的访问地址为虚拟IP(本次测试使用的虚拟IP为10.16.2.1)。
4.点击其他任一位置使设定的地址生效,随后选择搜索到的PLC并点击下载。
5.按照下载流程下载程序并启动PLC,完成PLC程序下载。
收起阅读 »