Не может получить доступ по имени при установке статического IP

Я приложу все усилия для обеспечения как можно большей информации, я все еще довольно плохо знаком с Linux, но у меня есть Сервер Ubuntu 18.04.4 в настоящее время выполнения моего медиасервера, и я пытаюсь установить статический IP.

Я нашел много учебных руководств онлайн, я могу заставить это хорошо работать путем редактирования названного файла 50-cloud-init.yaml, и вот настройки, которые я имел:

network:
    renderer: networkd
    ethernets:
        eno1:
            dhcp4: no
            addresses: [192.168.2.46/18]
            gateway4: 192.168.2.1
            nameservers:
                addresses: [192.168.2.1,1.1.1.1]
            dhcp4-overrides:
                hostname: starlight01
                send-hostname: yes
                use-hostname: yes
    version: 2

Теперь, когда превосходные работы, и я делаю целое sudo netplan apply вещь, и я могу просмотреть свои доли самбы от путем выполнения \\192.168.2.46\ однако, у меня есть несколько приложений, которые полагаются на название машины, не IP, и по некоторым причинам, когда это - динамический IP, я могу ввести \\starlight01\, но это внезапно прекращает работать, когда я использую машину/имя хоста.

Я также хотел бы добавить, что каждая машина останавливает способность получить доступ через название машины.

Когда это имеет статический IP, я могу проверить с помощью ping-запросов IP и получить ответ, но проверка с помощью ping-запросов результатами названия машины в тайм-ауте, но проверка с помощью ping-запросов с Динамическим IP хорошо работает для обоих.

Я также попробовал следующее:

  • перезагрузка моего маршрутизатора и связанных переключателей
  • перезагрузка сервера
  • DNS сбрасывает на моей машине окон
  • перезагрузка моей машины окон
  • удаление dhcp4-overrides раздел упомянутого файла
1
задан 20 March 2020 в 03:41

1 ответ

Ваша клиентская машина всегда соединяется с сервером с помощью IP-адреса. Когда Вы просите, чтобы это соединило использование названия машины, это внутренне преобразовывает имя к IP-адресу с помощью некоторого сервиса. Разнообразие имени-> услуги по конверсии IP существуют, и Вы, вероятно, полагаетесь на DNS (Система доменных имен) в Вашем случае. Другими опциями является WINS, MDNS, LLMNR... Ваша клиентская машина, вероятно, использует Ваш маршрутизатор сети/Wi-Fi (или комбинированная единица маршрутизатора/модема) как сервер DNS, который использует информацию из запросов DHCP для создания локального имени-> таблица отображения IP, которую это использует для ответа на некоторые запросы DNS, сделанные клиентской машиной.

То, что происходит, когда Вам включили DHCP на сервере:

  • Когда сервер должен получить свой собственный IP-адрес, он отправляет запрос DHCP на сервер DHCP; обычно к Вашему маршрутизатору WiFi или router+modem.
  • Запрос DHCP включает название машины, делающей запрос DHCP.
  • Сервер DHCP присваивает IP машине и записывает пару IP/имени во внутренней базе данных.
  • Сервер DHCP передает IP обратно серверу для него для использования.
  • Каждый раз, когда другая система просит IP, связанный с названием сервера с помощью протокола DNS, сервер DNS сначала консультируется с локальной базой данных, созданной сервером DHCP, и предоставляет ответ от что, если существует запись соответствия (иначе, это продолжает запрашивать Интернет в целом).

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

Как упомянуто в одном из комментариев, можно, вероятно, использовать servername.local как имя вместо servername, и это будет работать (это использует MDNS). Linux и я думаем, что клиенты Mac поддерживают это, но Windows не делает, если Вы не установили программное обеспечение не по умолчанию, которое поддерживает этот протокол (например, Добрый день программный стек Apple).

Так как я вижу пути UNC (те, которые запускаются с \) в Ваших вопросах, я предполагаю, что Ваша клиентская машина является Windows, и Вы выполняете Samba на сервере. В этом случае можно сказать Samba действовать как сервер WINS. WINS является другим именем-> протокол отображения IP. Я думаю, что Ваши клиентские машины просто найдут сервер WINS и автоматически начнут запрашивать его для поисков имени, по крайней мере, для протокола совместного доступа к файлам Windows/Samba. В противном случае Вы, возможно, должны также: - включают сервер WINS на Вашем маршрутизаторе и говорят, что Samba для регистрации в нем, или - Настраивают сервер DHCP маршрутизатора, чтобы сказать клиентам о сервере WINS, работающем файловом сервере.

0
ответ дан 7 April 2020 в 23:32

Другие вопросы по тегам:

Похожие вопросы: