1 (изменено: Aaroniero, 2011-05-19 20:47:55)

Тема: WSH: сгенерировать DHCP-запрос

Проблема: Провайдер выдает реквизиты пользователям по DHCP. IP-адреса при этом всегда выдаются одни и те же. У меня на компьютере несколько сетевых подключений от разных провайдеров и настроена таблица маршрутизации. Однако, для того чтобы она не сбивалась, мне необходимо прописать реквизиты этого провайдера статично. Но получение реквизитов по DHCP - обязательное требование провайдера, т.к. пока пользователь не запросит аренду своего IP у DHCP сервера, оборудование провайдера не откртоет доступ для его IP в интернет.
В качестве решения видится прописать сетевые реквизиты статично и написать скрипт, который бы при включении компьютера, а затем раз в определенное время, посылал в сеть провайдера "холостой" DHCP-запрос на получение/продление аренды IP-адреса, не прописывая при этом полученные реквизиты на самом интерфейсе.

Вопрос: как это можно сделать? Если обобщить задачу, то хочется написать скрипт, который бы мог сгенерировать и отправить в сеть IP/UDP пакет с определнной структурой.

2

Re: WSH: сгенерировать DHCP-запрос

2 Aaroniero: Приветствую. Возможно ошибаюсь, т.к ранее никогда не пытался такого делать, но - а почему нельзя оставить DHCP включенным, а при загрузке компа после того как комп получит IP, тут же присвоить таблицу маршрутизации ? Или из-за того что DHCP периодически связывается уже после загрузки, таблица снова слетает ?

На счёт запроса... Не уверен, но думаю компонентом MSWinsock.Winsock.1 это можно реализовать, но его придётся ставить отдельно, т.к он не входит в стандартные средства Windows. Тогда уж проще сделать EXE а внутри на API-шках сделать запрос. В принципе это я могу соорудить. Но мне нужно знать какая структура пакета должна быть.

P.S Но это уже совсем другая история. )

Вот что пока что нашёл из примеров ссылка и ссылка 2

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

3

Re: WSH: сгенерировать DHCP-запрос

Между включением компьютера и получением аренды IP адреса происходит задержка. При обновлении аренды таблица маршрутизации перестраивается. Прописать статичный маршрут нельзя, потому что в момент, когда IP еще не получен, маршрут сбросится, что будет просиходить при каждом включении комптьютера и в случаях, если DHCP сервер в какой-то момент не ответил.

За ссылки спасибо, изучу.

4

Re: WSH: сгенерировать DHCP-запрос

Aaroniero, возможно я что-то в постановке задачи упустил... У меня в сети есть DHCP который в качестве шлюза выдаёт 192.168.1.10(сквид). Т.к. мне сквид без надобности, обычно прописываю настройки статически(в качестве шлюза роутер). Так вот, добавил постоянный маршрут на 192.168.0.20(роутер через который сквид в интернет ходит), активировал получение настроек от DHCP - настройки TCP обновились, таблица маршрутизации перестроилась, НО! постоянные маршруты остались. Главное метрику сделать на них меньше чем на маршрутах прописываемых по ответу DHCP сервера(у меня с метрикой 25 маршрут от DHCP, с метрикой 1 - добавленный постоянный маршрут).

Возможно Вы просто добавляли маршруты без ключа -p? Потому что временные маршруты при обновлении с DHCP-сервера как раз таки сбрасываются.

5

Re: WSH: сгенерировать DHCP-запрос

Я не знаю, почему, но при получении или обновлении аренды IP адреса в системе появляется дефолтный маршрут через этого провайдера с метрикой 1, хотя на интерфейсе для него назначена метрика 40.

6 (изменено: BeS Yara, 2011-05-30 08:55:06)

Re: WSH: сгенерировать DHCP-запрос

В свойствах соединения, настройках TCP, на закладке "Параметры IP" случайно метрика жестко не прописана?
Если да, то попробовать назначать метрику автоматически.