日期:2014-05-20  浏览次数:20718 次

JAVA的网络重定向
遇到一个问题,请求各位帮忙
简要描述如下:

要做一个简单重定向软件[安装在电脑A]
其能实现以下功能:
根据来自INTERNET的连接IP判断将其与电脑B还是电脑C连接  
电脑A   三块网卡   一块接INTERNET   一块接电脑B   还一块接电脑C     电脑B、电脑C都有各自的内部IP
 

              |
              |   来自INTERNET的连接
              |
              |
    +---------+
    |     电脑A     |
    +---------+
    |                   |
+-----+     +-----+
|电脑B|     |电脑C|
+-----+     +-----+

A判断来自INTERNET的连接IP决定是连接到B还是C  


刚接触JAVA,对网络方向的编程没有接触过,所以没有一点头绪,希望各位不啬赐教。[是不是要用到JPCAP   WINCAP等包?]

------解决方案--------------------
request.getRemoteAddr()可以获得客户端的IP,再通过if else判断后,response.sendRedirect( "http://B or c/xxx.jsp ");即可.
------解决方案--------------------
这就相当于一个代理或者网关,很多现成的东西.做个标记,晚上回去研究一下.

freejacky(免费的杜松子酒)说的绝对不行,response.sendRedirect本质是让来自INTERNET的连接直接去访问b和c,b和c都不在公网上,如何访问?
------解决方案--------------------
代理


也不懂
关注了
------解决方案--------------------
不知道搂主的意思是不是用电脑A做网关代理服务器,电脑B和电脑C通过共享网关接入互联网?
如果这样的话电脑B和电脑C都不在公网上.即使request.getRemoteAddr()可以获得客户端的IP对您来说不具有分析的意义。
------解决方案--------------------
楼主可以研究一下代理服务器。推荐 Super Proxy System:
http://www.scs.cs.nyu.edu/webbug/
------解决方案--------------------
问题不错,先标记明天看
------解决方案--------------------
顶起
------解决方案--------------------
mark