Я подключаюсь через MS Telnet, где я вижу вывод.
Я знаю, 0: 0: 0: 0: 0: 0: 0: 0 будет ВСЕМ или подстановочным знаком ... но при чем тут 0: 0: 0: 0: 0: 0: 0: 1?
Какой смысл давать мне это? Почему бы не дать мне IP-адрес, например 127.0.0.1?
Это виртуальный MAC-адрес? Javadoc не был очень информативным.
public InetAddress getInetAddress () Возвращает адрес, к которому подключен сокет. Если сокет был подключен до закрытия, этот метод будет продолжать возвращать подключенный адрес после закрытия сокета.
Возвраты: удаленный IP-адрес, к которому подключен этот сокет, или ноль, если сокетне связан. От https://docs.oracle.com/javase/7/docs/api/java/net/Socket.html#getInetAddress()
ГЛАВНАЯ:
public static void main(String[] args) throws IOException {
/*
* The actual work of the server socket is performed by an instance
* of the {@code SocketImpl} class.
*/
// Open a port to accept connections on 8080
ServerSocket srvrSocket = new ServerSocket(8080);
// Block until someone connects
while (true) {
Socket socket = srvrSocket.accept();
handle(socket);
}
}
private static void handle(Socket socket) throws IOException {
try(
socket;
InputStream is = socket.getInputStream();
OutputStream os = socket.getOutputStream();
) {
// Print welcome
DataUtil.writeStringAsInts(os, socket.getInetAddress().toString());
.
.
.