guuuuk, не за что, но те, кто выше писали тоже правы, мы технари, очень любим точные формулировки, правильно заданный вопрос - половина ответа =) а на размытый вопрос можно дать только размытый ответ)
guuuuk, в таком случае просто выполните вашу команду с добавлением в конце -p и номер порта, на который вы изменили стандартный порт ssh на удаленном сервере
guuuuk, Если я правильно понял, вы пытаетесь подключиться по SSH к удаленному серверу из Windows Powershell с установленным OpenSSH клиентом, если это так, для указания порта, к которому вам нужно подключаться (в случае, если на удаленном хосте порт был изменен со стандартного 22 на любой другой, например 2222) нужно использовать ключ -p и номер порта установленного на удаленном хосте, пример: ssh username@host -p 2222
Если у вас другая проблема, опишите более детально, откуда пытаетесь, что пытаетесь сделать, какую команду пытаетесь выполнить и т.д.
Подскажите, у меня настроено по аналогии с вами, но VPN в Польше, однако реклама на ТВ появилась польская, как у вас настроено, чтобы еще и рекламы нет?
mdkolpakov,
Первое - Когда вы определяете переменную внутри функции, например $kat_addr в функции Get-Srv, то она определена только внутри этой функции, за ее пределами функции она пуста. Вызывая переменную $kat_addr в функции Get-Kat вы не получите те значения, которые она принимала в функции Get-Srv, $kat_addr будет пуста, отсюда и отсутствие значений в $lol2.
Второе - Настоятельно не рекомендуется вызывать функцию из функции. Сделайте функцию, которая не будет обращаться к другой функции, а если нужен цикл - воспользуйтесь любым из имеющихся, например While и вызывайте из него функции по очереди, сколько нужно. Вывод функции можно привязать к переменным и крутить по кругу, если необходимо.
Третье - что это за командлет такой Get-Children ? Возможно вы имели в виду Get-ChildItem ?
Не делайте так! Когда вы объявляете функцию Get-Srv, в ней вызов функции Get-Kat, а в функции Get-Kat объявляете вызов функции Get-Srv, то в вашем случае при срабатывании блока Else у вас будет бесконечный цикл выполнения без выхода, подумайте над другой реализацией вашего сценария.
Роман Безруков, если прогонять в цикле без задержки - то да, есть иногда сообщения о недоступности, но это как мне кажется из-за того, что файл не успевает на диск записаться, если поставить хотя бы небольшую задержку - то ошибок нет
Alex G., Причиной блокировки файла hosts иногда могут быть антивирусы, проверьте параметры антивируса или попробуйте отключить его, иногда в их настройках бывает отдельный параметр по защите файла hosts, так же могут быть и другие причины блокировки файла, это надо изучать локально, например посмотреть утилитой Process explorer.
Второй момент. Если вы планируете менять IP адрес записей этим скриптом, вам необходимо изменить условия в блоках Where-Object { $_ -notmatch "^$ipAddress1`t$hostName1" }
В той записи, что у вас сейчас скрипт будет просто добавлять новые записи и не будет удалять старые, для изменения нужно блок привести к такому виду Where-Object { $_ -notlike "*$hostName1" }
Drawn, Рекомендую сделать FS - один сервер, DHCP - второй, MS AD - третий. По версиям ОС в теории можно использовать репликацию сервисов (FS/DHCP/MS AD) и на разных версиях ОС 2016/2019/2022, но для удобства администрирования я бы рекомендовал использовать одинаковые версии ОС. Так же вы не ограничены версией ОС, например вы можете произвести миграцию без простоя сервиса, можно развернуть второй контроллер MS AD на MS Server 2022, перенести на него FSMO роли с первого, затем грохнуть первый, и развернуть первый на MS Server 2022. Так же можно поступить и с остальными сервисами. Но можете и не заморачиваться и развернуть все на 2016, поддержка там еще до 27-го года будет. (но я бы поновее сервера выбрал, чтобы не переделывать потом).
Ну для начала Best Practice от Microsoft - 1 сервис - 1 сервер, в вашем случае из этих сервисов DNS+DHCP+AD+FS+GPO
отдельными являются FS, DHCP и DNS+AD+GPO - это работает как один сервис в рамках MS AD
Оптимальным решением будет брать две физические машины, разворачивать на них системы виртуализации и разворачивать на каждой из них набор этих сервисов в отдельных виртуалках.
Теперь об отказоустойчивости, каждый из сервисов поддерживает работу в режиме репликации
MS AD - если вы поднимаете дополнительный контроллер домена - клиенты автоматически будут подключаться к тому, что будет доступен, первый выйдет из строя - подключатся ко второму и наоборот. Там есть нюансы с FSMO ролями, но на вашем уровне об этом можно особо не заморачиваться)
DHCP - разворачиваете второй DHCP сервер, авторизовываете его в AD, настраиваете репликацию с первым и там есть несколько режимов, можно чтобы оба одновременно выдавали адреса или второй будет выдавать только если первый помрет, или есть еще варианты, зависит от настройки, но репликация так же автоматическая.
FS - тут можете использовать встроенный механизм репликации в сервис DFS Namespaces и DFS Replication эти сервисы так же сделают доступ к файловым ресурсам отказоустойчивым, но места требуют х2
pfsenses, Давайте пообщаемся голосом, я расскажу подробнее про кавычки и как их правильно расставлять, писать это очень долго. Можете написать или позвонить мне на телеграм, мой ник @Top_EV