Dim strIPAddr
If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") >0 Then
strIPAddr = Request.ServerVariables("REMOTE_ADDR")
ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") >0 Then
strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)
ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "") >0 Then
strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "")-1)
Else
strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
End If
getIP = Trim(Mid(strIPAddr, 1, 30))
End Function
这是我整理出来的函数。只要打getIP就OK了
外网IP一般称为公网IP,也就是宽带IP地址,这是宽带商的宽带服务器随机分配给各上网用户的,每次重新连接上宽带所分配到的IP地址都不一样。(除非是报装了固定IP业务)
内网IP就是局域网IP地址,这个IP地址可以由路由器DHCP自动分配,也可以局域网内的每台连接设备手动分配一个固定的IP地址。
比喻,你家路由器下边连有多台电脑或手机等上网设备,所从路由分配到的IP地址就是内网IP地址。而路由器每次拨号连接上宽带所得到的IP地址,就是公网IP地址或叫外网IP地址
外网地址是指在Internet上使用的地址,除了这些保留做为内网的地址和其他保留地址之外的所有地址,这些IP地址是由ISP提供。服务器如果是内网的服务器,则使用的是内网IP,如果是提供Internet服务器的,就要使用外网地址。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)