问题
So I have created a Java code to handle clients when triggered by my TP-Link WR841N. The problem is that I am getting no response at all, I have already configured my router for Port Forwarding and Port Triggering but it is not working. I am not getting any output on console. Please help me out...
Main.java
package com.geek;
public class Main {
public static void main(String[] args) {
DHCP_CustomServer server = new DHCP_CustomServer(2222);
server.run();
}
}
DHCP_CustomServer.java
package com.geek;
import java.net.*;
import java.io.*;
class DHCP_CustomServer implements Runnable{
public static int portAddress;
static Socket socket;
static ServerSocket serverSocket;
public DHCP_CustomServer(int port){
portAddress = port;
}
@Override
public void run(){
//Intialising server socket
try {
serverSocket = new ServerSocket(portAddress);
} catch (IOException e) {
e.printStackTrace();
}
Thread waitForClient = new Thread(() -> {
String user;
while (true){
try {
//Accepting Connection
socket = serverSocket.accept();
System.out.println(socket.getInetAddress());
System.out.println("Connection Established");
//Reader
InputStreamReader inputStream = new InputStreamReader(socket.getInputStream());
user = new BufferedReader(inputStream).readLine();
System.out.print(user);
} catch (IOException e) {
e.printStackTrace();
}
}
});
waitForClient.start();
}
}
Router Config
Images:
Port Forwarding Config - Virtual Servers
Port Triggering Config
来源:https://stackoverflow.com/questions/54831804/handling-router-clients-over-socket-in-java