NAT裡面的Web server



贊助商連結


xwing
2006-04-26, 03:19 PM
各位好,
我的NAT主機其實只是一台一般的WinXP pro,
裝了兩張網路卡,
一張用ADSL撥接取得外網IP(220.X.X.X)
另一張IP設定192.168.0.1,
跳線連到另一台有架IIS web server的PC(IP為192.168.0.2),

在NAT主機那台裝了個PortMap軟體,將220.1.1.1的8080 port
對映到192.168.0.2的80 port。

目前確實連線http://220.X.X.X:8080/
192.168.0.2的網頁可以跑的出來,但是
此web中(用asp所寫)若要抓使用者的IP就都抓不到正確的了,
抓到的都是NAT主機的IP 192.168.0.1……

該怎麼弄才有辦法正確的抓到外網user的IP呢?

不好意思,我很菜,謝謝大家的協助先!:D

贊助商連結


門神
2006-04-26, 08:31 PM
....................但是
此web中(用asp所寫)若要抓使用者的IP就都抓不到正確的了,
抓到的都是NAT主機的IP 192.168.0.1……

該怎麼弄才有辦法正確的抓到外網user的IP呢?

不好意思,我很菜,謝謝大家的協助先!:D

請問您的ASP語法是寫怎樣......

xwing
2006-04-26, 11:36 PM
Ip= Request.ServerVariables("HTTP_X_FORWARDED_FOR")
if Ip= "" OR Ip= "undefined" OR Ip= null then
Ip= Request.ServerVariables("HTTP_CLIENT_IP")
if Ip= "" OR Ip= "undefined" OR Ip= null then
Ip= Request.ServerVariables("REMOTE_ADDR")
end if
end if

請問您的ASP語法是寫怎樣......

門神
2006-04-27, 07:26 AM
如果只是單純的寫

<%=Request.ServerVariables("REMOTE_ADDR")%>

他會抓到那一個IP

xwing
2006-04-27, 10:08 AM
抓到的是NAT主機IP 192.168.0.1
……


如果只是單純的寫

<%=Request.ServerVariables("REMOTE_ADDR")%>

他會抓到那一個IP

門神
2006-04-27, 11:56 AM
我懂了 ^^

這是前端NAT軟體換掉他了