当前位置: 代码迷 >> Java Web开发 >> 如何确定两台主机间是否互连
  详细解决方案

如何确定两台主机间是否互连

热度:303   发布时间:2016-04-17 17:19:02.0
怎么确定两台主机间是否互连
我想如果有两台网络设备他们IP分别是192.168.1.1和192.168.1.58 如何用java确定这两台设备之间是否互连了呢?用什么方法 (注:如果这两台设备之间有通过其他设备连接,可以忽略这两台设备之间的那些其他设备,我只要知道这两台设备是否互连) 急!!

------解决方案--------------------
如果只是想通过JAVA 程序来判断两台机器是否连通的话,可以用下面的测试程序,写的不太好,但可以达到你的目的。

Frame_Server.java
Java code
import java.net.*;import java.io.*;import java.awt.*;import java.awt.event.*;public class Frame_Server extends Frame{    static TextArea t_1=new TextArea();    public static void main(String args[])    {    //    System.out.println(server.in);        Frame_Server fs=new Frame_Server("Frame_Server");        fs.setSize(400,300);        WindowClosing WC=new WindowClosing();        fs.addWindowListener(WC);        fs.panel();        fs.setVisible(true);        server.servers();        //    }    public Frame_Server(String str)    {        super(str);    }    public void panel()    {        Panel p_1=new Panel();        Label l_1=new Label("对方信息:");        p_1.add("North",l_1);        p_1.setBackground(Color.pink);        add("North",p_1);        t_1.setEditable(false);        add("Center",t_1);    }}class WindowClosing extends WindowAdapter{    public void windowClosing(WindowEvent e)    {        System.exit(1);    }}class server extends Thread{    OutputStream os=null;    InputStream is=null;    static byte[] buf=new byte[100];    static String in="haha";    static int len=0;    private Socket s;    public server(Socket s)    {        this.s=s;    }    public void run()    {        try        {            os=s.getOutputStream();            is=s.getInputStream();            os.write("消息发送成功".getBytes());            len=is.read(buf);            System.out.println(new String(buf,0,len));            in="hehe";            Frame_Server.t_1.append(new String(server.in));            Frame_Server.t_1.append(new String(buf,0,len));            is.close();            os.close();            s.close();        }        catch(Exception e)        {            e.printStackTrace();        }    }    public static void servers()    {        try        {            ServerSocket ss=new ServerSocket(6000);            while(true)            {                Socket s=ss.accept();                char[] buf=new char[100];                new server(s).start();                System.out.println("IP is:"+s.getInetAddress()+s.getPort());                String s_3=new String(buf,0,30);                System.out.println(s_3);                String s_s="hello you !";                Frame_Server.t_1.append(s_3);//new String(s_3));            }        }        catch(Exception e)        {            e.printStackTrace();        }    }}
------解决方案--------------------
如果只是想通过JAVA 程序来判断两台机器是否连通的话,可以用下面的测试程序,写的不太好,但可以达到你的目的。 

Frame_Server.java 
Java code
import java.net.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
public class Frame_Server extends Frame
{
static TextArea t_1=new TextArea();
public static void main(String args[])
{
// System.out.println(server.in);
Frame_Server fs=new Frame_Server("Frame_Server");
fs.setSize(400,300);
WindowClosing WC=new WindowClosing();
fs.addWindowListener(WC);
fs.panel();
fs.setVisible(true);
server.servers();
//

}
public Frame_Server(String str)
{
super(str);
}
public void panel()
{
Panel p_1=new Panel();
Label l_1=new Label("对方信息:");
p_1.add("North",l_1);
p_1.setBackground(Color.pink);
add("North",p_1);
t_1.setEditable(false);
  相关解决方案