C#新手,最近遇到一个需求,就是如何判断访问系统的用户的所处环境,是系统的内网?
我能想到的是判断当前用户的 IP,与系统服务器的 IP 进行对比,但是也不知道怎么做,网上搜的东西好像也没什么用。所以还请各位老哥老姐给点指导,多谢了。
需求截图如下:


1
xomix Nov 15, 2017
内网外网两个 dns,两个域名,根据过来的域名判断即可。
|
2
gamexg Nov 15, 2017
同一子网还是?
同一子网直接查询服务器 ip+子网掩码,然后 服务器 ip & 掩码 获得服务器网络地址,客户 ip & 掩码得到客户网络地址,一致表示在同一子网。 但是如果存在多个内网,这样就判断不出来了,另一方案:、。 直接判断客户地址是不是保留地址就能确定是不是内网。 另外还需要小心有可能有些网关转发时会把源地址改成自己,最好排除默认网关。 |
3
580a388da131 Nov 15, 2017
既然是需要内网登录,那怎么进去的登录页面,不太理解。。。难道这个页面还和其它系统共享么?
|
5
bytewalk OP @580a388da131 公网的,不是说需要内网登录
|