параметр области IP-адреса

18

В Linux команда

ip address add [...]

есть scopeаргумент. Страница man говорит, что область действия - это область области, в которой этот адрес действителен. Следует за списком юридических областей:

  • Глобальный
  • сайт
  • ссылка на сайт
  • хозяин

К чему относится эта «область» «действительности»?

rolaf
источник

Ответы:

22

с http://linux-ip.net/html/tools-ip-address.html :

Область применения | Описание

глобальный | действует везде

сайт | действует только на этом сайте (IPv6)

ссылка | действует только на этом устройстве

хозяин | действует только внутри этого хоста (машины)

Область действия обычно определяется утилитой ip без явного использования в командной строке. (...)

Следующие цитаты взяты из книги Кристиана Бенвенути, О'Рейли, «Понимание внутренних сетей Linux»:

«Объем маршрута в Linux - это показатель расстояния до сети назначения. Объем IP-адреса - это показатель того, как далеко от локального хоста известен адрес, что в некоторой степени также говорит о том, как далеко владелец этого адреса с локального хоста (...).

Хост: адрес имеет область действия хоста, когда он используется только для связи внутри самого хоста. За пределами хоста этот адрес неизвестен и не может быть использован. Примером является адрес обратной связи, 127.0.0.1

Ссылка: адрес имеет область действия ссылки, когда он имеет смысл и может использоваться только в локальной сети. Примером является широковещательный адрес подсети.

Глобальный: адрес имеет глобальную область, когда его можно использовать где угодно. Это область действия по умолчанию для большинства адресов. (...)»

Основная причина использования областей видимости заключается в том, что хост с несколькими интерфейсами и адресами должен решить, когда использовать какой адрес. Для связи с самим собой можно использовать адрес обратной связи (область хоста). При общении в другом месте должен быть выбран другой адрес.

brengo
источник
2
Спасибо за Ваш ответ. Я уже прочитал это. Что я действительно не понимаю, так это то, что здесь означает «действительный». Другими словами: как аргумент области действия повлияет на поведение сетевого устройства?
Ролаф
IP-адреса и маршруты имеют возможность указывать ядру расстояние до других сетей / адресов. См books.google.de/... :)
brengo
Я должен был добавить: «область действия» предназначена для принятия решений о маршрутизации и проверки работоспособности конфигурации маршрутизации. Это помогает ядру решить (быстрее), куда должны отправляться пакеты. Надеюсь, это поможет?
Бренго
1
Извините, Бренго, ваша ссылка сейчас недоступна. Но разве metricаргумент не используется для указания расстояния?
Ролаф
Ой, извините, Google-ссылка, которая отлично работает на моем конце :( есть отрывок именно необходимой темы (Понимание внутренних компонентов сети Linux, Кристианом Бенвенути, О'Рейли), которую трудно нажать на 600 символов комментария, но я отредактирую мой ответ выше
brengo
14

Чтобы начать понимать определение области действия, вы должны начать с понимания, что такое локальный адрес и локальный адрес сайта. Как только они прояснятся, остальные встанут на свои места. Цитирую некоторые фрагменты из документации по IPv6.

Ссылка на сайт

Предполагается, что локальный адрес канала используется для адресации узлов в одной ссылке. Пакеты, отправленные с локального адреса или предназначенные для него, не будут пересылаться маршрутизатором.

Примером этого является диапазон 169,254 / 16. Что вы, возможно, видели раньше, когда устройства не могут получить действительный адрес от DHCP.

сайт

Сайт-локальный адрес предполагается использовать внутри сайта. Маршрутизаторы не будут пересылать пакеты с локальным адресом источника или адресата за пределы сайта.

Это относится только к IPv6. В IPv4 нет понятия локальных адресов сайта.

хозяин

Адрес хоста - это то, что будет существовать только внутри самого хоста. Например, 127.0.0.1 - это адрес хоста, обычно назначаемый интерфейсу обратной связи. Интерфейс обратной связи не имеет внешних подключений, поэтому его область ограничена рамками хост-машины.

Глобальный

Глобальный адрес - это то, что вы можете считать «нормальным» адресом. То есть одноадресный адрес, который виден во внешней сети и маршрутизируется.

Дэн Карли
источник
2
А как насчет блока 192.168.0.0/16 - разве это не локально?
SamB
1
Вы никогда не должны видеть siteиспользование, так как эти адреса устарели в 2004 году .
Майкл Хэмптон
0

Найти эти комментарии в fib_semantics.c

 704  * Every prefix is assigned a "scope" value: "host" is local address,
 705  * "link" is direct route,
 706  * [ ... "site" ... "interior" ... ]
 707  * and "universe" is true gateway route with global meaning.
 708  *
 709  * Every prefix refers to a set of "nexthop"s (gw, oif),
 710  * where gw must have narrower scope. This recursion stops
 711  * when gw has LOCAL scope or if "nexthop" is declared ONLINK,
 712  * which means that gw is forced to be on link.
 ....
 719  * Normally it looks as following.
 720  *
 721  * {universe prefix}  -> (gw, oif) [scope link]
 722  *                |
 723  *                |-> {link prefix} -> (gw, oif) [scope local]
 724  *                                      |
 725  *                                      |-> {local prefix} (terminal node)
 726  */
Морда кирпичом
источник