使用 java 的有线/无线 LAN 中的 IP 地址

问题描述 投票:0回答:2

我正在开发一个java服务器客户端应用程序,它可以在有线或无线局域网内的每个oda之间传输文件,我现在的问题是如何检测无线或有线局域网中客户端计算机和服务器计算机的IP地址。底线:如何使用 java 代码来检测两台计算机之间有线或无线 LAN 连接中计算机的 IP 地址。

java sockets ip
2个回答
0
投票

也许 jgroups 可以帮助您:http://www.jgroups.org


0
投票
import java.io.*;
import java.net.*;
import java.util.*; 
import static java.lang.System.out;

public class ListNets {

public static void main(String args[]) throws SocketException, UnknownHostException {
     System.out.println(System.getProperty("os.name"));
     Enumeration<NetworkInterface> nets = NetworkInterface.getNetworkInterfaces();
    for (NetworkInterface netint : Collections.list(nets))
        if (netint.getName().equals("wlan0") || netint.getName().equals("en0")) {
             displayInterfaceInformation(netint);
        }       
}

static void displayInterfaceInformation(NetworkInterface netint) throws SocketException {
    out.printf("Display name: %s\n", netint.getDisplayName());
    out.printf("Name: %s\n", netint.getName());
    Enumeration<InetAddress> inetAddresses = netint.getInetAddresses();
    for (InetAddress inetAddress : Collections.list(inetAddresses)) {

        out.printf("InetAddress: %s\n", inetAddress);
    }
    out.printf("\n");
 }
}  
© www.soinside.com 2019 - 2024. All rights reserved.