powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
10 сообщений из 10, страница 1 из 1
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339057
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Dns-класс позволяет разрешить адрес в имя только если тестируемый комп находится в том же домене, что и тестирующий.

Я могу перехватить вывод команды nslookup host nameserver
Я могу перехватить вывод команды nmap -sn -R --dns-servers nameserver host

Но это как-то не аккуратненько.

Нашел несколько примеров решения обратной задачи. Имя в адрес.

Например, http://www.codeproject.com/Articles/23673/DNS-NET-Resolver-C

Это не то.
Я так понимаю, что на nameserver надо послать какой-то сокет на какой-то порт, но не знаю какой.

Помогите решить задачу или списать готовое решение
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339065
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2,
как тебе удалось не получить результат Dns.GetHostEntry("8.8.8.8") ?


порт 53 UDP, но это изврат
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339086
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ИзопропилCat2,
как тебе удалось не получить результат Dns.GetHostEntry("8.8.8.8") ?


порт 53 UDP, но это изврат
Повторяю. В другом домене.

Есть домен первого уровня. A. В нем лес доменов второго уровня. A.B0, A.B1, A.B2, A.B3.

Нужно из машины в A.B0 узнать имя машины в A.B1
===========
Я последнее время только извратами и занимаюсь.

Вот, например, nbtstat на C#. Тоже получает имя по адресу, но иногда неправильно определяет группу

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
const string sRequest =
    "\xa2\x48\x00\x00\x00\x01\x00\x00" +
    "\x00\x00\x00\x00\x20\x43\x4b\x41" +
    "\x41\x41\x41\x41\x41\x41\x41\x41" +
    "\x41\x41\x41\x41\x41\x41\x41\x41" +
    "\x41\x41\x41\x41\x41\x41\x41\x41" +
    "\x41\x41\x41\x41\x41\x00\x00\x21" +
    "\x00\x01";

    //10.20.202.134
    public static string nbtstat(string ipAddress, int timeout, out string netbiosname, out SocketError errorcode)
    {

        int port = 137;
        string Group = "";
        netbiosname = "";
        errorcode = SocketError.Success;

        byte[] receiveBytes = new byte[512];
        byte[] request = sRequest.Select(r => Convert.ToByte(r)).ToArray();

        using (Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp))
        {
            try
            {
                s.Connect(ipAddress, port);
                s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, timeout);

                s.Send(request);
                s.Receive(receiveBytes);
            }
            catch (SocketException se)
            {

                errorcode = se.SocketErrorCode;
            }
            catch (Exception)
            {
                errorcode = SocketError.SocketError;
            }
        }

        if (errorcode == SocketError.Success)
        {
            int offset = 56;
            int replies = receiveBytes[offset++];
            for (int j = 0; j < replies; j++)
            {
                Byte[] field = receiveBytes.Skip(offset).Take(18).ToArray();
                string name = Encoding.ASCII.GetString(field.Take(15).ToArray());
                byte type = field[15];
                byte cl = field[16];
                offset += 18;
                if (type == 0x0)
                {
                    if ((cl == 0xC4 || cl == 0x84 || cl == 0xa4))
                    {
                        if (Group == "")
                        Group = name.TrimEnd();
                    }
                }
                if (type == 0x0 || type == 0x20)
                {
                    if (cl == 0x44 || cl == 0x4 || cl == 0x24)
                    {
                        if (netbiosname=="")
                        netbiosname = name.TrimEnd();
                    }
                }
            }
        }
        return Group;
    }

...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339096
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2,

ааа, ты про виндовые домены, а не интернетные......
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339127
Камикадзо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилCat2,

ааа, ты про виндовые домены, а не интернетные......
а какая разница?
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339130
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ИзопропилCat2,

ааа, ты про виндовые домены, а не интернетные......
Пэхапешники при слове "Домен" представляют гугол.ком
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339135
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
КамикадзоИзопропилCat2,

ааа, ты про виндовые домены, а не интернетные......
а какая разница?
В интернете доступ к днс-серверам открыт с любого компа
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339214
Фотография serg_tmb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КамикадзоИзопропилCat2,

ааа, ты про виндовые домены, а не интернетные......
а какая разница?

Виндовые домены они как бы сказать политические, ну вертикаль власти там есть
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339239
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
    #39339311
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Cat2Камикадзопропущено...

а какая разница?
В интернете доступ к днс-серверам открыт с любого компа
Через цепочку. Один не смог разрешить - на уровень вверх переходит.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DNS. Как разрешить IP в HOSTNAME в ДРУГОМ домене?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]