现在要做一个投票系统。
要求是只有校内可以访问,然后每个 ip 每天只能投三次。但是学校的 ip 是有限的,通过 nat 地址转换,可能一栋楼访问的时候是一个 ip。这个问题该怎么解决? 我查了,校内访问可以在 nginx 和 route 里设置。 但是现在没有办法识别经过 nat 转后相同的 ip。
求各位给点指点!
如何正确获得使用者 ip
#1 楼 @dudu_zzzz 我按照里面的试了。我现在模拟了一下,用桥接的方式将路由器 B 连接到路由器 A,服务器和路由器 B 都在路由器 A 的网段下。然后现在我客户连的路由器 B,请求得到的还是路由器 B 的 ip 地址。
限制 ip 的这个思路很不好,尤其是国内这种多个用户共用一个 ip 的现象。如果使用了反向代理,那么你将 x-forwarded-for 中第一个符合 ip 格式的当做客户端 ip 好了
这种限制,似乎只能用物理的方式弄, 强制一个学生证,身份证,手机验证之类的。 如果有人想刷票,还是不难的。
验证手机号
#3 楼 @zouyu 好的,多谢!