Я не совсем уверен, как поступить с внешним IP-адресом машины так, как его видит компьютер за пределами сети.
Мой следующий класс IPAddress получает только локальный IP-адрес машины.
public class IPAddress {
private InetAddress thisIp;
private String thisIpAddress;
private void setIpAdd() {
try {
InetAddress thisIp = InetAddress.getLocalHost();
thisIpAddress = thisIp.getHostAddress().toString();
} catch (Exception e) {
}
}
protected String getIpAddress() {
setIpAdd();
return thisIpAddress;
}
}