none
последовательность разрешения имен

    Вопрос

  •  

    На курсах нас учили, что последовательность такова:

     

    1. Кэш/hosts
    2. DNS
    3. NetBIOS Name Cache
    4. WINS
    5. Broadcast
    6. lmhosts

    Вчера проводил такую процедуру.

     

    Был хост AAA.DOMAIN.RU. Хочу что бы обращаясь к нему клиента бросали на BBB.DOMAIN.RU. Ну я и прикрутил CNAME в DNS. Очистил кеш и лезу по SMB. А мне в ответ, что "Logon failure: the target account name is incorrect". Я быстро смекнул в чем дело, вывел AAA из домена и переименовал его, но не совсем понял физику процесса. Почему возникает такой конфликт?

    25 декабря 2007 г. 9:46
    Модератор

Ответы

  • Потому что разрешение имен netbios и имен host - отчасти тайна покрытая мраком, какой процесс разрешения будет запущен. Если вы набираете имя в браузере http://host, или делаете ping  - то hostname, через dns в первую очередь. А когда делаете cd \\netbios_name\c$ - то netbios, и его методы разрешения. А netbios разрешается вот так

    http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/prork/prcc_tcp_gclb.mspx?mfr=true

    25 декабря 2007 г. 12:59
  • When using a Windows Sockets application, a user specifies either an IP address or a host name (also known as a domain name). If the user specifies a host name, TCP/IP for Windows XP and Windows Server™ 2003 attempts to resolve the name to an IP (IPv4 or IPv6) address. If the user specifies an IP address, name resolution is not necessary.

  • When using a network basic input/output system (NetBIOS) application, a user specifies a computer name, which the application converts into a 16-character NetBIOS name. TCP/IP for Windows XP and Windows Server 2003 attempts to resolve the NetBIOS name to an IPv4 address.

     

     

    и из вот этого документа

    https://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/cnet/cnbc_imp_wcug.mspx?mfr=true

    Windows 2000 NetBT Internet/DNS Enhancements

    It is possible to connect from one Windows 2000–based computer to another using NetBT over the Internet. To do so, some means of name resolution has to be provided. Two common methods are the Lmhosts file or a WINS server. Several enhancements were introduced in Windows NT 4.0 and carried forward in Windows 2000 to eliminate these special configuration needs.

    It is now possible to connect to a NetBIOS over TCP/IP resource in two new ways:

    Use the command net use \\<ip address>\<share_name> . This eliminates the need for NetBIOS name resolution configuration.

    Use the command net use \\<FQDN>\<share_name> . This allows the use of a DNS server to connect to a computer using its fully qualified domain name (FQDN).

    Examples of using new functionality to map a drive to ftp.microsoft.com at the IP address of 198.105.232.1 are shown here.

    net use f: \\ftp.microsoft.com\data

    net use \\198.105.232.1\data

    net view \\198.105.232.1

    dir \\ftp.microsoft.com\bussys\winnt

     

    и там далее по тексту - "Если имя длиннее 15 символов, или содержит символ '.', начинаем с DNS"

    Но если вы после cd \\host.domain.local\c$ посмотрите nbtstat -c, то увидите в кеше FQDN. Ответ на вопрос - как же фактически разрешилось имя, доподлинно можно пожалуй определить сниффером.

