web服务器是放到internet上的,
另外一个局域网那的机子通过路由器或其他代理方式访问系统,
通过Request.UserHostAddress可以知道外网访问服务器的IP地址,
我想知道如何取得那个内部网那台机子的内网Ip地址,和对应到外网IP地址的映射端口

解决方案 »

  1.   

    服务端应该是做不到的 做的到的话局域网用户等于暴露在internet下了
      

  2.   

    如果是代理方式或用路由器作NAT的话,你要的东西就在代理或路由器中。
      

  3.   

    这个问题,我在原来的水木清华上见过类似的
    就是:一个人通过代理到BBS上发贴,如何得到他的真实IP而不是得到代理服务器的IP。那个时候是有段代码,说是可以做得到的。当时我没注意,现在也记不清了。如果那个类似的问题能做得到,那么你的问题应该是可以的。我个人认为可以做得到;只是我现在刚入门,自己没法做得到。
      

  4.   

    http://community.csdn.net/Expert/topic/3951/3951791.xml?temp=.3639185
    http://community.csdn.net/Expert/topic/3402/3402164.xml?temp=.4120447获得内网ip,理论上应该有三种方法吧:
    1。用javascript的object组件(上面文章有源码,可以参考下,我没试过)
    2。写cookie(javascript写,服务器端读,理论上可以)
    3。自己写个ocx,就像微软的msn下载条,微软的space.msn.com的拖拽等不过好像都很麻烦,自己看着办吧。
      

  5.   

    不太可能。
    如果这样的话,网关,防火墙还用来做什么呢?
    局域网是要受到保护的,私网IP在公网上是得不到的。
    因为局域网本来就要通过网关上网的,所以最多得到一个网关的IP或代理IP。
      

  6.   

    但是如果是客户端把自己的ip传过去的话,是不是可以另当别论呢。
    不要告诉我,客户端传不过去阿。
    所谓ip保护,是指外网无法访问内网,但是如果内网主动访问外网呢,是可以的。
    就像qq内网可以同外网通信,理论上内网ip可以获得的,只不过内网ip取得后,没什么意义(黑客例外)。
      

  7.   

    mission imporsable,
    使用request取得的是http请求中所包含的信息,当中也包括了客户端信息,比如ip阿,浏览器版本阿,操作系统的,但是是不会包含代理的信息的,所以这个想法不能通过这个方式实现