方法一:用lcx.exe進行映射。
(1)我們將lcx.exe傳到公網IP上,在公網IP上DOS環境下執行 lcx –listen 端口1 端口2
如lcx –listen 3030 3166
此命令的意思是監聽3030端口和3166端口,以便和外部進行連接。
(2)將lcx.exe下載到要開放的內網的計算機上,然後在DOS環境下執行 lcx –slave 公網IP 端口 內網IP 端口
如lcx -slave 211.211.21.21 3030 172.16.32.153 80
解釋一下,這句話的意思是說將內網計算機IP為 172.16.32.153 的80端口(也就是WEB 服務端口)
映射到公網IP為210.210.21.21的3030端口上,這樣,內網和公網的計算機就建立起了連接。 如果你
內網計算機提供WEB服務,現在,只要通過外網IP 210.210.21.21和端口3166 可以訪問內網的網站了。
開放IP前,訪問地址 http://172.16.32.153/index.htm
開放IP後,訪問地址 http://210.210.21.21:3166/index.htm 見下圖
方法二:用VIDC
我們將vidcs.exe傳到公網IP上,在公網計算機上運行vidcs –p端口,如vdics –p5205見下圖
這句話的意思是在公網計算機上監聽端口 5205 然後回到內網計算機上,直接點擊運行
vIDCc.exe,見下圖
解釋一下上面的設置: VIDC服務IP,指運行了vidcs.exe進行監聽了端口的IP地址,端口指是在公網上監聽的端口,上面我監聽的是5205端口,bindip指你要開放出去的內網的IP, Bind端口指你內網計算機需要開放的端口(FTP服務器端口為21, WEB 服務端口為80, mail服務端口25)你想開放哪個就填哪個吧。
映射端口指你想通過公網哪個端口提供服務。端口由你定,填好之後,我們點」連接」,馬上就到收到提示Success to Connect(210.210.21.21:5205,ver:1.2), 說明連接成功。繼續點」bind」,同樣會收到成功的提示。
這樣,你的機子的80端口就開放出去了。 訪問方法 http://公網ip:映射端口。
如 http://210.210.21.21:8080 見下圖
上面就是兩種不通過網關開放內網的方法。
linux如下處理即可,
iptables -t nat -A PREROUTING -d 218.25.162.132 -j DNAT --to 172.16.0.132
iptables -t nat -A POSTROUTING -s 172.16.0.132 -j SNAT --to 218.25.162.132
大概的原理就是要訪問218的地址的包進入linux,在路由決策前,更換目的地址為172地址,來自172地址包在linux裡決定了路由後,更換源地址為218地址,這樣就實現了內部ip和外部ip的nat轉換,並且內部地址的機器也可以用外部地址來訪問dmz的服務器。
在cisco router也有 nat inside|outside source|destination的命令,當時沒有仔細研究,目前已經形成了採用雙dns的局面,其實這樣並不好,很麻煩,以後有時間還是要研究下,可能需要設置sec address,否則確實存在arp的問題