用端口復(fù)用和Python做內(nèi)網(wǎng)穿透的想法有什么?
謝邀。Python做內(nèi)網(wǎng)穿透的很少,什么叫做內(nèi)網(wǎng)穿透,一般而言,從外網(wǎng)是沒有辦法直接訪問到內(nèi)網(wǎng)的,一般我們所說的內(nèi)網(wǎng)是局域網(wǎng),局域網(wǎng)和互聯(lián)網(wǎng)不是一個(gè)網(wǎng)段,何況互聯(lián)網(wǎng)和內(nèi)網(wǎng)之間還有防火墻存在。
那么如何做內(nèi)網(wǎng)穿透呢?一般我們用反向代理,通過建立代理服務(wù)器,內(nèi)網(wǎng)服務(wù)器訪問代理服務(wù)器,建立通道,外網(wǎng)服務(wù)器訪問代理,然后代理反射到內(nèi)網(wǎng)給外網(wǎng)服務(wù)器通信和訪問資源。簡而言之就是弄個(gè)中間人,左右人可通過中間人溝通。
Github上有一個(gè)用Python做內(nèi)網(wǎng)穿透的代碼,名叫passbytcp。地址為:https://github.com/mxdg/passbytcp。
具體功能通過外網(wǎng)vps在任意地方訪問沒有公網(wǎng)獨(dú)立ip的電腦,樹莓派等等;
使內(nèi)網(wǎng)網(wǎng)站能被公網(wǎng)訪問;
實(shí)現(xiàn)域名訪問內(nèi)網(wǎng)指定網(wǎng)站給域名訪問的用戶進(jìn)行簡單http授權(quán)驗(yàn)證;
方便在本地調(diào)試支付接口。
配置說明服務(wù)端需要python3版本;
客戶端可以使用python2和3版本【如果python2使用有問題,請用python3啟動(dòng)客戶端】;
服務(wù)端配置文件config.json;
*server文件夾是公網(wǎng)服務(wù)器使用的;
*slaver文件夾是內(nèi)網(wǎng)服務(wù)器使用的。
運(yùn)行程序配置好服務(wù)器config.json后 服務(wù)在進(jìn)入server文件夾,執(zhí)行
客戶端進(jìn)入slaver文件夾,執(zhí)行