Войти

Показать полную графическую версию : Помогите со скриптом массового пинга доменов


maxload
21-06-2019, 13:36
Всем привет, опять мои нубские вопросы, в одной из прошлых тем мне погли с нечто подобным, но теперь нужно немного другое.

Есть txt со списком доменов, нужно пингануть каждый и вынести в отдельный файл результат этого пинга вместе с доменом и его айпи.

Например, есть такой список:

domen1.com
domen2.com
domen3.com
domen4.com
domen5.com

нужно чтобы после пинга получиллся такой тхт с результатами пинга:

domen1.com 11.22.111.22
domen2.com 111.222.111.222
domen3.com no ping
domen4.com no ping
domen5.com 22.111.22.111

где напротив каждого домена будет записан его айпи в случае удачного пинга.



P.S. Если это более сложно в реализации (пинговать и заносить в список все домены), то пойдет результат, где бы просто записывались те домены что пингуются, а те что не пингуются соотвественно просто не записываются в тхт с результатом пинга.

то есть:
domen1.com 11.22.111.22
domen2.com 111.222.111.222
domen5.com 22.111.22.111

domen3.com, domen4.com (и все что не пинганулись) просто пропуск

Charg
21-06-2019, 18:41
нужно чтобы после пинга получиллся такой тхт с результатами пинга: »
Результат пинга это успешно доставленный ответ на специфический запрос от хоста (гугли ICMP). Если тебе нужно конвертировать доменные имени в айпи - это результат работы резолвера. При этом у хоста может быть несколько айпи. И то что хост не пингуется - совершенно не означает что домен не доступен. Попробуй пингани russia.com (http://russia.com) например. На пинги он не отвечает, хотя сайт прекрасно работает.
На павершеле это делается так:

$infile = "D:\infile.txt"
$outfile = "D:\outfile.txt"
#тут подставляешь свои пути, разумеется

$domains = @()
$result = @()
$domains = Get-Content $infile

foreach ($i in $domains) {
$answer = Resolve-DnsName -Name $i -Type A -ErrorAction SilentlyContinue
if ($null -ne $answer) {
foreach ($one in $answer) {
$result += "$($one.Name) $($one.IP4Address)"
}
}
else {
$result += "$i FAIL"
}
}
$result | Out-File $outfile -Force

Результат
https://i.imgur.com/JQ6VrxV.png

maxload
22-06-2019, 00:42
огромное спасибо тебе за разъяснение!




© OSzone.net 2001-2012