Что означает действие «зациклиться»? [закрыто]

0
23.03.2019, 03:31
2 ответа

Вы путаете уровни драйверов устройств и уровни IP стека.

На уровне IP 127.0.0.1 — это просто еще один IP-адрес, который обрабатывается одинаково.

На уровне драйвера пакеты, отправляемые через петлевой интерфейс, «просто и немедленно передаются обратно вверх по стеку сетевого программного обеспечения», а не отправляются на сетевую карту.

Эта концепция не является специфичной для ОС; различные ОС используют одну и ту же концепцию.

1
28.01.2020, 02:30
      | --- > ---\
lo    |          |
      | --- < ---/

      | --- > --- |
veth0 |           | veth1
      | --- < --- |

Пара veth— это пара устройств Ethernet с кабелем между ними. Реализовано как виртуальное устройство. Они предназначены для связи с контейнерами :один конец veth пары может быть перемещен в контейнер.

Вы можете думать о loкак о паре veth, за исключением того, что у них только один конец.

В действительности детали реализации не совпадают. Это, по крайней мере, ясно, когда вы смотрите на странный факт, что ping 127.0.0.2работает, но вы не можете видеть адрес 127.0.0.2в ip -4 addr. Но вам не о чем беспокоиться, если только вы не используете эту «особенность» устаревшей версии Интернет-протокола или не разрабатываете ядро.


Более продвинутый способ думать о loзаключается в том, что ему не нужно ничего делать , как и интерфейсу dummy. (Вы можете играть сip link add type dummy).

Когда вы пингуете IP-адрес интерфейса Ethernet или Wi-Fi вашего компьютера, он работает без отправки чего-либо через этот интерфейс . Это можно проверить с помощью tcpdumpили счетчиков пакетов в ip -s link. То же верно для dummy, и то же верно для lo.

Но если вы этого не заметили, вы можете использовать менее сложное объяснение. Это не вводит вас в заблуждение.

Существует некоторая разница в том, как используются loи dummy, но это магический материал 127.0.0.2, который не важен для вопроса.

1
28.01.2020, 02:30

Теги

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