如何实现基于ip段的判断做了两个网站,一个中文的,一个日文的。。<br>  现在 我想根据两个国家的ip段来判断,<br>是日本的ip段那么进入的是日文网站,如果是中国的ip段,<br>进的就是中文网站,不知道怎么实现。<br> 或是有其他实现方式吗?<br>© 2009 Microsoft Corporation. All rights reserved.Thu, 26 Feb 2009 09:39:43 Z91e422c1-47fd-4a80-ae50-0eb03ca75c30http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#91e422c1-47fd-4a80-ae50-0eb03ca75c30http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#91e422c1-47fd-4a80-ae50-0eb03ca75c30ViewFelicityhttp://social.microsoft.com/Profile/en-US/?user=ViewFelicity如何实现基于ip段的判断做了两个网站,一个中文的,一个日文的。。<br>  现在 我想根据两个国家的ip段来判断,<br>是日本的ip段那么进入的是日文网站,如果是中国的ip段,<br>进的就是中文网站,不知道怎么实现。<br> 或是有其他实现方式吗?<br>Mon, 15 Dec 2008 06:28:59 Z2008-12-15T06:28:59Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#a16a0d32-8da8-40e1-9eb4-881dff3078e8http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#a16a0d32-8da8-40e1-9eb4-881dff3078e8韦恩卑鄙 v-zhewghttp://social.microsoft.com/Profile/en-US/?user=%u97e6%u6069%u5351%u9119%20v-zhewg如何实现基于ip段的判断<p align=left><font face=Arial size=2>更简单的办法是判断 浏览器 user_agent的语言  </font></p>Mon, 15 Dec 2008 08:38:31 Z2008-12-15T08:38:31Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#1ba93777-59dd-4254-bda3-7108340117f5http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#1ba93777-59dd-4254-bda3-7108340117f5James.Yinghttp://social.microsoft.com/Profile/en-US/?user=James.Ying如何实现基于ip段的判断<p align=left><font face=Arial size=2></font> </p>一般我会用ip库,你可以用外面现有的,大概是dat文件吧,只要判断是否是日本的ip段,然后其他默认转到中文就好了,应该不是很难Tue, 16 Dec 2008 03:12:44 Z2008-12-16T03:12:44Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#951d2913-26f8-459f-ba6f-c273c23dd3e3http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#951d2913-26f8-459f-ba6f-c273c23dd3e3孟宪会http://social.microsoft.com/Profile/en-US/?user=%u5b5f%u5baa%u4f1a如何实现基于ip段的判断<font size=2><span style="font-family:宋体">你可以到网上找一下ip端的数据库<br>或者<br>找ip与数字相互转换的函数<br></span></font>Tue, 16 Dec 2008 05:08:26 Z2008-12-16T05:08:26Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#358e87eb-064c-4e83-81ad-e0df780baee7http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#358e87eb-064c-4e83-81ad-e0df780baee7笨笨ONEhttp://social.microsoft.com/Profile/en-US/?user=%u7b28%u7b28ONE如何实现基于ip段的判断<p align=left><font face=Arial size=2>复制别人实现的代码,人家是城市的,换成国家也是一样的。</font></p>1、数据库的连接文件一般的程序中都有(conn.asp 文件),我在这里就不写了。<br><br>2、以下代码主要实现 “判断ip地址后跳转到相应页面” 也就是说根据用户的IP判断他所在的地区,转向相应的地区级页面;并不是为了 “禁用某个IP段的用户访问” 而设计的所以没用必要判断 用户是否加了代理等等。<br><br><br>'以下是数据库部分<br><br>1、建个名为表 IP 的表<br>2、在在此表中建 5 个字段。<br>ID : 编号 类型 :自动编号<br>IP1:相关城市的IP段信息。 类型: 数字 ac需要(双精度)<br>IP2:相关城市的IP段信息。 类型: 数字 ac需要(双精度)<br>URL:跳转的页面URL 类型:TXT<br>city:相关城市 类型:TXT<br><br>列:<br><br>比如北京的IP段是 : 1.1.0.0 -- 1.1.0.255 <br><br>ip1: 1*256*256*256+1*256*256+0*256+0 = 16842752<br><br>ip2: 1*256*256*256+1*256*256+0*256+255 = 16843007<br><br><br>ID IP1 IP2 URL city<br><br>1 16842752 16843007 <a href="http://bj.58.com/">http://BJ.58.COM</a> 北京<br><br>'以下是程序部分<br><br> <h6 class=quote><a>Copy code</a></h6> <blockquote id=code1>user_ip = Request.ServerVariables(&quot;REMOTE_ADDR&quot;)   '取得访问者IP<br>userip_ary=split(user_ip,&quot;.&quot;)<br>tmp_userip=userip_ary(0)*256*256*256+userip_ary(1)*256*256+userip_ary(2)*256+userip_ary(3) ' 按规定转换IP为数字<br><br>‘从数据库找出用户IP属于的城市<br>set rs=Server.CreateObject(&quot;ADODB.Recordset&quot;)<br>sql=&quot;select * from ip where ip1&lt;=&quot;&amp;tmp_userip&amp;&quot; and ip2&gt;=&quot;&amp;tmp_userip     <br>rs.open sql,conn,1,1<br>if rs.eof then<br>response.redirect &quot;index.asp&quot;   ’如果没有转到 首页 ,也可以指定页面<br>else<br>response.redirect rs(&quot;url&quot;)       ’如果有转到指定页面<br>end if<br>rs.close<br>set rs=nothin</blockquote>Tue, 16 Dec 2008 08:33:24 Z2008-12-16T08:33:24Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#00f0e65a-18cc-40c7-89d8-2f8cf6c53e03http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#00f0e65a-18cc-40c7-89d8-2f8cf6c53e03GreatDinosaurhttp://social.microsoft.com/Profile/en-US/?user=GreatDinosaur如何实现基于ip段的判断<p align=left><font size=3>基本同<span class=inlineLink><font color="#555555">笨笨ONE</font></span> 的办法,千万不要用哪个dat的库,性能不行,楼主可以参考GeoIP.  他的数据库比较准</font></p> <p><a title="http://www.maxmind.com/" href="http://www.maxmind.com/"><font size=3>http://www.maxmind.com/</font></a></p> <p align=left><font size=3></font> </p> <p align=left><font size=3>用它免费版的库,直接下载一个大的access导入到SQL中。one的方法基本没问题,有一点geoip他的数据库里ip就是ip的32位二进制换算整数值,直接使用<span id=nsrTitle>IPAddress类对比即可,不用算。</span></font></p> <p align=left><span><font size=3></font></span> </p> <p align=left><font size=3>首先把整个数据库,大概也只有几万条记录,放在一个dataset里面,然后再把dataset放在一个cache[&quot;ip&quot;]里面,使用where查询这个dataset,完全在内存中操作,性能很好,MVC的话可以写成一个filter。</font></p>Tue, 16 Dec 2008 14:54:57 Z2008-12-16T14:54:57Zhttp://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#4e4d8b92-37ad-4747-b3cf-0a33e0104915http://social.microsoft.com/Forums/en-US/267/thread/91e422c1-47fd-4a80-ae50-0eb03ca75c30#4e4d8b92-37ad-4747-b3cf-0a33e0104915孟宪会http://social.microsoft.com/Profile/en-US/?user=%u5b5f%u5baa%u4f1a如何实现基于ip段的判断<font size=2><span style="font-family:宋体">一般的做法不是根据IP来路进行判断的,是根据客户端的地区语言判断的。就是说,你不要将在日本境内的中国人显示成日文内容<br><br>String[] userLang = Request.UserLanguages;  <br>或者从Request.UserAgent属性或者 </span></font><font size=2><span style="font-family:宋体">Request.</span></font><font size=2><span style="font-family:宋体">ServerVariables 属性 得到语言信息<br></span></font>Wed, 17 Dec 2008 00:40:06 Z2008-12-17T00:40:06Z