内外网同时访问问题_判断访问计算机IP

原创 2006年05月28日 18:32:00

我在内网搭了两个服务器,一个数据库服务器,一个Web服务器。并且让网管影射个外网IP给Web服务器,使得外网内网可以同时访问。但这样产生了个问题,Web服务器取数据是用内网的相对地址,这样外网访问时就得不到数据,只能显示框架。要是把数据库服务器也映射了的话,那么内网就不能访问了,这样我就没办法调试了。如果把两个服务器合为一个,那么运行的速度就会受到影响,而现在老板也不想再往里投钱,毕竟只是一个演示。而把两台机子搬到实验室的网络机房直接接到外网上也可以解决,但是网络机房是封闭的,有门禁卡,这样我就没办法经常进去修改。
仔细想了一下,觉得做个判断应该可以解决这个问题,只要判断访问的是内网IP还是外网IP,依据判断来进行对应的操作
查了查资料发现用JS不错,因为JS 获取的 IP 有个优点就是它获取的是本机设置的 IP,如果计算机通过局域网上网,那么它获得的就是计算机的局域网 IP,而不像 ASP 中 Request 获取的是计算机连接到互联网的 IP。

代码(是从别人那抄来的,不过可以参考一下 :)   )
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JS获取客户端IP</title>
</head>

<body>
<script type="text/javascript" language="javascript">
<!--
function GetLocalIPAddress()
{
    var obj = null;
    var rslt = "";
    try
    {
        obj = new ActiveXObject("rcbdyctl.Setting");
        rslt = obj.GetIPAddress;
        obj = null;
    }
    catch(e)
    {
        //异常发生
    }
   
    return rslt;
}

document.write("你的IP是:" + GetLocalIPAddress());
//-->
</script>
</body>

</html>

据说在使用中可能会出现警告,不过这只是测试,应该不碍事的,呵呵   :)

让路由器暴露一个内网IP,供外网访问

让路由器暴露一个内网IP,供外网访问
  • Jsagacity
  • Jsagacity
  • 2017年06月02日 17:59
  • 1039

搭建tomcat服务器,目标可通过外网ip访问本机

最近学习了一些微信的开发者方面的东西,申请了一个阿里云,因为一些原因,不能在阿里云直接布置服务器,只能通过远程控制主机来布置,虽然我也不明白为什么我一个前端要去弄那些,但是也算收获一些东西了。记录一下...
  • ReusLi
  • ReusLi
  • 2015年10月03日 16:30
  • 6403

【内外网映射】通过外网ip来访问虚拟机服务器【原创】

这篇文章介绍的是内外网映射。
  • jiandanokok
  • jiandanokok
  • 2016年05月12日 21:46
  • 12719

详解内网IP外网IP的关联及访问互联网原理

首先解释一下“内网”与“外网”的概念:     内网:即所说的局域网,比如学校的局域网,局域网内每台计算机的IP地址在本局域网内具有互异性,是不可重复的。但两个局域网内的内网IP可以有相同的。 ...
  • onlyKnowledge
  • onlyKnowledge
  • 2014年09月20日 17:12
  • 2120

Qt网络获取外网的网络信息

如何获取外网IP,一般操作系统不自带这样的命令,需要通过特殊的网页获取,通过打开网页,获取所有源代码,然后分割字符串,取出对应字符串处的本机外网IP地址即可。 至于检测是否通外网,很多人首先想到的...
  • xinmeiwan
  • xinmeiwan
  • 2015年08月19日 11:15
  • 710

通过外网ip访问tomcat

如果计算机在局域网(路由器)内,是无法直接通过外网ip(+端口号+项目名)访问tomcat服务器的,解决方案是将路由器的8080端口映射到自己电脑的8080端口上。...
  • MAO_JIN_DAO
  • MAO_JIN_DAO
  • 2016年10月13日 23:08
  • 2525

通过公网IP访问云上的Hadoop集群

背景:从公司内部网络中的Hadoop集群访问部署在亚马逊云的Hadoop集群1. IP、域名设置1.1 给云上每个实例设置一个内网IP(如上图10.0.0.5)1.2 给云上每个实例绑定一个Ela...
  • dominic_tiger
  • dominic_tiger
  • 2017年05月12日 21:32
  • 1284

配置redis外网可访问

翻看网上的文章,此处多翻译为“指定redis只接收来自于该IP地址的请求,如果不进行设置,那么将处理所有请求,在生产环境中最好设置该项”。这种解释会totally搞糊涂初学者,甚至是错误的。...
  • hel12he
  • hel12he
  • 2015年07月16日 14:11
  • 16714

访问外网设置代理IP

window电脑设置方法 在此路径下C:\Windows\System32\drivers\etc 修改hosts文件, 在底部添加下列IP 这里只贴出了部分网址的代理IP,下载附件为所有的代理IP,...
  • u014702999
  • u014702999
  • 2015年12月29日 14:59
  • 1180

11 :外网如何访问 docker 容器内的服务?

docker run -d -p 80 -i -t ubuntu /bin/bash 主机端口随机 docker run -d -p 8080:80 -i -t ubuntu /bin/bash ...
  • xiaoliuliu2050
  • xiaoliuliu2050
  • 2016年12月03日 21:45
  • 5381
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:内外网同时访问问题_判断访问计算机IP
举报原因:
原因补充:

(最多只允许输入30个字)