25 декабря 2007 г. 13:23
  •  M.S.D. [mdanshin] написано:

     

    На курсах нас учили, что последовательность такова:

     

    1. Кэш/hosts
    2. DNS
    3. NetBIOS Name Cache
    4. WINS
    5. Broadcast
    6. lmhosts

    Вчера проводил такую процедуру.

     

    Был хост AAA.DOMAIN.RU. Хочу что бы обращаясь к нему клиента бросали на BBB.DOMAIN.RU. Ну я и прикрутил CNAME в DNS. Очистил кеш и лезу по SMB. А мне в ответ, что "Logon failure: the target account name is incorrect". Я быстро смекнул в чем дело, вывел AAA из домена и переименовал его, но не совсем понял физику процесса. Почему возникает такой конфликт?

     

    Все правильно учили Начиная с XP и 2003-го последовательность именно такая (раньше DNS стоял после WINS).

     

    Проблема не в распознавании имен, а в аутентификации:у вас сервер имеет одно имя, а вы обращаетесь по другому имени. Логично, что не работает, иначе злоумышленникам было бы возможно подменять один сервер другим. (Тем более что при использовании FQDN имени в AD прежде всего работает Keberos, а spn-ны сервисов сервера в AD вы не меняли.)

    25 декабря 2007 г. 14:02
    Модератор
  • Все ответы

    • Потому что разрешение имен netbios и имен host - отчасти тайна покрытая мраком, какой процесс разрешения будет запущен. Если вы набираете имя в браузере http://host, или делаете ping  - то hostname, через dns в первую очередь. А когда делаете cd \\netbios_name\c$ - то netbios, и его методы разрешения. А netbios разрешается вот так

      http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/prork/prcc_tcp_gclb.mspx?mfr=true

      25 декабря 2007 г. 12:59
    • When using a Windows Sockets application, a user specifies either an IP address or a host name (also known as a domain name). If the user specifies a host name, TCP/IP for Windows XP and Windows Server™ 2003 attempts to resolve the name to an IP (IPv4 or IPv6) address. If the user specifies an IP address, name resolution is not necessary.

    • When using a network basic input/output system (NetBIOS) application, a user specifies a computer name, which the application converts into a 16-character NetBIOS name. TCP/IP for Windows XP and Windows Server 2003 attempts to resolve the NetBIOS name to an IPv4 address.

       

       

      и из вот этого документа

      https://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/cnet/cnbc_imp_wcug.mspx?mfr=true

      Windows 2000 NetBT Internet/DNS Enhancements

      It is possible to connect from one Windows 2000–based computer to another using NetBT over the Internet. To do so, some means of name resolution has to be provided. Two common methods are the Lmhosts file or a WINS server. Several enhancements were introduced in Windows NT 4.0 and carried forward in Windows 2000 to eliminate these special configuration needs.

      It is now possible to connect to a NetBIOS over TCP/IP resource in two new ways:

      Use the command net use \\<ip address>\<share_name> . This eliminates the need for NetBIOS name resolution configuration.

      Use the command net use \\<FQDN>\<share_name> . This allows the use of a DNS server to connect to a computer using its fully qualified domain name (FQDN).

      Examples of using new functionality to map a drive to ftp.microsoft.com at the IP address of 198.105.232.1 are shown here.

      net use f: \\ftp.microsoft.com\data

      net use \\198.105.232.1\data

      net view \\198.105.232.1

      dir \\ftp.microsoft.com\bussys\winnt

       

      и там далее по тексту - "Если имя длиннее 15 символов, или содержит символ '.', начинаем с DNS"

      Но если вы после cd \\host.domain.local\c$ посмотрите nbtstat -c, то увидите в кеше FQDN. Ответ на вопрос - как же фактически разрешилось имя, доподлинно можно пожалуй определить сниффером.

    25 декабря 2007 г. 13:23
  •  M.S.D. [mdanshin] написано:

     

    На курсах нас учили, что последовательность такова:

     

    1. Кэш/hosts
    2. DNS
    3. NetBIOS Name Cache
    4. WINS
    5. Broadcast
    6. lmhosts

    Вчера проводил такую процедуру.

     

    Был хост AAA.DOMAIN.RU. Хочу что бы обращаясь к нему клиента бросали на BBB.DOMAIN.RU. Ну я и прикрутил CNAME в DNS. Очистил кеш и лезу по SMB. А мне в ответ, что "Logon failure: the target account name is incorrect". Я быстро смекнул в чем дело, вывел AAA из домена и переименовал его, но не совсем понял физику процесса. Почему возникает такой конфликт?

     

    Все правильно учили Начиная с XP и 2003-го последовательность именно такая (раньше DNS стоял после WINS).

     

    Проблема не в распознавании имен, а в аутентификации:у вас сервер имеет одно имя, а вы обращаетесь по другому имени. Логично, что не работает, иначе злоумышленникам было бы возможно подменять один сервер другим. (Тем более что при использовании FQDN имени в AD прежде всего работает Keberos, а spn-ны сервисов сервера в AD вы не меняли.)

    25 декабря 2007 г. 14:02
    Модератор
  •  

    допустим на сервере стоит DNS служба

    но при этом в сетевых настройках прописан другой DNS не локальный

    какой из этих DNS будет использоваться локальной системой?

    26 декабря 2007 г. 7:13
  •  sie написано:

    Все правильно учили Начиная с XP и 2003-го последовательность именно такая (раньше DNS стоял после WINS).

     

    Проблема не в распознавании имен, а в аутентификации:у вас сервер имеет одно имя, а вы обращаетесь по другому имени. Логично, что не работает, иначе злоумышленникам было бы возможно подменять один сервер другим. (Тем более что при использовании FQDN имени в AD прежде всего работает Keberos, а spn-ны сервисов сервера в AD вы не меняли.)

     

    Если внимательно смотреть в сниффер, то можно увидеть, что если обращаться по single label name, то запрос на разрешение имени netbios вполне может идти вперед запроса DNS. . Чей ответ используется в дальнейшем, для меня небольшая загадка.

     

    Если обращаемся по FQDN, имя netbios не запрашивается, в том случае, если оно успешно разрешается DNS.

     

    Чтобы избавиться от путаницы, надо наконец убить netbios.

    26 декабря 2007 г. 7:27
  •  Gloft написано:

     

    допустим на сервере стоит DNS служба

    но при этом в сетевых настройках прописан другой DNS не локальный

    какой из этих DNS будет использоваться локальной системой?

     

    Очевидно тот, кто указан в свойствах сетевого адаптера.

    26 декабря 2007 г. 7:29
  •  Michael Gotch написано:
     sie написано:

    Все правильно учили Начиная с XP и 2003-го последовательность именно такая (раньше DNS стоял после WINS).

     

    Проблема не в распознавании имен, а в аутентификации:у вас сервер имеет одно имя, а вы обращаетесь по другому имени. Логично, что не работает, иначе злоумышленникам было бы возможно подменять один сервер другим. (Тем более что при использовании FQDN имени в AD прежде всего работает Keberos, а spn-ны сервисов сервера в AD вы не меняли.)

     

    Если внимательно смотреть в сниффер, то можно увидеть, что если обращаться по single label name, то запрос на разрешение имени netbios вполне может идти вперед запроса DNS. . Чей ответ используется в дальнейшем, для меня небольшая загадка.

     

    Если обращаемся по FQDN, имя netbios не запрашивается, в том случае, если оно успешно разрешается DNS.

     

    Чтобы избавиться от путаницы, надо наконец убить netbios.

     

    Со сниффером не поспоришь  Вот нашел описание для Windows Server 2003 http://technet.microsoft.com/en-us/library/bb727005.aspx  - подробно и с картинками.

     

    А netbios не убрали и в 2008-м

     

    26 декабря 2007 г. 8:41
    Модератор
  • С новыми силами после Абзаково, Илья начал разгребать технет.

    26 декабря 2007 г. 9:13
  • Не трави душу

    26 декабря 2007 г. 9:36
    Модератор