Ниже приведены записи в моем /etc/hosts
.
Мне было интересно, для чего последняя запись ( fe80::1%lo0 localhost
).
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
Ниже приведены записи в моем /etc/hosts
.
Мне было интересно, для чего последняя запись ( fe80::1%lo0 localhost
).
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
Ответы:
Это адрес IPv6. Блок fe80 :: зарезервирован для локальных адресов. Локальные адреса связи используются для пакетов, отправляемых только напрямую подключенным устройствам (не маршрутизируются). Протокол обнаружения сети (NDP) является крупнейшим пользователем локальных адресов каналов (сортировка NDP заменяет ARP и DHCP в IPv6).
Каждый из ваших интерфейсов будет иметь свой локальный адрес ссылки, начиная с fe80 :: и (обычно) заканчивая модифицированной версией MAC-адреса интерфейса (формат EUI-64), чтобы обеспечить наличие уникального адреса в вашем сегменте. В случае вашего петлевого интерфейса к нему больше ничего не подключено, поэтому он может использовать адрес fe80 :: 1, не опасаясь конфликта, поэтому fe80 :: 1 обычно используется в качестве адреса «localhost». - эквивалент IPv6 127.0.0.1.
::1
используется как эквивалент IPv6 127.0.0.1
, нет fe80::1%lo0
.
lo
и нет lo0
? Также зачем включать 2 записи хостов IPv6 для localhost?
Отличный ответ выше от едока. IPv6 ссылка локального адреса, как было сказано выше, в виде fe80:*
фактически fe80::/10
означает верхнюю десять битов только сопоставляются fe8*:*
поэтому диапазон fe80 :: 0 .. febf:*
. Проверь мою арифметику.
Эти адреса эквивалентны 169.254.\*.\*
адресам в IPv4, хотя аналоги IPv4 используются гораздо менее эффективно.
Очень распространено иметь несколько адресов в ipv6, но только один в IPv4. Наличие как fe80::
адреса, так и глобально значимого маршрутизируемого IPv6-адреса (например, 2001:*
например) является правилом, а не исключением. К сожалению, приложения и операционные системы не склонны делать то же самое в IPv4, то есть интерфейсы, как правило, не имеют нескольких адресов IPv4, и я не видел случая, когда интерфейс имел бы 169.254.\*.\*
адрес и другой тип адреса одновременно.
Одновременное использование двух типов в IPv4 предотвратит много боли и страданий, когда, например, набор включается в неправильном порядке, устройства включаются до того, как маршрутизаторы или серверы и ПК назначают себе 169.254.\*.\*
адрес и придерживаются только этого, вместо добавления секунды. глобально значимый, маршрутизируемый адрес, когда они позже узнают от своего маршрутизатора или сервера, где они должны находиться в Интернете.
fe80::..... a link local address
Локальные IPv6-адреса каналов, обозначенные префиксом fe80:, действительны только для непосредственного сетевого канала, к которому подключен этот хост-интерфейс.