выполненный-i по сравнению с выполненным - это?

POSIX определяют CAT Как:

Имя

CAT - CONCATENATE и PRINT файлы

Synopsis

CAT [-U] [Файл ...]

Описание

Утилита Cat должна прочитать файлы в последовательности и записать их Содержимое к стандартному выходу в той же последовательности.

Так что я думаю ConcateNate здесь означает Читайте файлы в последовательности .

1
23.12.2014, 11:59
1 ответ

Я считаю, что здесь есть путаница терминов на работе. На самом деле, как IP-слой, так и слой ссылок вместе работают вместе, чтобы сделать многоадресную работу.

Как для IPv4, так и IPv6, многоадресные IP-адреса сопоставляются на многоадресные MC MAC-адреса. Есть преданные, многоадресные MAC-адреса только. Для IPv4 MAC-адрес имеет форму 01: 00: 5E: XX: YY: ZZ А для IPv6 MAC-адрес имеет форму 33: 33: WW: XX: YY: ZZ .

Рамки, адресованные эти MAC-адресам, по умолчанию наводят на затопленные все порты в VLAN с помощью коммутаторов Ethernet, но в качестве коммутаторов оптимизации могут реализовать IGMP Snooping, чтобы ограничить, какие порты получают кадры, основанные на том, какие порты фактически подписались на многоадресная группа.

Когда хост начинает прослушивание в группе многоадресной рассылки, его слой Ethernet MAC запрограммирован, чтобы пропустить кадры, адресованные на соответствующий MAC-адрес. В противном случае аппаратное обеспечение Ethernet отбросит эти кадры, если только оно не связано с разбитым режимом.

После того, как хост получает многоадресный кадр, потому что коммутатор Ethernet переадресовал его, и поскольку MAC-слой отпускает его, IP-слой смотрит на IP-адрес и направляет пакет к соответствующему сокетку.

Подробная информация о выделенных многоадресных MAC-адресах

Использование различных MAC-адресов для различных многоадресных адресов позволяет хост легко получать только кадры Ethernet, связанные с многоадресными группами, к которым подписывается хост (означает, что есть как минимум один активный Разъем на хосте подписан на эту группу). Другие будут эффективно отброшены в аппаратном обеспечении, либо собственным чипом Ethernet Hosts, либо с помощью выключателя Ethernet в сети.

Существует более многоадресные группы, чем есть выделенные MAC-адреса, поэтому на самом деле много IP-многоадресных адресов адресов на одном и том же MAC-адресе. Это означает, что вышеупомянутая фильтрация не идеальна: когда аппаратное обеспечение сконфигурировано для разрешения одного MAC-адреса, это на самом деле позволяет в пакетах, адресованных для группы IP-многоадресных адресов. Тем не менее, оборудование делает большую часть работы фильтрации, так что это достаточно эффективно.

Для IPv4 есть 268435456 IP-многоадресных адресов и только 8388608 MAC-адресов, поэтому отображение составляет 32-1 (1 MAC-адрес на 32 IP-адреса). См. РФК 1112 Раздел 6.4 .

Для IPv6 есть адреса многоадресной IP Gazillion IP и только 4294967296 MAC-адреса, чтобы сопоставление - это лот-к-1. См. РФК 2464 Раздел 7 . Было бы неплохо сделать это сопоставление хотя бы немного ближе к 1-к-1, но чистый размер адресного пространства IPv6 делает его невозможным. Я устно слышал историю много лет назад, что даже зарезервировав 32-битных адресов MAC-адресов, уже нажав его. История заключается в том, что с точки зрения схемы распределения MAC-адресов IEEE (IEEE несет ответственность за назначение MAC-адресов), что количество MAC-адресов соответствует 256 заданиям OUI, и IEEE потребовало бы 256 раз в целях денежной платы за выделение OUI ; Это было вынуждено быть из вопроса для IETF для оплаты такой суммы денег на IEEE, поэтому IETF вместо этого выбрал видимо неиспользованный блок правильного размера и выравнивания и его прикреплению.

-121--205350-

Docker -i дает неинтерактивную оболочку ( - I означает Interactive для докера, а не для Bash внутри него).

Вы можете проверить это, запустив следующую команду (переменную $ - включает I , если Bash Interactive):

echo $- |grep i && echo i am interactive || echo i am non-interactive

Этот неинтерактивный Bash не отображает командную строку трудно определить, когда долговечная команда закончила свою работу, Вы не можете использовать историю команды, И программы на основе TTY выглядят как беспорядок.

Попробуйте Vim (жалуется на Выход / вход не является терминалом , выглядит и ведет себя странно) Или некоторые ogly - подобная игра (например, просто отказывается от работы).

С другой стороны, Docker -it дает обычную интерактивную оболочку с командной строкой (которую вы можете настроить через $ PS1 )) и история команды (в том числе Ctrl-R ). Когда команда заканчивается, это явно видно из-за подсказки, а программы, требующие от TTY, которые работают нормально.

Итак, если вы собираетесь вручную вводить команды в оболочку, используйте Docker -it .

0
28.01.2020, 01:48

Теги

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