Member 13809409 Ответов: 1

Как дать ip-адрес в качестве входных данных на java...если я даю ip-адреса в качестве входных данных, нужно отображать присутствующие на сервере или нет


how to give ip address as a input on java...if i give ip addrees as a input need to display present in the server or not 


Что я уже пробовал:

public class CrunchifyGetIPHostname {
 
    public static void main(String[] args) {
 
        InetAddress ip;
        String hostname;
        try {
            ip = InetAddress.getLocalHost();
            hostname = ip.getHostName();
            System.out.println("Your current IP address : " + ip);
            System.out.println("Your current Hostname : " + hostname);
 
        } catch (UnknownHostException e) {
 
            e.printStackTrace();
        }
    }
}

1 Ответов

Рейтинг:
0

Jochen Arndt

Не совсем ясно, что вы в конце концов хотите сделать, но InetAddress (Java Platform SE 7 )[^] класс предоставляет все необходимые функции.

Непроверенный пример:

// Input: 
//  strIp containing an IP address or a machine name
//  strServer containing a machine name

// Get the IP address to look for as InetAddress
InetAddress ip = InetAddress.GetByName(strIp);
// Get all IP adresses associated with strServer
InetAddress[] serverIps = InetAddress.getAllByName(strServer);
for (int i = 0; i < serverIps.length; i++)
{
    if (ip.equals(serverIps[i]))
    {
        // Is an IP address of the server
    }
}


Member 13809409

упаковка com.techstar.com;

импорт java.net.InetAddress;
импорт java.net.UnknownHostException;

класс IpAdress{

общественная статический недействительным основные (string аргументы[]) бросает UnknownHostException {


// полоса, содержащая IP-адрес или имя машины
// strServer, содержащий имя машины

// Получить IP-адрес для поиска в качестве InetAddress

Строка strIp = "192.168.15.74";
InetAddress ip = InetAddress.getByName(strIp);
Строка strServer="";
// Получить все IP-адреса, связанные с strServer
InetAddress[] ірсервера = InetAddress.getAllByName(strServer);
for (int i = 0; i < serverIps.length; i++)
{
если (ИС.равно(ірсервера[я]))
{
System.out.println("IP сервера присутствует" +ip);
}
еще {
System.out.println(" ip отсутствует" +ip);
}
}

}}

Jochen Arndt

Вы должны определить и инициализировать строки strIp и strServer (например, путем чтения с консоли).

Это ваш настоящий вопрос: Как прочитать строку с консоли?
То есть базовые знания Java и ответы на них можно найти на веб-исследований.

Member 13809409

192.168.15.74 ИС присутствует на сервере, но его не показывает не предъявите, пожалуйста, решить

Jochen Arndt

Я не могу решить эту проблему, потому что у меня нет доступа к системе с локальным IP-адресом подсети.

Просто распечатайте найденные IP-адреса внутри цикла:
System.out.println(" Server " + strServer + " has IP " + serverIps[i].getHostAddress());
Обратите внимание, что я использовал getHostAddress (), который печатает IP-адрес, в то время как простой InetAddress использует toString (), который может печатать имя.