Участник:Shovkoplyas Grigory — различия между версиями
(→Просмотр таблицы маршрутизации) |
|||
(не показано 9 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
==Определения== | ==Определения== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
{{Определение | {{Определение | ||
− | |definition = | + | |definition = |
− | + | Таблица маршрутизации {{---}} таблица, состоящая из сетевых маршрутов и предназначенная для определения наилучшего пути передачи сетевого пакета. | |
− | |||
}} | }} | ||
{{Определение | {{Определение | ||
− | |definition = | + | |definition = |
− | + | Сетевой маршрут {{---}} запись таблицы маршрутизации, содержащая в себе адрес сети назначения (destination), маску сети назначения (netmask), шлюз (gateway), интерфейс (interface) и метрику (metric). | |
}} | }} | ||
− | = | + | ===Пример таблицы маршрутизации=== |
− | + | {| border="1" | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Пример== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| | ||
|- | |- | ||
− | ! | + | !Destination||Netmask||Gateway||Interface||Metric |
|- | |- | ||
− | | | + | |0.0.0.0||0.0.0.0||192.168.0.1||192.168.0.100||10 |
− | |||
|- | |- | ||
− | + | |127.0.0.0||255.0.0.0||127.0.0.1||127.0.0.1||1 | |
|- | |- | ||
− | | | + | |192.168.0.0||255.255.255.0||192.168.0.100||192.168.0.100||10 |
|- | |- | ||
− | | | + | |192.168.0.100||255.255.255.255||127.0.0.1||127.0.0.1||10 |
|- | |- | ||
− | | | + | |192.168.0.1||255.255.255.255||192.168.0.100||192.168.0.100||10 |
− | | | ||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
|} | |} | ||
− | |||
− | {| | + | ==Описание компонентов== |
− | + | {{Определение | |
− | + | |definition = | |
− | + | Адрес сети назначения (Destination) {{---}} собственно, адрес конечного узла пути передачи сетевого пакета. | |
− | + | }} | |
− | { | + | |
− | | | + | {{Определение |
− | + | |definition = | |
− | + | Маска сети назначения (Netmask) {{---}} битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. | |
− | + | В двоичной записи всегда выглядит как множество единиц в начале и нулей в конце. | |
− | + | }} | |
− | + | ||
− | + | ===Пример получения адреса сети=== | |
− | | | + | {| class="simple" border="1" |
|- | |- | ||
− | | | + | ! ||Двоичная запись||Десятичная запись |
|- | |- | ||
− | |< | + | |IP-адрес||<tt>11000000 10101000 00000001 00000010</tt> ||192.168.1.2 |
|- | |- | ||
− | |< | + | |Маска|| <tt>11111111 11111111 11111110 00000000</tt> || 255.255.254.0 |
|- | |- | ||
− | |< | + | |Адрес сети|| <tt>11000000 10101000 00000000 00000000</tt> ||192.168.0.0 |
− | |||
|} | |} | ||
− | + | Чтобы вычислить адрес сети, нужно применить логическое ''и'' к адресу и маске. | |
− | {| | + | {{Определение |
− | + | |definition = | |
− | + | Шлюз (Gateaway) {{---}} адрес узла в сети, на который необходимо отправить пакет, следующий до указанного адреса назначения. Шлюзы бывают ''по умолчанию'', тогда значения адреса назначения и маски указываются как 0.0.0.0. | |
− | + | }} | |
− | |||
− | { | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |- | + | {{Определение |
− | + | |definition = | |
+ | Интерфейс (Interface) указывает, какой локальный интерфейс отвечает за достижение шлюза. Например, шлюз 192.168.0.1 (интернет-маршрутизатор) может быть достижим через локальную сетевую карту, адрес которой 192.168.0.100. | ||
+ | }} | ||
− | {| | + | {{Определение |
− | + | |definition = | |
− | + | Метрика (Metric) {{---}} числовой показатель, задающий предпочтительность маршрута. Чем меньше число, тем более предпочтителен маршрут. Интуитивно представляется как расстояние (необязательный параметр). | |
− | + | }} | |
− | |||
− | { | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Принцип действия== | |
+ | При отправке сетевого пакета, операционная система смотрит, по какому именно маршруту он должен быть отправлен, основываясь на таблице маршрутизации. | ||
+ | Как правило, выбирается наиболее конкретный (т.е. с наиболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя и имеют наименьшую метрику. | ||
+ | Если ни один из маршрутов не подходит, пакет уничтожается, а его отправителю возвращается ICMP-сообщение ''No route to host''. | ||
− | + | Внутри каждого пакета есть поле TTL (Time to live) при каждой пересылке значение уменьшается на единицу, и если оно становится нулем, то пакет выбрасывается. | |
− | + | ICMP-сообщение в данном случае ''TTL expired in transit''. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Просмотр таблицы маршрутизации== | |
− | + | Ниже приведены команды в разных операционных системах, с помощью которых можно посмотреть таблицу маршрутизации | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Windows: '''route print''' | |
− | + | Linux: '''route -n''' | |
==Источники информации== | ==Источники информации== | ||
*[http://lpcs.math.msu.su/~sk/lehre/fivt2013/Earley.pdf Алексей Сорокин {{---}} Алгоритм Эрли] | *[http://lpcs.math.msu.su/~sk/lehre/fivt2013/Earley.pdf Алексей Сорокин {{---}} Алгоритм Эрли] | ||
* Ахо А., Ульман Д.{{---}} Теория синтакcического анализа, перевода и компиляции. Том 1. Синтаксический анализ. Пер. с англ. {{---}} М.:«Мир», 1978. С. 358 — 364. | * Ахо А., Ульман Д.{{---}} Теория синтакcического анализа, перевода и компиляции. Том 1. Синтаксический анализ. Пер. с англ. {{---}} М.:«Мир», 1978. С. 358 — 364. | ||
+ | |||
+ | [[Категория: Теория формальных языков]] | ||
+ | [[Категория: Контекстно-свободные грамматики]] | ||
+ | [[Категория: Алгоритмы разбора]] |
Текущая версия на 04:28, 2 января 2017
Содержание
Определения
Определение: |
Таблица маршрутизации — таблица, состоящая из сетевых маршрутов и предназначенная для определения наилучшего пути передачи сетевого пакета. |
Определение: |
Сетевой маршрут — запись таблицы маршрутизации, содержащая в себе адрес сети назначения (destination), маску сети назначения (netmask), шлюз (gateway), интерфейс (interface) и метрику (metric). |
Пример таблицы маршрутизации
Destination | Netmask | Gateway | Interface | Metric |
---|---|---|---|---|
0.0.0.0 | 0.0.0.0 | 192.168.0.1 | 192.168.0.100 | 10 |
127.0.0.0 | 255.0.0.0 | 127.0.0.1 | 127.0.0.1 | 1 |
192.168.0.0 | 255.255.255.0 | 192.168.0.100 | 192.168.0.100 | 10 |
192.168.0.100 | 255.255.255.255 | 127.0.0.1 | 127.0.0.1 | 10 |
192.168.0.1 | 255.255.255.255 | 192.168.0.100 | 192.168.0.100 | 10 |
Описание компонентов
Определение: |
Адрес сети назначения (Destination) — собственно, адрес конечного узла пути передачи сетевого пакета. |
Определение: |
Маска сети назначения (Netmask) — битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. В двоичной записи всегда выглядит как множество единиц в начале и нулей в конце. |
Пример получения адреса сети
Двоичная запись | Десятичная запись | |
---|---|---|
IP-адрес | 11000000 10101000 00000001 00000010 | 192.168.1.2 |
Маска | 11111111 11111111 11111110 00000000 | 255.255.254.0 |
Адрес сети | 11000000 10101000 00000000 00000000 | 192.168.0.0 |
Чтобы вычислить адрес сети, нужно применить логическое и к адресу и маске.
Определение: |
Шлюз (Gateaway) — адрес узла в сети, на который необходимо отправить пакет, следующий до указанного адреса назначения. Шлюзы бывают по умолчанию, тогда значения адреса назначения и маски указываются как 0.0.0.0. |
Определение: |
Интерфейс (Interface) указывает, какой локальный интерфейс отвечает за достижение шлюза. Например, шлюз 192.168.0.1 (интернет-маршрутизатор) может быть достижим через локальную сетевую карту, адрес которой 192.168.0.100. |
Определение: |
Метрика (Metric) — числовой показатель, задающий предпочтительность маршрута. Чем меньше число, тем более предпочтителен маршрут. Интуитивно представляется как расстояние (необязательный параметр). |
Принцип действия
При отправке сетевого пакета, операционная система смотрит, по какому именно маршруту он должен быть отправлен, основываясь на таблице маршрутизации. Как правило, выбирается наиболее конкретный (т.е. с наиболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя и имеют наименьшую метрику. Если ни один из маршрутов не подходит, пакет уничтожается, а его отправителю возвращается ICMP-сообщение No route to host.
Внутри каждого пакета есть поле TTL (Time to live) при каждой пересылке значение уменьшается на единицу, и если оно становится нулем, то пакет выбрасывается. ICMP-сообщение в данном случае TTL expired in transit.
Просмотр таблицы маршрутизации
Ниже приведены команды в разных операционных системах, с помощью которых можно посмотреть таблицу маршрутизации
Windows: route print
Linux: route -n
Источники информации
- Алексей Сорокин — Алгоритм Эрли
- Ахо А., Ульман Д.— Теория синтакcического анализа, перевода и компиляции. Том 1. Синтаксический анализ. Пер. с англ. — М.:«Мир», 1978. С. 358 — 364.