Если /etc/resolv.conf
имеет nameserver
значение 127.0.0.1, это, вероятно, означает, что у вас установлен локальный кэширующий преобразователь DNS или даже локальный сервер имен.
Как правило, серверы имен, указанные DHCP -, затем используются в качестве целей для переадресации запросов DNS в случаях, когда локальный кэш/сервер не имеет ответа. Вы можете найти их в /etc/resolv.dnsmasq
, /run/named/named.forwarders
или подобном файле конфигурации, специфичном для кеша/сервера.
В основном, большинство программ будут читать /etc/resolv.conf
. Он указывает программам использовать локальный кэш/сервер, который будет иметь свой собственный файл конфигурации, управляемый DHCP -. Затем локальный кэш/сервер будет использовать серверы, указанные DHCP, в качестве вышестоящего источника DNS.
Наиболее удобным способом является настройка mDNS (Multicast DNS )или LLMNR (Link -Local Multicast Name Resolution ), что позволяет использовать имена хостов вместо IP-адресов. В обоих механизмах хосты сами сообщают свои имена в сети, поэтому нет необходимости в централизованном сервере имен. Вы можете настроить mDNS или LLMNR (или оба )с помощью systemd -networkd.
Проблема с использованием локальных адресов IPv6 link -заключается в том, что они являются просто локальными адресами :link -. Нет сетевого префикса, который указывал бы, какой сетевой интерфейс использовать, поэтому вам придется указать индекс интерфейса после адреса, например:
ping fe80::xxxx:xxxx:xxxx:xxxx%3
Это во многом зависит от того, хотите ли вы развертывать собственное программное обеспечение. Большинство (все? )Одноранговое программное обеспечение, скорее всего, не соответствует ограничениям -Локальные адреса. Если одноранговое программное обеспечение не было специально написано для обработки этого ограничения, оно, скорее всего, не сможет работать.
В отличие от других классов IP-адресов, локальные адреса IPv6 Link -нельзя использовать сами по себе. Другие классы адресов содержат информацию для идентификации сетевого сегмента , поэтому ОС может определить, какой интерфейс (сетевой карты )использовать для связи с этим адресом. Для локальных адресов IPv6 Link НЕОБХОДИМО отдельно указать, какой сетевой интерфейс использовать. например:ping fe80::1234:5678%3
не ping fe80::1234:5678
.
Обратите внимание, что идентификаторы интерфейса могут меняться между перезагрузками, особенно если вы меняете аппаратное обеспечение.
Самый простой способ обойти это — избегать использования явных IP-адресов и использовать имена хостов. Реализации таких протоколов, как mDNS , могут преобразовывать имя хоста в IP-адрес и соответствующий интерфейс. Например:
ping mypc.local
Это должно работать независимо от того, к какому интерфейсу он подключен и находится ли он на локальном адресе ссылки -.
Большая часть программного обеспечения для одноранговой сети была написана исходя из предположения, что оно будет использоваться в Интернете, и его пользователи не будут иметь или знать свое полное доменное имя . По этой причине существующее программное обеспечение не использует имена хостов или доменные имена, оно использует IP-адреса... только IP-адреса.
Теоретически вы можете написать некоторое программное обеспечение, которое можно явно настроить для использования одного определенного интерфейса, а затем совместно использовать локальные адреса IPv6.Но это звучит как много работы, чтобы избежать альтернативы...
Для решения этой конкретной проблемы лучше настроить каждую машину с ULA(дополнительным IP-адресом ). Это может избежать необходимости развертывания собственного программного обеспечения.