Ubuntu не може пінг імені хоста, але може пінг IP?


14

ну я просто зайшов у світ Ubuntu для адміністрування. Я знайшов подібні потоки, за винятком того, що я можу пінг власного імені хоста та IP-адреси, і мої вікна можуть пінг мого імені Linux Linux, але Ubuntu не може пінг імені хоста Windows.

Проблема:

  • У мене є 4 комп'ютери з Windows, і у мене є 1 комп’ютер Ubuntu
  • Мій Windows Computer може пінг-програму Ubuntu Computer за іменем хосту та за IP-адресою. Також Net View (cmd запит) відображає ім'я хоста Ubuntu Computer.
  • Комп'ютер Ubuntu може Ping лише за IP-адресою, а не за іменем хоста. Я також встановив Samba.
  • Комп'ютер Ubuntu може пінг себе за IP-адресою та ім'ям хоста
  • Я можу використовувати команду arp і відображатимуть усі комп'ютери IP в мережі, але тільки за IP-адресою.

Як це так, що я можу пінгувати лише за IP-адресою, а не за іменем хоста на комп'ютерах Windows? Але Ubuntu може пінг себе за IP-адресою та ім'ям хоста, а комп'ютери з Windows можуть пінінгувати Ubuntu також по імені хоста?


Спробуйте ім'я хоста в ALL CAPS. це може бути хитрість.
jrg

Так, я спробував це, але не пощастило. = (Хтось сказав, щоб додати .local наприкінці. Мої співробітники сказали, що я повинен налаштувати мережу, щоб вона вказувала на маршрутизатор, щоб вона зрозуміла. Тож я спробую це, і якщо це спрацює, я піду вперед і опублікуйте відповідь
user2805313

Це може бути проблема сервера DNS. Налаштуйте настройки DNS-сервера правильно. Можливо, ці два джерела можуть вам допомогти. serverfault.com/questions/389522/… . askubuntu.com/questions/23011/… .
Росомаха

Відповіді:


22

Описана тут проблема може взагалі не пов’язана з DNS.

Ви повинні знати, що Windows може вирішити ім'я хоста Windows до його IP за допомогою інших механізмів, ніж стандартний DNS: пошук NetBIOS, WINS, ...

Як ви сказали, у вас на Ubuntu встановлено Samba, це, мабуть, те, що відбувається. На всіх ваших комп'ютерах Windows, можливо, поза межами коробки, ім'я Windows має вказати його IP-адресу. Коли Samba встановлений на Ubunut, для вашого ПК з Windows вони бачать ПК Ubuntu як ПК з Windows, і таке ж дозвіл можливо.

Ви говорите, що ви працюєте net viewв Windows і бачите свій ПК Ubuntu, тому ім'я NetBIOS добре опубліковане у вашій мережі, тому воно працює з Windows.

Щоб досягти такої ж поведінки в Ubuntu, як у Windows, вам доведеться встановити та налаштувати додаткові фрагменти програмного забезпечення. Вам потрібно додати бібліотеку пошуку, яка дозволить Ubuntu конвертувати імена NetBIOS в IP. Ця бібліотека міститься в пакеті libnss-winbind .

Як і будь-який інший пакет Ubuntu, ви встановлюєте його, виконуючи sudo apt-get install libnss-winbind. Можливо, бібліотека вже встановлена, ви можете перевірити її наявність, зробивши це dpkg -l|grep libnss-winbind.

Після встановлення бібліотеки ви повинні увімкнути її у /etc/nsswitch.confфайлі. Цей файл є конфігураційним файлом для NSS ( Name Service Switch ), який визначає, з яких джерел Linux може вирішувати ім'я хоста, імена користувачів, імена груп тощо.
У цьому файлі ви вже маєте рядок, починаючи з hosts:, ймовірно, схожого на це

hosts:          files dns

Це повідомляє вашій системі спочатку заглянути у /etc/hostsфайл, а потім у налаштований DNS, щоб вирішити імена хостів.
Ви повинні змінити таким чином:

hosts:          files dns wins

Зауважте, що порядок файлів слів , dns та win є важливими. Спочатку система перевірить локальний файл на дозвіл, потім запитає сервер DNS і, нарешті, якщо його ще не знайдено, здійснить пошук NetBIOS.

Після того як це буде оновлено, щоб правильно функціонувати, вам також потрібно запустити службу winbind . Пакет, що містить його, є залежністю libnss-winbind , тому він був встановлений уздовж нього.
Зробіть, service winbind startщоб активувати це.


Не забудьте використовувати sudo з командою start win для служби.
Трістан

0

Імена хостів до перетворення IP можуть відбуватися, якщо:

-Ви оголошуєте їх у файлі / etc / hosts (не рекомендується)

-Ви отримуєте це з DNS-сервера.

Я б сказав, що вашою проблемою може бути те, що в конфігурації мережевого інтерфейсу немає сервера DNS або використовується не одна скринька Windows. Якщо вони використовують конфігурацію інтерфейсу DHCP, найчастіше включається конфігурація DNS, а якщо у вашій мережі є сервер домену Windows, вони, швидше за все, використовують його як основний DNS.

Спробуйте: 'nslookup some_machine_name' у командному рядку, щоб побачити, що відбувається. Він підкаже, який сервер ви використовуєте, якщо такий є.

HTH

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.