asp.net(vb.net)获取真实IP的函数_实用技巧

aspx vb.net获取真实IP的函数如下:

复制代码 代码如下:

<script runat="server">
Public Function CheckIp(ByVal ip As String) As Boolean
Dim pat As String = "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$"
Dim reg As Regex = New Regex(pat)
if ip = "" Then
CheckIp = False
exit Function
end if
CheckIp = reg.IsMatch(ip)
End Function

Public Function get_cli_ip() As String
If ( Not( System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP") Is Nothing) And CheckIp(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")) = True) Then
get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")
Exit Function
ElseIf Not(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR") Is Nothing) Then
Dim ips() As String = Split(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")
For i As Integer = 0 To ips.Length - 1
If CheckIp(Trim(ips(i))) = True Then
get_cli_ip = Trim(ips(i))
Exit Function
End If
Next
End If
get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("REMOTE_ADDR")
End Function
</script>

完整的测试页面:

复制代码 代码如下:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Function CheckIp(ByVal ip As String) As Boolean
Dim pat As String = "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$"
Dim reg As Regex = New Regex(pat)
if ip = "" Then
CheckIp = False
exit Function
end if
CheckIp = reg.IsMatch(ip)
End Function

Public Function get_cli_ip() As String
If ( Not( System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP") Is Nothing) And CheckIp(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")) = True) Then
get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")
Exit Function
ElseIf Not(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR") Is Nothing) Then
Dim ips() As String = Split(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")
For i As Integer = 0 To ips.Length - 1
If CheckIp(Trim(ips(i))) = True Then
get_cli_ip = Trim(ips(i))
Exit Function
End If
Next
End If
get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("REMOTE_ADDR")
End Function
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<%
Dim client_ip As String = get_cli_ip()
System.Web.HttpContext.Current.Response.Write(client_ip)
%>
</body>
</html>

时间: 2024-08-31 07:21:37

asp.net(vb.net)获取真实IP的函数_实用技巧的相关文章

asp.net(vb.net)获取真实IP的函数

aspx vb.net获取真实IP的函数如下: 复制代码 代码如下: <script runat="server"> Public Function CheckIp(ByVal ip As String) As Boolean Dim pat As String = "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" Dim reg As Regex = New Regex(pat) if ip = "

asp.net获取真实ip的方法_实用技巧

本文实例讲述了asp.net获取真实ip的方法.分享给大家供大家参考.具体如下: public string getip() { string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (null == result || result == String.Empty) { result = HttpContext.Current.Request.ServerVari

ASP.NET实现根据IP获取省市地址的方法_实用技巧

本文实例讲述了ASP.NET实现根据IP获取省市地址的方法,分享给大家供大家参考.具体实现方法如下: 1.在网站的跟路径下面添加QQWry.dat(点击此处本站下载http://www.jb51.net/softs/10529.html)文件,这个文件是IP数据库文件 2.添加以下一个类 IPScanner 复制代码 代码如下: public class IPScanner {         //私有成员#region 私有成员         private string dataPath;

asp下取得客户端IP地址函数 转换IP地址函数_应用技巧

<% '****************************** '函数:Userip() '参数:无 '作者:阿里西西 '日期:2007/7/12 '描述:取得客户端IP地址 '示例:<%=Userip()%> '****************************** Function Userip() Dim GetClientIP '如果客户端用了代理服务器,则应该用ServerVariables("HTTP_X_FORWARDED_FOR")方法 G

ASP.NET中实现jQuery Validation-Engine的Ajax验证_实用技巧

见下图: 验证的例子:http://www.position-relative.net/creation/formValidator/ 官方地址: http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/ 这个插件支持大部分的浏览器,但由于有使用到了css3的阴影和圆角样式,所以在IE浏览器下无法看到圆角和阴影效果(IE 9 支持圆角效果). 本文主要内容是

Asp.net获取客户端IP常见代码存在的伪造IP问题探讨_实用技巧

在网卡随便一搜: Asp.net 客户端IP 可以搜索到很多页面,提供的代码基本都类似于: 复制代码 代码如下: if (Request.ServerVariables["HTTP_VIA"] != null) return Request.ServerVariables["HTTP_X_FORWARDED_FOR"].Split(new char[] { ',' })[0]; else return Request.ServerVariables["RE

asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)_实用技巧

本文实例总结了asp.net DataTable相关操作.分享给大家供大家参考,具体如下: #region DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// <summary> /// DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// eg:SortExprDataTable(dt,"Sex='男'","Time Desc&quo

ASP.net做的IP访问限制_实用技巧

偶做留言本的时候想起做这么个,具体思路也许不好,做出来只是抛砖引玉,希望有更好的方法! IP添加页是用了一个ListBox, TextBox,两个Button,而在其他的页上则直接用当前IP对比数据库中的IP,代码如下! 限制IP添加页HTML代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ip.aspx.cs" Inherits="admin_ip"

ASP.NET编程获取网站根目录方法小结_实用技巧

本文实例讲述了ASP.NET编程获取网站根目录方法.分享给大家供大家参考,具体如下: 获取网站根目录的方法有几种如: Server.MapPath(Request.ServerVariables["PATH_INFO"]) Server.MapPath("/") Server.MapPath("")//当前代码文件所在的目录路劲 Server.MapPath(".") Server.MapPath("../"