Ну вопрос может странный, зачем менять IP адрес компьютера с помощью bat файла, если всё прекрасно меняется через центр управления сетями. А вот и нет. Иногда для удалённой помощи по смене IP адреса, проще на почту отправить скрипт bat и сказать его выполнить. Вот и всё. Или на пример у пользователя пропала возможность просто зайти в центр управления сетями. В общем причин может быть много и IP адрес поможет изменить утилита "командная строка" (cmd) при помощи команды netsh.
Предлагаю ознакомиться с предложениями моих партнёров
Чтобы сменить IP адрес, если это необходимо, сначала надо выяснить текущие настройки сети. Это можно в командной строке при помощи команды
netsh interface ip show address
или того же bat файла
netsh interface ip show address >> ip.txt
Результат команды (отображение текущей конфигурации сетевого интерфейса) будет на экране или записанный в файл ip.txt
Нас интересует название интерфейса. Предположим, что он называется LAN и нужно сменить IP адрес на статический 10.245.1.50 без использования DHCP, шлюз 10.245.1.1 маска 255.255.255.0
В этом случае, команда, которая должна быть выполнена из пакетного bat файла будет выглядеть следующим образом:
netsh interface ip set address name="LAN" static 110.245.1.50 255.255.255.0 10.245.1.1
После выполнения этой команды у интерфейса LAN IP адрес сменится на 10.245.1.50
Команда netsh предоставляет широкие возможности по управлению сетевыми настройками из командной строки. Для ознакомления с другими ее функциональными возможностями пользуйтесь справкой при помощи netsh /?
Ох ты ежик. И эти люди будут нам говорить, что винда вся такая простая.
То есть вот ip address add 192.168.0.77/24 dev eth0 это сложно, а netsh interface ip set address name=”Local Area Connection” static 192.168.0.77 255.255.255.0 192.168.0.254 это просто.
Блин, как бы теперь виндовую простоту развидеть, а то ведь ночью приснится, так матрасом не отмахаюсь.
Article Index |
---|
Как изменить IP адрес из командной строки или батника |
Продолжение |
Продолжение |
Пример |
Пример |
Еще примеры |
All Pages |
IP адрес можно изменить при помощи команды netsh. Чтобы правильно сменить IP адрес, сначала надо выяснить текущую конфигурацию. Сделать это можно в командной строке при помощи команды:
netsh interface ip show address
Результат работы этой команды – отображение текущей конфигурации сетевого интерфейса. Нас интересует название интерфейса. Предположим, что он называется FASTNET, и нужно сменить IP адрес на 192.168.1.42, адресация в сети статическая, без использования DHCP, шлюз 192.168.1.1, маска 255.255.255.0 В этом случае, команда, которая должна быть выполнена из пакетного файла будет выглядеть следующим образом:
netsh interface ip set address name="FASTNET" static 192.168.1.42 255.255.255.0 192.169.1.1 1
После выполнения этой команды у интерфейса FASTNET, IP адрес сменится на 192.168.1.42. Команда netsh предоставляет широкие возможности по управлению сетевыми настройками из командной строки. Для ознакомления с другими ее функциональными возможностями пользуйтесь справкой при помощи netsh /?.
Ну что, Вы озабоченно полезли в help по команде netsh, в надежде разобраться, как правильно ей пользоваться? Хмм. От всей души желаю успеха в этом непростом занятии.
А теперь. внимание! Забудьте всю муть, что прочитали выше.
Наиболее удобный метод работы с netsh – скармливание ему конфигурационных сценариев. Тогда IP меняется одним щелчком мышки, и не надо париться с изучением опций netsh. Вот как это делается:
– стандартным способом настраиваются параметры сетевого интерфейса[ов] (через Сетевые подключения и свойства требуемого сетевого подключения).
– после того, как сделанные настройки вошли в силу, выполняем команду netsh dump >cfg01.txt. Она выводит всю текущую конфигурацию сетевых настроек в сценарий cfg01.txt.
– вышеуказанные операции повторяем для всех необходимых сетевых конфигураций. Для каждой конфигурации указываем индивидуальное имя сценария (например, cfg02.txt, cfg03.txt, cfg04.txt и т. д.).
– создаём командные файлы для установки каждой конфигурации с таким содержимым:
netsh exec cfg0x.txt
Эта команда будет настраивать сетевые параметры, которые были сохранены в файле cfg0x.txt.
Всё! Наслаждаемся полученным результатом – больше никогда не понадобится лезть в свойства сетевого интерфейса и муторно вводить вручную циферки, боясь при этом ошибиться. Параметры будут вступать в действие немедленно после окончания работы сценария – работает с DHCP и даже со всеми дополнительными параметрами (DNS, WINS). По поводу такого конфигурирования можно сделать несколько замечаний (выяснено путём эксперимента):
– галочки служб закладки “Общие” – Clients for Microsoft Networks, File and Printer Sharing for Microsoft Networks не могут быть сконфигурированы таким образом (установлены или сброшены).
– в сценарий пишется много лишнего (настраивается маршрутизация, RAS, IGMP и проч., и проч.). Для простой смены IP-адреса можно оставить только 2 секции сценария – сброс интерфейса и назначение параметров IP.
Например, этот сценарий у меня успешно настраивал назначение адреса с помощью DHCP:
#========================
# Конфигурация интерфейса
#========================
pushd interface
reset all
popd
# Конец конфигурации интерфейса
# —————————————–
# Настройка IP-интерфейсов
# —————————————–
pushd interface ip
# Интерфейс настройки IP для "LocalLAN"
set address name="LocalLAN" source=dhcp
set dns name="LocalLAN" source=dhcp register=NONE
set wins name="LocalLAN" source=static addr=192.168.0.1
popd
# Конец настройки интерфейса IP
А этот сценарий назначал статический IP для прямого подключения (без промежуточного роутера и файервола) к ADSL-провайдеру:
#========================
# Конфигурация интерфейса
#========================
pushd interface
reset all
popd
# Конец конфигурации интерфейса
# —————————————–
# Настройка IP-интерфейсов
# —————————————–
pushd interface ip
# Интерфейс настройки IP для "LocalLAN"
set address name="LocalLAN" source=static addr=213.147.35.99 mask=255.255.255.248
set address name="LocalLAN" gateway=213.147.35.97 gwmetric=0
set dns name="LocalLAN" source=static addr=195.34.32.116 register=NONE
add dns name="LocalLAN" addr=212.188.4.10 index=2
set wins name="LocalLAN" source=static addr=none
popd
# Конец настройки интерфейса IP
Еще примеры. Смена IP, netmask и шлюза по умолчанию ( это к примеру "Подключение по локальной сети". Замечено, команда отрабатывает быстрее если к изменяемому интерфейсу не подключен сетевой кабель.):
netsh interface ip set address "" source=static 192.168.1.2 255.255.255.0 192.168.1.1 1
Смена первичного и вторичного dns:
netsh interface ip set dns "" static 192.168.1.100
netsh interface ip add dns "" 192.168.1.101