По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Вы забыли свой пароль пользователя root в Debian? Не волнуйтесь, мы покажем, как сбросить пароль root в Debian. Просто выполните следующие шаги и восстановите доступ и установите новый пароль root. Сброс пароля Запустите машину с Debian и нажмите любую клавишу, чтобы остановить процесс загрузки. Выберите “Debian GNU/Linux ” и нажмите клавишу “e” для редактирования параметров ядра в командной строке. Используйте клавишу «стрелка вниз» для прокрутки вниз. Перейдите к строке, которая начинается со слова linux и с помощью стрелок перейдите к концу строки или нажмите кнопку «end», а затем там (после quiet) добавьте init =/bin/bash. После добавления записи нажмите Ctrl + x или F10 для загрузки системы. Debian теперь загрузится в однопользовательском режиме, а корневая файловая система смонтирована в режиме только для чтения (read-only mode). Поэтому используйте команду ниже для монтирования корневой файловой системы в режиме чтения-записи (read-write mode). mount -o remount / Наконец, измените пароль пользователя root с помощью команды passwd. Тут указываем новый пароль и подтверждаем его. Перезагрузите систему и используйте новый пароль, который установили для пользователя root в вашей системе.
img
YAML (YAML – Ain’t Markup Language, что можно перевести как "YAML – это не язык разметки"") считается языком сериализации по типу XML и JSON. Он представляет собой расширенную версию JSON, которая используется, в основном, для файлов конфигурации. Вы можете сохранить YAML-файл с расширением .yaml или .yml. Это удобочитаемый файловый формат, состоящий из пар «ключ-значение» и делающий акцент на отступы и отбивку строк. YAML активно используется в файлах конфигурации многих хорошо известных инструментов/технологий, по типу docker-compose, Kubernetes, Ansible и т.д. Ниже приведено сравнение YAML с XML и JSON. Теперь давайте обсудим синтаксис, типы данных и особенности YAML-файлов. Пары «ключ-значение» Пара «ключ-значение» – это базовая составляющая YAML. Каждый элемент в YAML-документе является членом как минимум одного словаря. Ключами чаще всего являются строки, а значением могут быть данные любого типа: число, логическое значение, строка, пустое значение, массив и объект. name: John age: 25 city: LA Числа Числа – это одни из скаляров, которые могут использоваться в качестве значения YAML-файлов. Числа бывают десятичными, с плавающей запятой, экспоненциальными, восьмеричными и шестнадцатеричными. Если добавлять их без одинарных или двойных кавычек, то они обрабатываются как строки. decimal : 10 float : 2.5 exponential : 5.0e+12 infinity : .inf octal : 0o12 hexadecimal : 0xF Примечание: Будьте осторожны при представлении некоторых стандартных типов чисел (время, восьмеричные и шестнадцатеричные коды и т.д.). Они могут быть некорректно интерпретированы. Вот несколько примеров. time : 6:00 hexval: 0x12 octval: 0o25 В этом примере время преобразуется в минуты, поэтому 6:00 интерпретируется как 360. 0x12 обрабатывается как шестнадцатеричный код, поэтому оно переводится в десятеричное значение 18, а 0o25 интерпретируется в десятеричное значение 21. Так что если вы не собираетесь использовать их в таком виде, то добавляйте эти значения в кавычках. Примечание: Начиная со спецификации YAML 1.2, 0o представляет восьмеричные значения. В более ранних версиях для этих целей использовался 0. Логические значения Логические значения похожи на другие языки программирования/представления с двумя состояниями: true или false. Логическими значениями в YAML-файлах считаются не только стандартные true/false, но также yes/no и on/off (исключение: если они добавлены в кавычках). Примечание: Следите за тем, как вы используете значения yes/no и on/off. Если добавлять их не в одинарных кавычках, то они будут интерпретироваться как логические значения true/false. Комментарии Вы можете комментировать содержимое YAML-файла с помощью символа #. Пример ниже: # This a comment on the first. # And this a commented second line. Строки В YAML-файле вы можете прописывать строки без кавычек. Либо добавлять их в одинарные или двойные кавычки. Можно даже пользоваться всеми тремя способами. Если в строке содержатся специальные символы, которые нужно экранировать с помощью , то добавлять такую строку нужно в двойных кавычках. Пример: signature: "John Williams Sales Executive XYZ Company LA." Но при использовании любого из специальных символов ниже: :, {, }, [, ], ,, &, *, #, ?, |, -, , =, !, %, @, ` не нужно ничего экранировать. Воспользуйтесь одинарными кавычками – с ними строка будет интерпретироваться как нужно. Одиночная строка Если вы хотите разбить одну строку на несколько строчек, но синтаксический анализатор должен будет интерпретировать их как одиночную строку, то сделайте следующее: message: > this is a normal string which spans more than multiple lines but needs to be treated as a single line. Начните код с символа > , а затем впишите содержимое строки в виде блока с отступами. В конце проанализированного содержимого добавляется . Если вам не нужен символ новой строки, то воспользуйтесь символом >-. Многострочное значение При добавлении строки, которая разделяется на несколько строк и анализируется так же, как написана, воспользуйтесь схемой ниже. message: | this is a multi-line string which spans across multiple lines and needs to be treated as a multi-line string. | добавляет в конце проанализированного содержимого символ перехода на новую строку. Если вы не хотите видеть в конце проанализированного содержимого символ , то лучше воспользуйтесь |-. Нулевые значения Вы можете представить нулевое значение с помощью ~ или null. Такие значения добавляются без кавычек. foo: ~ bar: null Массивы В YAML значения можно представить в форме массивов/списков. Пример массива данных: teams: - name: Australia rank: 3 - name: New Zealand rank: 4 - name: England rank: 1 - name: India rank: 2 В примере выше представлен массив объектов с названием и рангом команды. Обязательно проверьте, что отбивка строк и отступы заданы единообразно. В противном случае, файл будет некорректным. Каждый элемент массива обозначается через дефис -. Все элементы должны находиться на одном уровне с одинаковыми отступами. Если вместо объектов в массиве используются примитивные элементы, то их можно представить следующим образом: teams: [ Australia, New Zealand, England, India ] Объекты Объекты в YAML представляются так: student: name: John age: 22 city: NY college: NYU gpa: 3.5 Все атрибуты внутри объекта должны находиться на одном уровне и с одинаковым отступом. Именно это условие указывает на принадлежность к одному объекту и гарантирует корректность YAML-документа. Заключение В данной статье вы познакомились с базовыми концепциями при работе с YAML-файлами. Разобравшись в них, вы поймете, как правильно прописывать файлы для своих собственных инструментов и технологий.
img
Второй метод, который мы можем использовать для настройки адреса, называется EUI-64 (расширенный уникальный идентификатор). Он может быть использован для того, чтобы заставить роутер генерировать свой собственный идентификатор интерфейса вместо того, чтобы вводить его самостоятельно. Роутер будет принимать MAC-адрес своего интерфейса и использовать его в качестве идентификатора интерфейса. Однако MAC-адрес - это 48 бит, а идентификатор интерфейса-64 бит. Что мы будем делать с недостающими частями? В первой части статьи мы рассказывали о стандартной настройке IPv6 на оборудовании Cisco Вот что мы сделаем, чтобы заполнить недостающие биты: Мы берем MAC-адрес и делим его на две части; Мы вставляем "FFFE" между двумя частями, так что бы у нас получилось 64-битное значение; Мы инвертируем 7-й бит идентификатора интерфейса. Например, если мой MAC-адрес 1234.5678.ABCD тогда, после преобразования идентификатор интерфейса получиться: Выше вы видите, как мы разделяем MAC-адрес и помещаем FFFE в середину. "Инвертирование 7-го бита" не является заключительным шагом. Для этого вам нужно преобразовать первые два шестнадцатеричных символа первого байта в двоичный, найти 7-й бит и инвертировать его. Это означает, что если это 0, то вам нужно сделать его 1, а если это 1, то он должен стать 0. 7-й бит представляет собой "универсальный уникальны" бит. По умолчанию в MAC-адресе этот бит всегда будет установлен в 0. При изменении MAC-адреса этот бит должен быть установлен на 1. Обычно люди не меняют MAC-адрес этого роутера, что означает, что EUI-64 будет самостоятельно менять 7-й бит с 0 на 1. Вот как это выглядит: Мы берем первые два шестнадцатеричных символа первого байта, которые являются "12", и преобразуем их обратно в двоичный код. Затем мы инвертируем 7-й бит от 1 до 0 и снова делаем его шестнадцатеричным. Так что на самом деле мой идентификатор интерфейса EUI-64 будет выглядеть следующим образом: Теперь давайте взглянем на конфигурацию EUI-64 на роутере! Я буду использовать 2001:1234:5678:abcd::/64 в качестве префикса: OFF1(config)#interface fastEthernet 0/0 OFF1(config-if)#ipv6 address 2001:1234:5678:abcd::/64 eui-64 В этом случае настроен роутер с префиксом IPv6 и с использованием EUI-64 в конце. Именно так мы можем автоматически генерировать идентификатор интерфейса, используя mac-адрес. Теперь взгляните на IPv6-адрес, который он создал: OFF1#show interfaces fastEthernet 0/0 | include Hardware Hardware is Gt96k FE, address is c200.185c.0000 (bia c200.185c.0000) OFF1#show ipv6 interface fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::C000:18FF:FE5C:0 No Virtual link-local address(es): Global unicast address(es): 2001:1234:5678:ABCD:C000:18FF:FE5C:0, subnet is 2001:1234:5678:ABCD::/64 [EUI] Видите эту часть C000:18FF:FE5C:0? Это MAC-адрес, который разделен на 2, FFFE в середине и "2" в "C200" MAC-адреса были инвертированы, поэтому теперь он отображается как "C000". Когда вы используете EUI-64 на интерфейсе, который не имеет MAC-адреса, то он выберет MAC-адрес самого низкого нумерованного интерфейса на роутере. При использовании EUI-64 вы должны ввести 64-битный префикс, а не полный 128-битный IPv6 адрес. Если вы сделаете это, вы не получите ошибку, но Cisco IOS будет только сохранять 64-битный префикс, и в любом случае сгенерирует идентификатор интерфейса. Скорее всего вы, вероятно, не будете использовать EUI-64 на роутере для настройки интерфейса, но это очень полезный метод для обычных хостов, таких как компьютеры windows, linux или mac. Вы, возможно, настроите IPv6-адрес вручную на интерфейсе вашего роутера или используете метод автоконфигурации, такой как DHCP или SLAAC. Когда вы внимательно посмотрите на выходные данные show ipv6 interface, вы можете заметить, что там есть еще один IPv6-адрес: OFF1#show ipv6 interface fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::C000:18FF:FE5C:0 Кстати, про теоретические основы IPv6 можно изучить тут Этот адрес называется локальным адресом связи (link-local address), и он имеет некоторые специальные цели для IPv6. Каждое устройство с включенным IPv6 автоматически генерирует локальный адрес связи. Эти адреса являются одноадресными, не могут быть маршрутизированы и используются только в пределах подсети, поэтому они называются "link-local". Некоторые протоколы используют локальные адреса связи вместо глобальных одноадресных адресов, хорошим примером является NDP (Neighbour Discovery Protocol), который используется для обнаружения MAC-адресов других устройств IPv6 в подсети (NDP заменяет ARP для IPv4). Протоколы маршрутизации также используют эти локальные адреса связи для установления соседних областей, а также в качестве следующего перехода для маршрутов. Мы увидим это, когда будем говорить о маршрутизации IPv6. Адресное пространство FE80:: / 10 было зарезервировано для link-local, которые охватывают FE8, FE9, FEA и FEB. Однако RFC, описывающий link-local, утверждает, что следующие 54 бита должны быть нулями, поэтому link-local всегда будут выглядеть так: link-local всегда будет начинаться с FE80:0000:0000:0000, а ID можно настроить с помощью различных методов. Роутеры Cisco будут использовать EUI-64 для создания идентификатора интерфейса, в то время как другие операционные системы, такие как Microsoft, используют случайный метод для создания идентификатора интерфейса. В приведенном ниже примере вы можете видеть, что EUI-64 был использован для создания link-local: OFF1#show interfaces fastEthernet 0/0 | include Hardware Hardware is Gt96k FE, address is c200.185c.0000 (bia c200.185c.0000) OFF1#show ipv6 interface fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::C000:18FF:FE5C:0 Первая часть-это FE80:: и вторая часть - это созданный идентификатор интерфейса EUI-64: C000:18FF:FE5C:0 Когда вы настраиваете IPv6-адрес на интерфейсе (глобальный одноадресный или уникальный локальный) или когда вы включаете IPv6 на интерфейсе, вы можете сделать это следующим образом: OFF1(config)#interface fa0/0 OFF1(config-if)#ipv6 enable Использование команды ipv6 enable роутеру создать link-local адрес. OFF1#show ipv6 int fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::C000:15FF:FE94:0 По умолчанию Cisco IOS будет использовать EUI-64 для создания link-local адреса, но вы также можете настроить его самостоятельно. Просто убедитесь, что адрес начинается с FE80:: / 10 (FE8, FE9, FEA или FEB). Вот как вы можете настроить link-local адрес: OFF1(config-if)#ipv6 address FE90:1234:5678:ABCD::1 link-local Просто используйте ключевое слово link-local, чтобы сообщить роутеру, что это должен быть адрес link-local. Давайте проверим это: OFF1#show ipv6 int fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE90:1234:5678:ABCD::1 Помимо link-local адресов существует еще один тип адресации, который мы должны обсудить, и это multicast. Я надеюсь, вы обладаете званиями об одноадресных и широковещательных доменах. Когда хост отправляет широковещательную передачу, все остальные устройства в подсети получат ее независимо от того, хотят они этого или нет. Отправка широковещательных сообщений очень неэффективна, и они были удалены из IPv6. Многоадресная рассылка также используется для отправки чего-то с одного хоста на несколько приемников, но разница заключается в том, что многоадресный трафик заканчивается только на хостах, которые хотят его получить. Каждый, кто прослушивает определенный адрес многоадресной рассылки, получит эти пакеты. Это просто как радиостанция, если вы хотите слушать...вы должны настроиться на нужную частоту. IPv6 использует многоадресную рассылку по многим причинам. Узлы IPv6, которые хотят отправить что-то всем узлам, работающим под управлением IPv6, могут использовать адрес многоадресной рассылки FF02::1. Все, у кого включен IPv6, слушают этот адрес. Когда роутер IPv6 хочет отправить что-то всем другим роутерам IPv6 (но не хостам!) он может отправить его в FF02:: 2. Протоколы маршрутизации также используют многоадресные адреса. Например, EIGRP уже использует виде FF02::A и OSPF использует виде FF02::5 и виде FF02::6. Многоадресный трафик маршрутизируется, но часть трафика должна оставаться в пределах подсети. Если это так, то эти адреса будут иметь link-local область, и они не будут перенаправляться роутерами из одной подсети в другую. Диапазон FF00:: / 8 был зарезервирован для многоадресной рассылки IPv6, в то время как диапазон FF02::/16 зарезервирован для многоадресных адресов link-local области. На роутере Cisco вы можете видеть по интерфейсу, к которому многоадресные адреса роутер прослушивает: OFF1#show ipv6 int fa0/0 FastEthernet0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE90:1234:5678:ABCD::1 No Virtual link-local address(es): No global unicast address is configured Joined group address(es): FF02::1 FF02::2 FF02::1:FF00:1 Этот конкретный роутер прослушивает адреса многоадресной рассылки "все хосты IPv6" и "все роутеры IPv6". Как только вы настроите OSPF или EIGRP для IPv6, вы заметите, что интерфейс присоединится к соответствующим адресам многоадресной рассылки. Третий адрес, который у нас есть (FF02::1:FF00:1), называется адресом многоадресной рассылки запрошенного узла. Он используется для обнаружения соседей. Многоадресный адрес запрашиваемого узла основан на одноадресном IPv6-адресе хоста, а если быть более точным...последние шесть шестнадцатеричных символов одноадресного адреса. Все хосты, имеющие одинаковые 6 шестнадцатеричных символов в своем одноадресном IPv6-адресе, в конечном итоге получат один и тот же адрес запрашиваемого узла. Когда вы отправляете что-то на этот адрес запрашиваемого узла, все хосты с одним и тем же адресом получат пакеты. Это что-то вроде многоадресного адреса "все хосты IPv6", но на этот раз у нас есть отдельная комната, где единственными членами являются VIP-персоны, которые разделяют одни и те же последние 6 шестнадцатеричных символов. Все адреса запрашиваемых узлов начинаются с FF02::1:FF, поэтому они выглядят следующим образом: Мой маршрутизатор имеет запрошенный адрес узла FF02:: 1:FF00:1, а link-local адрес -FE90:1234:5678: ABCD:: 1. Когда мы записываем link-local адрес полностью, это выглядит так: FE90:1234:5678:ABCD:0000:0000:0000:0001 Возьмите последние 6 шестнадцатеричных символов из этого адреса: 00:0001 И поместите их за префиксом адреса запрашиваемого узла, чтобы получить полный адрес запрашиваемого узла: FF02:0000:0000:0000:0000:0001:FF00:0001 Мы можем удалить некоторые нули, чтобы сделать его короче, и это будет выглядеть так: FF02::1:FF00:1
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59