除非是你一个人使用这个IP,不然就肯定是一个局域网了,代理软件的概念我也不是很清楚,操作系统提供默认的代理方法,你的公网IP一般在你的TCP/IP设置中能找到。做CS结构的软件,发送消息应该是广播的方式,任何一台机器都收到,要想找到局域网里的某一台机器,好像只有用黑客的软件了,而且要系统没有打补丁才行,呵呵

解决方案 »

  1.   

    除非是你一个人使用这个IP,不然就肯定是一个局域网了,代理软件的概念我也不是很清楚,操作系统提供默认的代理方法,你的公网IP一般在你的TCP/IP设置中能找到。做CS结构的软件,发送消息应该是广播的方式,任何一台机器都收到,要想找到局域网里的某一台机器,好像只有用黑客的软件了,而且要系统没有打补丁才行,呵呵
      

  2.   

    import java.net.*;
    public class NetTool{
    InetAddress myIPaddress=null;
    InetAddress myServer=null;public static void main( String args[]){NetTool mytool;
    mytool=new NetTool();System.out.println("Your host IP is: "
    + mytool.getMyIP());
    System.out.println("The Server IP is :"
    +mytool.getServerIP());}//取得LOCALHOST的IP地址
    public InetAddress getMyIP() {
    try { myIPaddress=InetAddress.getLocalHost();}
    catch (UnknownHostException e) {}
    return (myIPaddress);
    }
    //取得 www.abc.com 的IP地址
    public InetAddress getServerIP(){
    try {myServer=InetAddress.getByName(
    "www.abc.com");} 
    catch (UnknownHostException e) {}
    return (myServer);
    }}借用的程序,不知道对你有没有帮助。
      

  3.   

    谢谢你kongchaohao..
    Your host IP is: VDong/172.16.0.19
    The Server IP is :www.abc.com/199.181.135.201
    这是程序运行的结果.但不是我预期所想的.
    还有别的方法吗?谢谢你哦.
      

  4.   

    局域网内某台机器只有内部IP,通过代理上网,我觉得是不可能取得到那个内部IP的,因为一切连接请求都是通过代理服务器中转的。代理过程是这样的:
    内部机器发送要连接到外部的某个请求到代理服务器上,该数据报中含有该机器内部IP和请求的目的地址,然后代理服务器取出请求的目的地址,而去除了数据报中的内部源IP。所以代理服务器发出去的请求是不带有内部IP,只有代理服务器本身的公网IP,当代理服务器得到相应的内容,再根据内部机器的那个请求,拾取记忆中的那个源内部IP,反回内容。
    请求的信息在第一行,如果你写的类似的软件也可以取得到的。
      

  5.   

    如果外网的机器能够得到内部代理服务器的IP(如:211.184.0.13)和内部一台机器的内网IP(如:192.168.0.3),那么,外网的机器要怎样才能连接到内网的那台192.168.0.3的机器上呢?用JAVA可以实现吗?