Я работаю в центре обработки данных и работаю на серверах в разных точках мира. У нас есть около 10 прокси-серверов, и нет хорошего способа узнать, какой прокси-сервер использовать на каком сервере / домене / влане и т. Д. ... Не спрашивайте, почему, поскольку мне сказали «спросите безопасность». Как бы то ни было, я хотел использовать пакетный сценарий для Telnet с каждым прокси-сервером на порту 8080. У меня есть IP-адреса прокси-сервера, и я знаю, что они слушают 8080. Как я мог из сценария проверять один за другим и возвращаться с ответом ?
Надеюсь, это имеет смысл. В этот раз мне нужно зайти в настройки Интернета -> соединение -> прокси и попробовать один за другим. А это серверы windows 03 и 08.
Любая помощь приветствуется!
Чтобы уточнить. Я ищу сценарий, который просматривает список известных прокси и портов и проверяет подключение.
Получил следующую ошибку со скриптом PowerShell
Я бы использовал другой инструмент командной строки, например wget вместо. Их будет намного легче смешивать. wget не предназначен для отправки запросов напрямую к прокси, но вы все равно получите ответ от прокси (возможно, 502 или что-то в этом роде), и это все, что вам нужно с учетом ваших требований.
wget myproxy1:8080
wget myproxy2:8080
wget myproxy3:8080
...
Вы получите какой-то HTTP-ответ от тех, кто отвечает, и тайм-аут соединения для тех, кто не отвечает.
РЕДАКТИРОВАТЬ:
Вот что-то с использованием Powershell:
$proxyArray = @("proxy1.mynet.com:8080","proxy2.mynet.com:8080")
foreach ($proxy in $proxyArray) {
$httpRequest = [System.Net.WebRequest]::Create("http://www.google.com")
$httpRequest.Proxy = new-object -typename System.Net.WebProxy -argumentlist $proxy
$httpRequest.GetResponse()
}
Используя это, вы получите какой-то HTTP-ответ от прослушивающих прокси-серверов, тайм-аут соединения или ошибку хоста / разрешения имени.
Настройте proxy.pac на своих клиентах. Посмотрите по этой ссылке, как это настроить. http://en.wikipedia.org/wiki/Proxy_auto-config
HTH