Как заставить Windows 7 запрашивать «свежий» IP-адрес с DHCP-сервера?


45

Я устраняю определенную проблему с моей конфигурацией DHCP, и мне нужно, чтобы мой компьютер с Windows запрашивал «свежий» IP-адрес, чтобы я мог видеть, какой адрес DHCP-сервер дает по умолчанию.

Когда я ipconfig /releaseзатем ipconfig /renew, Windows «предлагает» ее старый IP адрес сервера DHCP (только что проверил с Wireshark, исходное сообщение «DHCP Discover» имеет опциональную 50 (запрашиваемый адрес) со старым IP в Windows машины).

Пробовал отключать / включать сетевой адаптер. Такое же поведение

Вопрос: Как заставить Windows просто запросить новый IP-адрес, не предлагая свой старый IP-адрес.


Это в вашей домашней сети? Если это так, назначение статического IP может работать нормально.
Саймон Шихан

4
Да, статический IP будет работать ... Однако я специально заявил, что устраняю проблему с DHCP, поэтому мне нужен ответ на мой вопрос, а не обходной путь.
Хаимг

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

1
@Iszi: это не помогает Windows предложит тот же IP при продлении аренды.
Хаимг

1
Запустить виртуальную машину или другую коробку и установить, что статически захватить этот IP? Было бы более полезно, если бы вы могли описать проблему, которую вы действительно устраняете.
Изи

Ответы:


15

Там нет процедуры, стоящей усилий. Он хранится в разделе реестра, но эта часть реестра кэшируется во время работы сетевой подсистемы. Таким образом, вам придется выключить систему, загрузить другую установку ОС, смонтировать реестр, удалить ключ, а затем перезагрузиться в исходную установку ОС. Ключ - DhcpIPAddress, но он используется только при перезагрузках, поэтому вы не можете его изменить.

Удаление и переустановка сетевого адаптера может работать.


2
У меня сработала холодная перезагрузка.
Рэй Вудкок

29

Запуск, net stop dhcpа затем, net start dhcpкажется, работает на моей тестовой системе Windows 7. Результирующий пакет обнаружения DHCP не включает опцию 50.

Я думаю, это ваш выбор, если вы хотите запустить ipconfig /releaseсначала, чтобы сообщить DHCP-серверу, что IP-адрес доступен (он должен удалить существующую аренду на DHCP-сервере).

Итак, подведем итог, весь процесс будет (в окне администратора cmd):

ipconfig /release
net stop dhcp
net start dhcp
ipconfig /renew

Если вы хотите указать только соответствующее соединение Local*(например, Local Area Connection ), то вы можете сделать:

ipconfig /release Local*
net stop dhcp
net start dhcp
ipconfig /renew Local*

Скриншот


4
Только что проверил. Не работает.
Basilevs

4
Работа для меня Я сделал (в окне CMD администратора): ipconfig/release затем net stop dhcpзатем net start dhcpзатем , ipconfig/renewи я получил новый адрес.
Грегор

1
ipconfig /renew Local*просто печатает информацию об интерфейсе, как будто я набрал ipconfigбез аргументов. Редактировать: Нет! Он печатает информацию (для всех интерфейсов, а не только для тех, которые соответствуют Local *) и обновляет аренду.
Каз

это сработало для меня, но я также вычистил dhcp аренды и DNS прямой / обратный поиск
Пит

Это также работало для меня, используя приглашение командной строки администратора.
Бибз

17

Это будет работать:

Если ваш драйвер Ethernet поддерживает его, вы можете изменить MAC-адрес на сетевой карте . Обычно это относительно безболезненная процедура. Затем ipconfig /renewдолжен дать вам новый IP-адрес.

Введите описание изображения здесь


Это было так же безболезненно, как и быстро.
Джо Джонстон

6

Я нашел это решение здесь.

  1. Сброс WinSock и стека TCP / IP
    a. Откройте командную строку от имени администратора.
    Б. Сброс записей WINSOCK: netsh winsock reset catalog
    c. Сбросить стек TCP / IP: netsh int ip reset reset.log
    d. Перезагрузите компьютер (вы можете сначала запустить обе команды, я стараюсь поместить несколько команд в блокнот, а затем скопировать и вставить в окно команд).

  2. Обновите ваш IP-адрес
    Настройте параметры IP-адреса, статические или динамические, и все готово


Только тот, который работал
Аки

4

Вы можете попробовать настроить DHCP-сервер для выдачи адресов в диапазоне, который исключает старый адрес. Например, если старый адрес xxx101, установите диапазон от xxx120 до 130. Я знаю, что вы заинтересованы в определении поведения сервера по умолчанию, так что это может оказаться бесполезным, если оно изменяет то, что вы хотите определить.


3

Шаг 1. Запишите IP-адрес, от которого вы хотите избавиться на клиенте:

ipconfig /release
run net stop dhcp

Шаг 2. На втором компьютере временно назначьте ручной IP-адрес, который вы записали на шаге 1. На первом компьютере, на котором вы пытаетесь изменить резервирование DHCP:

net start dhcp
ipconfig /renew

Шаг 3. Первый компьютер теперь получит следующий IP-адрес, который предложит DHCP. Удалите статический адрес на дополнительном компьютере, вернувшись к настройке DHCP.


Дублирует ответ Йоахима Зауэра.
Басилевс

Нет, Иоахим не упомянул второй компьютер, на котором удерживался нежелательный адрес при выдаче команд на первом компьютере.
Фабрицио Араужо

2

Я только что нашел обходной путь. Это действительно требует изменения конфигурации сервера DHCP , однако:

  • Завершите работу системы-нарушителя (или просто отключите сетевой адаптер)
  • Удалить аренду на сервере DHCP (необязательно, в зависимости от сервера)
  • Настройте регистрацию для исходного IP-адреса (используя любой случайный MAC-адрес)
  • Загрузите клиент (или повторно включите сетевой адаптер)
  • Удалить фиктивную регистрацию

1

Я обнаружил, что самый простой способ заставить IP-адрес покоиться - назначить тот же IP-адрес DHCP другому ПК, что и статический IP-адрес, ниже приведены шаги:

  1. Обратите внимание на ваш DHCP IP
  2. Выключите ваш компьютер
  3. Назначьте IP-адрес другому компьютеру как статический IP-адрес
  4. Запустите свой компьютер
  5. IP будет изменен автоматически.

Это можно сделать с помощью адаптеров Ethernet и WIFI вместо двух ПК.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.