Перечень запрещенных сайтов доступен в виде списка строк. Каждая строка имеет следующий формат:
DATE;URLs;DOMAINs;IPs
Например:
2017-11-02;http://mp3pulse.su/about;mp3pulse.su;5.61.37.37
Значения разделены точкой с запятой (;) и могут быть пустыми или их может быть несколько, тогда значения разделяются запятыми, например:
2017-11-01;;krutor.org;104.27.131.157,104.27.130.157
Ваша программа должна считывать реестр из файла (прилагается к заданию в виде архива). Пользователь вводит URL сайта, который нужно проверить на предмет блокировки.
Этапы проверки:
-
Есть ли запрошенный URL в списке запрещенных;
-
Извлечь домен из введенного пользователем URL и проверить его по списку (например, используя регулярные выражения);
-
Определить (используя сетевые библиотеки) IP адрес введенного домена и проверить его по списку.
Например, можно использовать класс InetAddress. Код ниже выведет на экран строку "ya.ru/87.250.250.242":
System.out.println(InetAddress.getByName("ya.ru"));