天天看點

netsh interface portproxy的一個簡單例子

netsh interface portproxy的微軟幫助文檔位址:

​​https://technet.microsoft.com/zh-cn/library/cc776297(WS.10).aspx#BKMK_1​​

下面是一個簡單的例子:

//顯示所有 portproxy 參數,包括 v4tov4、v4tov6、v6tov4 和 v6tov6 的端口/位址對。
C:\>netsh interface portproxy show all
//因為沒有配置過它,是以沒有東西可以顯示。

//添加配置: 本機監聽10022端口,當有socket連接配接到10022端口時,本機就連接配接到192.168.2.53的22端口,本機的10022端口可以接受的連接配接位址為"*",使用的協定為tcp,目前僅支援傳輸控制協定 (TCP)。
C:\>netsh interface portproxy add v4tov4 listenport=10022 connectaddress=192.168.2.53 connectport=22 listenaddress=* protocol=tcp
//添加完畢。

//顯示所有。
C:\>netsh interface portproxy show all

偵聽 ipv4:                 連接配接到 ipv4:

位址            端口        位址            端口
--------------- ----------  --------------- ----------
*               10022       192.168.2.53    22

//删除配置: 本機的監聽端口為10022,10022端口接受的連接配接位址為"*",使用的協定為tcp,目前僅支援TCP協定。
C:\>netsh interface portproxy delete v4tov4 listenport=10022 listenaddress=* protocol=tcp
//删除完畢。

//顯示所有。
C:\>netsh interface portproxy show all
//因為所有的配置均已删除,是以沒有東西可以顯示。

//檢視幫助資訊。
C:\>netsh interface portproxy /?
//略。

//檢視幫助資訊。
C:\>netsh interface /?
//略。

//檢視幫助資訊。
C:\>netsh /?
//略。      

-----haproxy主要用于負載,如果隻是負載一個,那就成為端口映射了,但是畢竟是linux下面的程式。

-----windows下也有一個小工具:portforward.exe,圖形界面容易操作,個人平常使用可以,但是也沒有辦法實作與程式互動。

經過在網上搜尋,發現windows系統,包括xp  2003,2008等,netsh工具都自帶portproxy功能。目前隻支援tcp協定的端口轉發,前提需要作為portproxy的主機需要安裝IPV6,安裝可以不啟用IPV6。

A.配置方法

假定需要通過192.168.1.8的14941端口連接配接192.168.1.118的1494端口,則需要在192.168.1.8主機的指令行輸入如下語句

---如果已經安裝IPV6,該條語可以不需要

netsh  interface ipv6 install

---可不用指定本地監聽位址,這樣可以通過作業系統提供浮動位址來實作,如果作業系統開啟了主機防火牆,需要放行TCP 14941的入站連接配接

netsh interface portproxy add v4tov4 listenaddress=192.168.1.8 listenport=14941

connectaddress=192.168.1.118  connectport=1494

netsh interface portproxy add v4tov4                           listenport=14941

connectaddress=192.168.1.118  connectport=1494

---取消上面配置的端口轉發,可以用如下語句:

netsh interface portproxy delete v4tov4 listenaddress=192.168.1.8

 listenport=33891

---如果想檢視已經配置了哪些端口轉發,可以用如下語句:

netsh interface portproxy show  v4tov4

B.優點

可以随時根據需要添加或删除端口轉發條目,并且重新開機作業系統仍能自動儲存之前的配置并自動啟用,不像HAproxy修改完配置檔案還需重新開機HAproxy。

網上有的說xp配置端口轉發不起作用,估計是沒有安裝IPV6的緣故,用xp測試,安裝了IPV6後可以實作端口轉發,并且不需要開啟路由和遠端通路服務。另外考慮到端口轉發的備援,可以多台主機都配置端口轉發。

繼續閱讀