您好,登錄后才能下訂單哦!
EasyNTS智能云組網是如何通過23端口穿透實現遠程控制,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
EasyNTS是TSINGSEE青犀視頻團隊研發的視頻上云網關設備,在設備現場布置EasyNTS云終端,EasyNTS上云網關運行于阿里云/騰訊云/自建云,隨時隨地管控所有現場的設備網絡情況,通過遠程調試和排查問題,極大地降低現場的運維成本。
TSINGSEE青犀視頻在EasyNTS的研發中,加入了遠程控制功能,本文就給大家簡單介紹下這個功能。
在EasyNTS上云網關內,點擊控制臺,就相當于telnet命令,即可遠程登錄設備端進行操控。但是如果在遠程登錄之前,沒有將設備端的23端口穿透,那么點擊控制臺后,就會報端口未配置的錯誤。
如何確認23端口是否穿透?我們設計了一串代碼,在將設備端的23端口穿透之后,從代碼中驗證是否有穿透的端口,如果有就開始和設備端形成tcp的長連接,進行遠程控制。
編譯代碼如下:
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)} }
以下為設備端成功穿透23端口的界面:
EasyNTS上云網關的作用是在內網設備無公網固定IP地址時,將設備內網IP: Port組網到EasyNTS上云網關服務器,形成互聯網公網IP:Port,便于設備能力的開放和調用。
看完上述內容,你們掌握EasyNTS智能云組網是如何通過23端口穿透實現遠程控制的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。