我们知道,在上一章末我们提到了,目的主机是不能在局域网内的,那么如何让两个处于不同局域网之间的主机通信呢?
我们假设两台主机:
主机A:192.168.1.105
主机B:192.168.1.105
(如果对这两个IP地址为什么一样的话,建议先读读前篇文章)
我们思考一下原因,由于当两方都处在各自局域网的时候,拥有的都是私网IP地址,我们让A去联系主机B,A的路由器根据B的私网IP地址(192.168.1.105)去寻址的话,哎呦,还找到了主机,进行一下通讯,还成功了? 这里给个TCP程序:(实现A给B发送一个字符串,在B上显示,我们使用的是TCP连接,UDP也行)
(1)输入B的私网地址通讯
import java.io.*; //服务器端,我们假设这是B
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServer {
private static final int PORT = 9999;
public static void main(String[] args) throws IOException {
// 启动TCP服务器
ServerSocket serverSocket = new ServerSocket(PORT);
System