реклама на сайте
подробности

 
 
> lwip DCHP client, lwip 1.3.0 на at91rm9200
sergeeff
сообщение May 29 2008, 13:54
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Коллеги!

Может кто сталкивался. Использую lwip 1.3.0 на at91rm9200 RAW API. Активирую DHCP клиента. Для тестирования организовал микросеть: сервер на MS Server 2008, рабочая станция на XP Home и мое устройство. В устройстве задал netif->hostname = "TestDevice". На сервере, DNS сервер прописывает IP адрес для моего устройства и правильно распознает его hostname. Но если смотрю на сетевые устройства с рабочей станции - вижу только сервер с его именем и саму рабочую станцию. Ping устройства по адресу - проходит, а по имени нет. Сетевые сканеры тоже показывают три IP адреса и только два имени хостов.
Т.е. к устройству невозможно обратиться по имени, только по адресу, что те есть хорошо.

Вопрос в том, что-то надо еще в устройстве определить или же дело в настройках сервера сети?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sergeeff
сообщение Jun 12 2008, 10:02
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Ну с этим делом и помощью коллег с ixbt форума разобрался, добавив option 81 в DHCP клиента, "стимулируюйщая" регистрацию клиента в связке DHCP-DNS в Мicrosoft сетях.

А вот теперь несколько другой вопрос. А как можно сообщить сетевому окружению, что мое tcp/ip устройство является, к примеру, принтером. Какие для этого задействованы механизмы, может кто в курсе?
Go to the top of the page
 
+Quote Post
athlon64
сообщение May 12 2012, 10:50
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 156
Регистрация: 10-03-10
Из: Уфа
Пользователь №: 55 882



Цитата(sergeeff @ Jun 12 2008, 16:02) *
Ну с этим делом и помощью коллег с ixbt форума разобрался, добавив option 81 в DHCP клиента, "стимулируюйщая" регистрацию клиента в связке DHCP-DNS в Мicrosoft сетях.


Не могли бы вы привести сделанные вами изменения?
Тему на ixbt не нашёл


--------------------
Руслан
Go to the top of the page
 
+Quote Post
dxp
сообщение May 12 2012, 15:08
Сообщение #4


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (athlon64 @ May 12 2012, 17:50) *
Не могли бы вы привести сделанные вами изменения?
Тему на ixbt не нашёл

http://electronix.ru/forum/index.php?showtopic=97074&hl=


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
athlon64
сообщение May 14 2012, 07:45
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 156
Регистрация: 10-03-10
Из: Уфа
Пользователь №: 55 882



Цитата(dxp @ May 12 2012, 21:08) *

Печально, присоединяюсь к соболезнованиям

По теме:
Нужно в dhcp.c после выдачи имени хоста в OPTION 12:
Код
    p = (const char*)netif->hostname;
    if (p != NULL) {
      dhcp_option(dhcp, DHCP_OPTION_HOSTNAME, strlen(p));
      while (*p) {
        dhcp_option_byte(dhcp, *p++);
      }
    }


добавить OPTION 81, который будет заставлять DHCP сервер при запросе у него параметров устройству, регистрировать устройство в DNS. Подробности можно посмотреть в RFC 4702.
Код
    p = (const char*)netif->hostname;
    if (p != NULL)
    {
      dhcp_option(dhcp, DHCP_OPTION_CLIENT_FQDN, strlen(p)+3);
      dhcp_option_byte(dhcp, 1);  // 1 или 5
      dhcp_option_byte(dhcp, 0);
      dhcp_option_byte(dhcp, 0);
      
      while (*p)
      {
        dhcp_option_byte(dhcp, *p++);
      }
    }

Теперь, как только устройство получило по DHCP свой IP, его можно пропинговать по имени


--------------------
Руслан
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 18:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.0143 секунд с 7
ELECTRONIX ©2004-2016