码迷,mamicode.com
首页 > 其他好文 > 详细

跨网络主机的互操作/远程控制/远程桌面的概念设计(二)

时间:2017-10-15 17:34:41      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:远程   print   buffered   局域网   网线   string   sts   病毒入侵   input   

前一篇(跨网络主机的互操作/远程控制/远程桌面的概念设计(一))就是概念设计了一下,觉得可行,这次用2个USB网卡联通以后,实际测试了下,还真的可行。

不过仔细想了想,这个还是有很大风险的,毕竟内网和互联网电脑组成了一个局域网,如果有局域网病毒入侵到任一台电脑上,另外一台也是会中毒的。

一、物理连接

       使用两个USB网卡,分别插到内网主机和互联网主机上,然后用网线连接起来。分别设置两个USB网卡的IP地址为 192.168..0.1 和 192.168.0.2。我测试是一个 Win7 一个Win10系统,不用配置什么跃点和静态路由,就能三个网络方向可用。两台主机不仅原网络正常,彼此间也能直接ping通,说明win7和win10的网卡协议都挺智能,会自动路由,给IP包找指定的网关。

 

二、Java Socket测试

服务端代码:

 1 package com.wfg;
 2 
 3 import java.io.BufferedReader;
 4 import java.io.IOException;
 5 import java.io.InputStreamReader;
 6 import java.io.PrintWriter;
 7 import java.net.ServerSocket;
 8 import java.net.Socket;
 9 
10 public class TestS {
11     public static void main(String[] args) throws IOException {
12 
13         ServerSocket server = new ServerSocket(9899);
14         System.out.println("The Server is start: " + server);
15         while (true) {
16             Socket client = server.accept();
17             System.out.println("Accept the Client: " + client);
18             BufferedReader in = new BufferedReader(new InputStreamReader(client
19                     .getInputStream()));
20             PrintWriter out = new PrintWriter(client.getOutputStream());
21             while (true) {
22 
23                 String str = in.readLine();
24                 System.out.println(str);
25                 out.println("has receive.");
26                 out.flush();
27                 if (str.equals("end"))
28                     break;
29 
30             }
31 
32             client.close();
33 
34         }
35 
36     }
37 }

客户端代码:

package com.wfg;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;

public class TestC {
    static Socket server;

    public static void main(String[] args) throws Exception {
        server = new Socket("192.168.0.1", 9899);
        BufferedReader in = new BufferedReader(new InputStreamReader(server
                .getInputStream()));
        PrintWriter out = new PrintWriter(server.getOutputStream());
        BufferedReader wt = new BufferedReader(new InputStreamReader(System.in));
        while (true) {
            String str = wt.readLine();
            out.println(str);
            out.flush();
            if (str.equals("end")) {
                break;
            }
        }
        server.close();
    }

}

啰嗦一句,如何运行class文件:使用  java -cp [class文件路径] com.wfg.TestS 

经个人测试,客户端输入信息,服务器端都能正常的回显。

 

跨网络主机的互操作/远程控制/远程桌面的概念设计(二)

标签:远程   print   buffered   局域网   网线   string   sts   病毒入侵   input   

原文地址:http://www.cnblogs.com/muyun/p/7671382.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!