Penetración de la red / mapeo de la red / operación y mantenimiento remotos ¿Cómo realiza la red inteligente en la nube EasyNTS la función de control remoto a través de la penetración de 23 puertos?

EasyNTS es un dispositivo de puerta de enlace de nube de video desarrollado por el equipo de video de Tsingsee. El terminal de nube de EasyNTS se implementa en el sitio del equipo. La puerta de enlace de nube de EasyNTS se ejecuta en Alibaba Cloud / Tencent Cloud / nube autoconstruida. Puede controlar todas las condiciones de red de dispositivos en el sitio en cualquier momento y en cualquier lugar. Depuración y resolución de problemas remotos, lo que reduce en gran medida los costos de operación y mantenimiento en el sitio.

NTS.png

Hemos agregado la función de control remoto en el desarrollo de EasyNTS. Este artículo le dará una breve introducción a esta función.

En la puerta de enlace en la nube EasyNTS, hacer clic en la consola equivale a un comando telnet para iniciar sesión de forma remota en el dispositivo para el control. Pero si el puerto 23 del dispositivo no se penetra antes del inicio de sesión remoto, después de hacer clic en la consola, informará el error de que el puerto no está configurado.

1393.png

¿Cómo confirmar si el puerto 23 penetra? Diseñamos una serie de códigos. Después de penetrar el puerto 23 en el lado del dispositivo, verifique si hay un puerto de penetración del código. Si lo hay, comenzará a formar una conexión tcp larga con el lado del dispositivo para el control remoto.

El código compilado es el siguiente:

tpc.DeviceId = form.ID
tpc.LocalIp = "127.0.0.1"
tpc.LocalPort = "23"
tpc.Type = "Tcp"
dao.DB().Where(tpc).First(&tpc)
if tpc.RemotePort == consts.EmptyString {
   AbortWithString(c, http.StatusBadRequest, consts.MsgErrorNeedTunnelPort)
   return
}
var ntst do.TNtsT
ntst.ID = tpc.NtsTId
dao.DB().Where(ntst).First(&ntst)
if ntst.Addr == consts.EmptyString {
   AbortWithString(c, http.StatusBadRequest, consts.MsgNoNTST)
   return
}
conn, err := gote.Dial("tcp", fmt.Sprintf("%s:%s", ntst.Addr, tpc.RemotePort))
if err != nil {
   errUnmarshal = do.JsonResponse{HasError: true, Message: do.SIGN_IN_FORM_TYPE_ERROR_VALID}
} else {
   conn.Close()
   errUnmarshal = do.JsonResponse{HasError: false, Addition: "telnet", UserName: device.RemoteUser, Port: estring.ParseInt(tpc.RemotePort)}
}

La siguiente es la interfaz del dispositivo que penetra con éxito en el puerto 23:

1394.png

Más sobre EasyNTS Cloud Gateway

La función de la puerta de enlace en la nube EasyNTS es conectar la red interna IP: Puerto del dispositivo al servidor de la puerta de enlace en la nube EasyNTS cuando el dispositivo de la red interna no tiene una dirección IP fija en la red pública para formar la red pública de Internet IP: Puerto, que facilita la apertura y llamada de las capacidades del dispositivo .

NTS2.png

En la actualidad, ya tenemos algunos casos de uso de la puerta de enlace en la nube EasyNTS para la operación y el mantenimiento remotos y la administración de la tienda. Si está interesado, comuníquese con nosotros para obtener más detalles. Para obtener soluciones relacionadas con el video, puede visitar TSINGSEE Qingxi Video . Si tiene alguna necesidad o pregunta, bienvenido ¡Contáctanos en cualquier momento!

Supongo que te gusta

Origin blog.csdn.net/EasyNTS/article/details/108347340
Recomendado
Clasificación