forwardPortGo 語言的端口轉(zhuǎn)發(fā)工具
forwardPort
端口轉(zhuǎn)發(fā)/映射工具 forward for port data
編譯:
配置好你的GO開發(fā)環(huán)境,推薦GO 1.7以上;
執(zhí)行build.dat,會(huì)自動(dòng)編譯出linux和windows的執(zhí)行程序,文件名分別為:“forwardPort”、“forwardPort.exe”
為了方便大家使用,我將已編譯好的二進(jìn)制文件也提供給大家:
Windows-64位:
https://github.com/tavenli/forwardPort/releases/download/1.0/forwardPort-win-64.zip
Linux-64位:
https://github.com/tavenli/forwardPort/releases/download/1.0/forwardPort-linux-64.zip
場景1:
工作中,有時(shí)候會(huì)碰到A服務(wù)器可以訪問B服務(wù)器,但是你只能訪問到A服務(wù)器,B服務(wù)器限制了只有A服務(wù)器能訪問它;如果你需要訪問B服務(wù)器,必須通過A服務(wù)器跳一次。
forwardPort工具就是可以讓你在A服務(wù)器上開啟一個(gè)端口,當(dāng)你訪問A服務(wù)器上的端口時(shí),實(shí)際訪問的是B服務(wù)器的某個(gè)端口。
操作步驟:
A服務(wù)器IP:10.10.1.100
B服務(wù)器IP:10.11.2.20
1、在A服務(wù)器上執(zhí)行:
forwardPort.exe
(注:linux系統(tǒng)執(zhí)行 ./forwardPort)
2、執(zhí)行成功后,默認(rèn)監(jiān)聽8000端口,這時(shí)打開瀏覽器,訪問:http://10.10.1.100:8000/ServerSummary 會(huì)返回當(dāng)前程序的統(tǒng)計(jì)信息,返回內(nèi)容為JSON數(shù)據(jù)。
如果訪問不了,請檢查A服務(wù)器上防火墻是否開啟8000端口的訪問。
3、開啟轉(zhuǎn)發(fā),將A機(jī)器上的8010端口轉(zhuǎn)發(fā)到B服務(wù)器上的3389端口:
http://10.10.1.100:8000/ForwardWork?auth=taven123&status=1&fromAddr=:8010&toAddr=10.11.2.20:3389
4、開啟后,您就可以通過 10.10.1.100:8010 端口連接了,此時(shí)你實(shí)際連接到的是 10.11.2.20 上的 3389
上面只是個(gè)例子,你可以隨時(shí)啟用任意端口與任意機(jī)器之間的端口映射。
當(dāng)你使用完畢后,可以立即關(guān)閉端口轉(zhuǎn)發(fā),只需要執(zhí)行如下請求即可:
http://10.10.1.100:8000/ForwardWork?auth=taven123&status=0
執(zhí)行后,端口轉(zhuǎn)發(fā)關(guān)閉,端口被釋放。
其它說明
windows-64下:
> forwardPort.exe
或
> forwardPort.exe -auth 123 -restApi 10.10.1.100:9999
linux-64下:
$ ./forwardPort
或
$ ./forwardPort -auth 123 -restApi 10.10.1.100:9999
參數(shù)說明:
auth:rest接口調(diào)用時(shí)的密碼,啟動(dòng)時(shí)不帶該參數(shù),則默認(rèn)為:taven123
restApi:rest接口監(jiān)聽的地址,啟動(dòng)時(shí)不帶該參數(shù),則默認(rèn)為:0.0.0.0:8000
#REST接口參數(shù)說明:
/ForwardWork?auth=taven123&status=1&fromAddr=:8010&toAddr=10.11.2.20:3389
auth:密碼,默認(rèn)為taven123
status:如果是開啟轉(zhuǎn)發(fā),則為1,如果是關(guān)閉轉(zhuǎn)發(fā),則為0
fromAddr:要用來在A機(jī)器上監(jiān)聽的一個(gè)端口,用來給客戶端連接
toAddr:把fromAddr端口的數(shù)據(jù)轉(zhuǎn)發(fā)到哪個(gè)IP的端口上
如果是本機(jī)內(nèi)轉(zhuǎn)發(fā),可以這樣:
/ForwardWork?auth=taven123&status=1&fromAddr=:8010&toAddr=:22
表示把機(jī)器上的8010端口映射到本機(jī)的22端口.
