Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Интернет - Изменение параметров интернет подключения с командной строки или Powershell

Ответить
Настройки темы
Интернет - Изменение параметров интернет подключения с командной строки или Powershell

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Нужно решить такую проблему. С помощью команд командной строки или PowerShell-а сделать подключение к интернету общедоступным для пользователей определенной Wi-Fi сети. Помогите пожалуйста, спасибо.

Отправлено: 18:17, 21-02-2013

 

Пользователь


Сообщения: 70
Благодарности: 7

Профиль | Отправить PM | Цитировать


rasdial не подойдет? поподробней опишите: подключение к интернету откуда идет? к пк по веревке, от пк по вафле?

Отправлено: 09:52, 22-02-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


rasdial -на сколько знаю, как и rasphone, подключает или отключает соединение.
Есть подключение по витухе к ноуту(например "Bill"), а ноут, в свою очередь, раздает инет от витухи по вафле(например "My_WLAn"). Мне нужно провернуть следующие манипуляции:
Bill=>Свойства=>Доступ=>Разрешить другим пользователям сети использовать подключение к Интернету данного компа(поставить галочку)=>У выпадающем меню "Выберите подключение к частной сети" выбрать "My_WLan"=>ОК.

Все это нужно сделать через командную строку или через PowerShell.

Отправлено: 19:13, 24-02-2013 | #3


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Ярослав_Остапчук@vk,
Код: Выделить весь код
<#

.SYNOPSIS

Конфигурирование Internet Connection Sharing.

.EXAMPLE

ICS -List
ICS -External 1 -Internal 2
ICS -External 1 -Disable
ICS.ps1 -External "Internet" -Internal "Local Network" -Name
ICS.ps1 -List | Where {$_.SharingEnabled} | Foreach {ics.ps1 -External $_.Index -Disable}
#>

param (
		#Индекс внешнего интерфейса
		$External,
		#Индекс внутреннего интерфейса
		$Internal,
		#Отображать ли список интерфейсов
		[switch]$List,
		#Отключить ICS
		[switch]$Disable,
		#Задать имя вместо индекса
		[switch]$Name
	  )

#Включить или отключить ICS на заданном интерфейсе
Function Set-ConnectionSharing($netint,$type)
{
	switch($netint)
	{
		#Отключить ICS
		{$_.SharingEnabled -eq $true -and $Disable} {$_.DisableSharing();break}
		{$_.SharingEnabled -eq $true} {"Internet Connection Sharing is enabled";break}
		#Включить ICS
		{$_.SharingEnabled -eq $false –and !$Disable} {$_.EnableSharing($type);break}
		{$_.SharingEnabled -eq $false –and $Disable} {"Internet Connection Sharing is disabled";break}
		default {"Interface not found" }
	}
}

Function Get-InetInterface
{
	$netint = @()
	foreach ($i in $hnet.EnumEveryConnection)
	{
		$netconprop = $hnet.NetConnectionProps($i)
		$inetconf = $hnet.INetSharingConfigurationForINetConnection($i)
		$netint += New-Object PsObject -Property @{
				Index = $index
				Guid = $netconprop.Guid
				Name = $netconprop.Name
				DeviceName = $netconprop.DeviceName
				Status = $netconprop.Status
				MediaType = $netconprop.MediaType
				Characteristics = $netconprop.Characteristics
				SharingEnabled = $inetconf.SharingEnabled
				SharingConnectionType = $inetconf.SharingConnectionType
				InternetFirewallEnabled = $inetconf.InternetFirewallEnabled
				}
		$index++
	}
	$netint
}

#SHARINGCONNECTIONTYPE - для внешнего интерфейса
New-Variable -Name public -Value 0 -Option Constant
#SHARINGCONNECTIONTYPE - для внутреннего интерфейса
New-Variable -Name private -Value 1 -Option Constant
#Счетчик
New-Variable -Name index -Value 1
#Создаем ComObject типа HNetCfg.HNetShare.1
$hnet = New-Object -ComObject HNetCfg.HNetShare.1
#Отображает список доступных интерфейсов

if ($List)
{
	Get-InetInterface
}

else
{
	 #Получаем индекс по заданному интерфейсу
	 If ($Name -and ($External -or $Internal))
	 {
	 	$allint = Get-InetInterface
		$External = $allint | Where-Object {$_.Name -eq $External} | Select-Object -ExpandProperty Index
		$Internal = $allint | Where-Object {$_.Name -eq $Internal} | Select-Object -ExpandProperty Index

	 }
	 #Получаем список всех доступных интерфейсов и присваиваем переменной
	 $netint = $hnet.EnumEveryConnection | foreach {$hnet.INetSharingConfigurationForINetConnection($_)}
	 if ($External -and $Internal)
	 {
		 Set-ConnectionSharing $netint[$External-1] $public
		 Set-ConnectionSharing $netint[$Internal-1] $private
     }
	 elseif ($External)
	 {
	 	Set-ConnectionSharing $netint[$External-1] $public
	 }
	 elseif ($Internal)
	 {
	 	Set-ConnectionSharing $netint[$Internal-1] $private
	 }
	 else {"Parameters not set"}
}
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:44, 24-02-2013 | #4


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Kazun, а Вы можете подробнее объяснить каким образом мне использовать этот код? в какой среде? Спасибо.

Отправлено: 10:20, 25-02-2013 | #5


Аватара для Black_Sun

Новый участник


Сообщения: 38
Благодарности: 2

Профиль | Отправить PM | Цитировать


Ярослав_Остапчук@vk,
Если ещё актуально, то пользоваться можно так:
Помещаете скрипт выше в файл ics.ps1 в папку windows
и далее создаёте к примеру на рабочем столе рандомный .ps1 файл с содержимым
Код: Выделить весь код
ics -External "Local Network" -Internal "wifi" -Name
данный код расшарит локалку на wifi

естессно что бы запускался при двойном клике надо в реестре HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell
поменять местами значения (по умолчанию) из разделов 0 и Open в подразделах Command


p.s. А вообще вот, сделал скрипт на AutoIt
https://dl.dropboxusercontent.com/u/...wifi-share.exe

Последний раз редактировалось Black_Sun, 15-10-2013 в 09:08. Причина: Добавил скрипт


Отправлено: 15:46, 14-10-2013 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Интернет - Изменение параметров интернет подключения с командной строки или Powershell

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] в проводнике неактивны пункты запуска командной строки и PowerShell lora.1 Microsoft Windows 8 и 8.1 4 12-02-2013 17:05
PowerShell - [решено] Изменение строки таблицы в базе данных MySQL при помощи Windows PowerShell Dezmond Скриптовые языки администрирования Windows 5 28-09-2012 15:03
Интерфейс - [решено] изменение разрешения дисплея из командной строки BZone Microsoft Windows 2000/XP 1 11-08-2008 16:48
[решено] Изменение имени компьютера из командной строки brudershaft Автоматическая установка Windows 2000/XP/2003 4 09-08-2008 23:54
Изменение темы с помощью командной строки by_np Автоматическая установка приложений 1 31-03-2007 08:47




 
Переход