по советам bugsmoran (тоже мне насоветовал!) исправил код. изменения:
- полностью убрана работа с файлами, теперь всё хранится в памяти (за исключением сохранения списка собранных доменов в domains.txt).
- убрана одна зависимость: adns. решил вместо adnshost для проверки правильности сбора доменов использовать dig
- разукрасил помощь (опция -h или просто запуск скрипта без параметров)
- теперь можно задавать свои dns-сервера, кроме гугловских и opendns
(но все равно еще в нескольких местах используются определённые dns-сервера, а не заданные. позже изменю)
- добавлена опция -s для сбора заголовков с веб-серверов
(если указать опцию -ss то заголовки выведутся не целиком, а только Server: )
(для вывода заголовков веб-сервер ищется не только на 80 и 8080 портах, а на всех помеченных "http" портах из hto_ports, которые включают в себя веб-серверы cpanel`и, directadmin`а и других панелей)
- при скане портов выводится текущий порт, чтобы не казалось, будто скрипт завис
предложения по исправлению/улучшению кода приветствуются :)
ссылка в первом посте, или сделайте sh hto.sh -u, у кого скрипт уже есть.
судя по всему, там по очереди роутеры в залах отваливаются.
сначала не отвечали i7, xeon`ы работали, теперь i7 работают, xeon`ы лежат
очень рекомендую http://vaserv.com
извиняюсь, не заметил
> с сапортом русскоговорящим и webmoney чтоб были.
//стыдно не знать енглиш! и paypal завести не намного сложнее, чем webmoney
угу, это печально.
собираюсь грабить 1stat.ru для получения более подробной информации о русских(имеющих домен в зонах .ru/.su) хостерах.
есть подобные сервисы для других зон?
и через несколько секунд получаю бан фаерволом сервера :)
именно это и делается, вдобавок можно проверить точность сбора с помощью adns - сверяется текущий ip домена с проверяемым, если совпадают - домен всё еще на том же ip.
http://ruweb.net/?page=info
выбирайте наименее загруженный сервер, просите перенести аккаунт на него
но это довольно муторно, проще какой-нибудь host -t ANY $domain_name $ns_name :)
цикл с вопросом вынес в функции, основной скрипт стал намного короче. докурю getopts и сделаю "нормальное" меню, и выложу обновление.
bugsmoran, приведите, пожалуйста, пример, как телнетом узнать список (почти)всех доменов на одном IP-адресе
ENELIS, в планах убрать вопросы и сразу выводить всю найденную информацию
наверное, стоит каждую функцию вынести как опцию.
> Вообще я бы быстрее руками посмотрел, что мне надо.
грабить sitedossier и bing руками неудобно :)
> Данные полчаете сомнительной ценности.
зато повышение навыка написания скриптов
> Изучайте функцию getopts
спасибо, покурю!
> нужно один раз написать функцию, а потом ее дергать.
старался по-максимуму, см hto_func
> Изучайте массивы. Не хранят такое в файлах.
чем плохо использование файла?
> Такие вещи выносятся в начало скрипта в отдельную переменную.
ок, вынесу.
=======
спасибо за примеры, перепишу скрипт :)
jahost добавил 05.10.2010 в 04:55
bugsmoran, как в целом впечатление - хорошее дело делаю, или глупость затеял?