Приложение для ПК: проверка доменных имён
Я являюсь вэб-программистом и сейчас работаю над данным проэктом. Все исследования я уже провёл и реализовал главную часть в ПХП. Система оказалась очень ресурсоёмкой, а заказчик не хочет арендовать сервер. Поэтому было принято решение воплотить все те же концепции в приложение для ПК, которое работает из под Винды. Сейчас я опишу, что требуется и как я это реализовал. Любые предложения по улучшению системы приветствуются :))))
---Задание---
Осуществлять быструю проверку доступности большого количества доменных имён. Должно работать для
1. NL
2. BE
3. EU
4. ES
5. CO.UK
6. US
7. DE
8. COM
9. IT
10. MOBI
11. CN
12. RU
11. должно принимать IDN (Internation Domain Names с символами на подобии é, å и тд. и тп.)
---Решение---
Сперва мы прогоняем все имена через консоль. Для винды это
nslookup playboy.be
nslookup fdsdfsdfsdsdvsdvsv.be
.........
Те, котрые были найдены, сразу исключаются из поиска: они точно зарегистрированы. Но дело в том, что некоторые имена зарегистрированы, но не привязаны к нэйм серверам. Пример:
nslookup chili.be
nslookup algeria.be
Записи не будут найдены, хотя эти имена и зарегистрированы. В этом можно убедиться тут:
http://www.dns.be/whois/GetDomainStatus.do?lang=en&domainName=chili.be&imageField.x=0&imageField.y=0
Поэтому тут начинается вторая фаза проверки:
Программа посылает HTTP запросы вэб-интерфейсу и анализирует ответы. После какого-то запроса IP будет временно забанен. В этом случае надо использовать прокси-сервера.
И последняя фича. Так как основное время тратиться на HTTP запросы, то всё выше описанное делается в многопоточном режиме. В моём случае был главный скрипт, который получал задание, делил его и раздавал кусочки клонам второго скрипта, который и осуществлял проверку.
Это основная часть приложения. Кроме этого должно быть место, куда можно вводить группы имён для проверки. Пример:
я через точку с запятой ввожу много имён и называю эту группу "Страны .BE"
Должно быть место, где будут отображаться эти группы. Каждую группы можно отправить на проверку. Тоесть очевидно, что тут прийдётся применять какуе-то БД.
Группу можно удалить, редактировать.
Должно быть место, где можно вывести на экран результаты проверки. Также должна быть возможность скачать результаты проверки в Excel формате.
Выбор как языка (Си, Дэлфи и тд) так и БД за вами. Главное, что бы это не сложно было запустить на ПК с Виндой.