Предполагается, что Microsoft работает над «семейным планом» для Xbox Game Pass, выпуск которого запланирован на конец этого года. Заманчивая перспектива, особенно для тех, у кого несколько игроков в одном доме.
Xbox Game Pass оказался популярным. В январе было объявлено, что служба подписки «все, что вы можете съесть» превысила 25 миллионов пользователей по сравнению с 18 миллионами, о которых сообщалось в предыдущем году. Добавление семейного плана позволит нескольким пользователям получить доступ к одной подписке. Достаточно сказать, что сервис будет двигаться в направлении предложения, более похожего на Netflix.
В настоящее время сервис доступен в трех вариантах: Xbox Game Pass (для консолей), PC Game Pass и Xbox Game Pass Ultimate. Microsoft предлагает Xbox Game Pass или PC Game Pass за 9,99 долларов в месяц. Если вы играете на консолях, к сожалению, это не позволит вам получить доступ к возможностям сетевой многопользовательской игры. Однако вы можете перейти на Xbox Game Pass Ultimate за 14,99 долларов. Это разблокирует Game Pass для консоли, ПК, доступ к EA Play и сетевую многопользовательскую игру. Все еще относительно недорого, учитывая сотни игр, доступных для доступа.
Подписка в стиле Netflix
Согласно надежному источнику в Windows Central, «оплата более высокого уровня семейного плана Xbox Game Pass предоставит чистый доступ для пяти игроков к играм во всей библиотеке и будет намного дешевле, чем оплата пяти отдельных учетных записей XGP, как это необходимо сегодня. Используя систему семейных учетных записей Microsoft, которая уже используется для Office 365, игроки из одной страны смогут играть вместе, используя единую подписку XGP, управляемую владельцем центральной учетной записи, почти так же, как Netflix».
Неясно, будет ли семейный план зарезервирован для Xbox Game Pass Ultimate или он также будет включен в подписки Xbox Game Pass или PC Game Pass. Точная цена также недоступна, но мы знаем, что это будет значительно дешевле по сравнению с пятью отдельными учетными записями. 29,99 долларов, наверное?
Не заговор, но эта утечка произошла сразу после того, как Sony подтвердила планы пересмотреть свои предложения по подписке PlayStation. Многие считают это ответом на Xbox Game Pass, совпадение ли это? Думаем, нет.
Docker — флагман рынка ПО для контейнеризации и микросервисов, появившийся в 2013 году и до сих пор остающийся основным игроком. Для его использования в Ubuntu не требуется установки отдельной ВМ, т.к. он использует возможности ядра. Читать →
В этой статье расcкажу как можно пробросить физически диск в виртуальную машину на Proxmox (Passthrough HDD/SSD).
Иногда возникает ситуация когда необходимо виртуальной машине передать весь физический накопитель. Если с USB флешками это организуется через Web-интерфейс Proxmox, то проброс таких вещей как HDD или SSD еще пока отсутствует в WebGUI. Но данную манипуляцию можно произвести через терминал.
Поиск диска в терминале Proxmox
Рассматривать установку виртуальной машины я не буду. Предположим, что у вас уже есть готовая виртуальная машина и нужный диск для проброса в данную ВМ.
Для начало нам необходимо определить какой диск мы будем пробрасывать. Для этого в терминале Proxmox набираем следующее:
lsblk
У меня вывод следующей, у вас будет немного другим, но суть от этого не поменяется.
Из всего вывода выбираем тот диск который хотите пробросить. У меня это следующий диск:
sdc 8:32 0 1,4T 0 disk
└─sdc1 8:33 0 1,4T 0 part
Если диск не отображается, то его необходимо разбить и отформатировать в нужную файловую систему. Тут писал про то как это сделать.
Для проброса желательно использовать UUID диска, хотя вы можете использовать и /dev/sdX, но помните, что путь до диска может измениться при добавлении, удалении или перестановке дисков. Для определения UUID набираем:
Если в выводе не будет нужного вам UUID, то будем использовать путь до диска. Если же нужный UUID присутствует, то обязательно используйте его.
После того как вы определили интересующий вас диск, остается ввести только одну комманду. Но сначала давайте определим идентификатор виртуальной машины, к которой вы хотите прикрепить этот диск. Откройте Proxmox WebGUI и посмотрите на список виртуальных машин. Я в примере буду использовать идентификатор 100.
Проброс HDD/SSD диска в гостевую ОС на Proxmox
Если вы используете UUID, то команда примет вид:
qm set VM-ID -virtio2 /dev/disk/by-id/DISK-ID
VM-ID – идентификатор ВМ.
DISK-ID – UUID диска.
qm set 100 -virtio2 /dev/disk/by-id/349b3951-2513-41c2-8d28-5700097e922c
Если же вы используете путь вместо UUID, то команда будет следующей:
qm set 100 -virtio2 /dev/sdc
Перейдя в Web-интерфейс Proxmox во вкладке оборудование данной ВМ должно появится новое HDD устройство:
Теперь, если ваша ОС уже знает о драйвере VirtIO, то все готово! Если нет продолжайте читать… Я объясню, как установить драйвер.
Драйвер VirtIO для Windows ВМ
Установка драйвера VirtIO довольно проста.
Вам нужно будет перейти по этой ссылке и загрузить VirtIO ISO. Прокрутите вниз до прямой загрузки и выберите Stable virtio-win iso.
Загрузите этот ISO-файл в хранилище Proxmox ISO и смонтируйте его на компакт-диске виртуальной машины Windows.
Загрузите виртуальную машину и откройте диспетчер устройств.
Щелкните правой кнопкой мыши новый жесткий диск и выберите Обновить программное обеспечение драйвера.…
Выберите Просмотреть мой компьютер для получения программного обеспечения драйвера.
Нажмите кнопку обзор, а затем перейдите в папку viostor внутри компакт-диска.
Выберите свою ОС и 64/32-битную папку, а затем перейдите к следующему шагу. Он должен установить драйвер, и ваш диск должен подключиться.
Несколько дней назад разработчики проекта Xfce выпустили выпуск основной версии эмулятора терминала Xfceтерминал 1.0.0. Новая версия подготовил новый сопровождающий который возобновил разработку после того, как проект вышел из эксплуатации в 2020 году.
Запуск также он примечателен изменением схемы нумерации версий. В рамках ветки 1.1.х будут формироваться экспериментальные версии, из которых будет сформирована стабильная версия 1.2.0. В случае значительных изменений, таких как миграция на GTK4, или после постепенного достижения нумерации 1.9.x, планируется ветка 2.0.
Xonsh: кроссплатформенная командная строка и язык оболочки
В последние дни я просматривал Интернет в поисках полезной информации, связанной с Скрипты оболочки. Чтобы обновить код небольшого удобного программного инструмента, который я создал чуть более десяти лет назад. Приложение, которое в то время называлось Пост-установка Linux — сценарий двухсотлетия (LPI-SB), и был создан только с Командные строки на основе Bash. И посреди этих поисков я наткнулся на интересную утилиту или программу под названием «Хонш».
Для тех, кто никогда не слышал об этом приложении, стоит ожидать, что это отличный инструмент для терминальное программное обеспечение предлагая язык оболочки y un
Кроссплатформенная командная строка который работает с Питон.
Близится кожаная свадьба Роскомнадзора с Телеграмом, 16 апреля 2018 года начался крестовый поход, ставший фактически символом уничтожения интернета в России, хотя в глобальной войне, начавшейся в 2012 году, он был всего лишь ярким эпизодом.
Ковровые блокировки в исполнении РКН стали причиной появления на свет множества различных сервисов, помогающих пользователям сети выживать под бомбежками. Одним из них стал antifilter.download, позволяющий получать списки находящихся под блокировками IP-адресов. Далее пользователи сервиса могли использовать полученную информацию по своему усмотрению. Вариант усмотрений был описан в статье Настройка BGP для обхода блокировок, версия 3, без VPS, которая стала достаточно популярной в сети и породила несколько сотен пользователей сервиса.
Однако «Tempora mutantur et nos mutamur in illis». За прошедшие три года сервис пережил Alpharacks-gate, похоронивший вместе с собой практически все донаты, упирание в технические ограничения как следствие роста количества пользователей, упирание в те же ограничения как следствие взрывного роста количества ip-адресов в списке РКН… Да что только не пережил. Каждое из этих изменений приводило к небольшому устареванию предыдущей статьи и когда неделю назад один из хабраюзеров предложил мне поправить ее под текущие реалии, я понял, что проще родить нового, чем отмыть этого написать новую версию, заодно и ответив на часто задаваемые вопросы. Результат — ниже.
Зачем это всё
Выполнив описанные ниже действия на своем маршрутизаторе Mikrotik, вы сможете автоматически получать через уже имеющийся у вас VPN доступ к ресурсам, ip-адреса которых занесены в «Единый реестр доменных имен, указателей страниц сайтов в сети «Интернет» и сетевых адресов, позволяющих идентифицировать сайты в сети «Интернет», содержащие информацию, распространение которой в Российской Федерации запрещено».
Мы используем протокол BGP для доставки списка IP-префиксов из «Единого реестра» на ваш маршрутизатор и дальнейшего перенаправления трафика к этим префиксам в VPN-туннель. Здесь и далее под общим термином IP подразумевается IPv4, IPv6-адреса сервисом не обрабатываются.
Если ваш маршрутизатор не Mikrotik, но умеет протокол BGP, вы, скорее всего, сможете использовать этот сервис, адаптировав настройки под своё оборудование. Вариант для Keenetic, например, приведен в полезных ссылках в конце статьи.
Что нужно для использования
Маршрутизатор Mikrotik
подключенный к интернету
с VPN куда-то в зону, свободную от блокировок, и использующим протокол, создающий интерфейс (практически любой вариант, кроме чистого IPSEC — в примере используется GRE). В целом тема настройки VPN — отдельная и широкая, а поскольку я ни с одним таким сервисом не аффилирован, описывать на примере кого-либо из них не буду. Будем считать, что VPN у вас есть и работает.
Как настроить
Команды, приведенные в цитатах, необходимо выполнять в окне терминала Mikrotik. В целом никто не запрещает настраивать это всё и в Winbox, но разбирать, какие параметры в какое поле Winbox вводить, вам придется самостоятельно.
Предварительные ласки
Проверяем наш VPN. Крайне важно, чтобы он работал еще до внедрения сервиса.
Наиболее простым способом проверки будет посещение любого сайта, который показывает ваш внешний IP-адрес (например, 2ip.ru), с включенным и выключенным VPN и фиксированием факта, что отображаемый ip-адрес меняется.
Тут у нас лежит первая и частая засада. Очень часто люди с неэкспертной квалификацией настраивают подключение к VPN по шаблону из интернета с использованием routing mark, особенно когда параллельно используют multiWAN схему. В принципе, ничто не запрещает использовать BGP-префиксы и в такой конфигурации, но ее нужно тщательно продумывать и подстраивать под текущие настройки, что в статье «в общем» не описать. Так что в дальнейшем подразумевается, что вы используете только классическую маршрутизацию по префиксам.
Если у вас сильно зажаты правила файрвола, возможно вам потребуется создать отдельное правило для выпуска трафика BGP с маршрутизатора.
На место gre-tunnel1 нужно подставить имя вашего интерфейса VPN-туннеля.
Укрепи и направь
Прописываем маршрут до сервиса antifilter.download через ваш VPN. Это действие нам поможет от случая, когда где-то на пути какой-то из провайдеров фильтрует BGP (на удивление, таких в России достаточно много).
На место gre-tunnel1 нужно подставить имя вашего интерфейса VPN-туннеля.
Также очень полезно иметь маршрут до VPN-сервера, жестко указывающий в вашего провайдера, но если у вас работает VPN — вероятно, такой маршрут у вас уже прописан.
Для работы VPN обычно используют маршрут по умолчанию, указывающий в VPN-туннель — после активации сервиса в этом маршруте смысла нет и его нужно удалить или задизаблить.
Первой командой мы создаем процесс BGP на вашем устройстве. В ней:
64512 — 16-битный номер автономной системы. Заменяем на любой по вашему желанию, кроме ASN сервиса (65432). В нашем конкретном случае нам не важно, какой там будет указан номер в диапазоне от 1 до 65534, но если делать все правильно — RFC6996 говорит нам, что для частного использования выделен диапазон 64512-65543.
81.117.103.94 — router ID (32 бита) в формате IPv4-адреса. В общем случае нам, опять же, не важно, какой там будет указан ID, но чтобы уменьшить вероятность пересечения с другим пользователем — лучше использовать ваш текущий внешний IP-адрес (посмотрев его на том же 2ip.ru). При его изменении менять router ID совершенно не обязательно.
Второй командой мы создаем BGP соединение с сервисом antifilter.download. В ней ничего менять не надо.
Третьей командой мы указываем, что для всех маршрутов, полученных от сервиса, нужно установить в качестве next-hop интерфейс нашего VPN. В ней на место gre-tunnel1 нужно подставить имя вашего интерфейса VPN-туннеля.
… и обоюдный оргазм
Если всё настроено правильно — через несколько десятков секунд, в течение которых процессор маршрутизатора будет на 100% загружен обработкой списка полученных префиксов, все заработает и трафик до полученных IP-адресов будет отправляться в VPN.
То, что пиринг поднялся, можно посмотреть по пути Routing — BGP — Peers в Winbox:
State должен быть Established, а в поле Count — отличное от нуля количество полученных префиксов.
Также характерным признаком того, что префиксы получены, является следующая картинка по пути IP — Routes в Winbox:
По клику где указано можно раскрыть весь список полученных префиксов и увидеть что-то вроде:
Важно, чтобы в поле Gateway было указано имя вашего интерфейса VPN и слово reachable (Distance при этом у вас будет другим, это нормально).
Если что-то не работает — проверьте прежде всего доступность сервиса. Сервер откликается на пинг, так что команда ping antifilter.download вполне себе покажет, все ли хорошо со связностью. Если пинг проходит — проверьте соответствие IP-адреса в пинге 45.154.73.71, потому что вы вполне можете читать эту статью в момент, когда сервис уже куда-то мигрировал.
Далее перепроверьте настройки и прочитайте Q&A ниже. А потом спросите в комментариях здесь или на канале MikrotikRus, там я тоже иногда поддерживаю решение, да и кроме меня там очень много грамотных людей.
А поговорить? (Q&A)
Решение перекрывает не все проблемы с блокировками
Конечно нет. Нужно понимать, что поскольку действие (блокировка) лежит фактически на 7 уровне модели ISO/OSI, то и противодействие (обход блокировки) наиболее эффективно работает на том же уровне модели. Сервис же предоставляет возможность борьбы на 3 уровне модели, что автоматически означает неидеальное совпадение. Если хочется более точного варианта — плагин для браузера, автоматически отправляющий некоторые сайты через прокси-сервер (например, SwitchyOmega для Chrome), будет работать гораздо лучше.
Я всё настроил, а мой любимый ресурс все равно блокируется. При этом подходящего префикса для его адреса в списке нет
Вероятно, РКН внес другой IP-адрес ресурса в реестр. Список IP-адресов генерируется полностью автоматически и не может редактироваться со стороны сервиса под каждый отдельный кейс вручную. Самое простое решение — прописать до любимого ресурса статический маршрут в VPN на маршрутизаторе.
Я всё настроил, а мой любимый ресурс все равно блокируется. При этом подходящий префикс для его адреса в списке есть, но nslookup выдает другой адрес из сети моего провайдера
Вероятно, ваш оператор связи использует многоуровневую систему блокировки контента, в том числе перехватывающую DNS-запросы с соответствующей коррекцией ответа. В этом случае вам может помочь перенаправление DNS в VPN или более интеллектуальные способы решения, описанные в частности в статье Переводим на DoH домашнюю сеть.
После включения сервиса в VPN отправляется трафик на IP-адреса, отсутствующие в реестре. Дефолт в VPN я отключить не забыл
Вероятно, в реестре есть IP-адрес из той же IP-подсети /24. По BGP сервис отдает только суммаризованные вверх префиксы /24 (т.е. даже если в реестре есть только адрес 1.2.3.4 — вы получите префикс 1.2.3.0/24, перекрывающий весь диапазон от 1.2.3.0 до 1.2.3.255).
Вы всегда можете исправить эту ситуацию для себя и конкретных адресов, прописав маршрут на них через провайдера в вашем роутере статически (статика по умолчанию побеждает динамику).
Раньше сервис можно было настроить для получения отдельных IP-адресов (по /32). Как получать их сейчас?
К сожалению, сервис банально уперся в проблему масштабирования. После появления нескольких сотен пользователей и заполнения реестра в отдельные моменты более чем 2 миллионами префиксов схождение BGP-процесса сервиса могло занимать десятки минут, со всеми вытекающими в виде разрыва сессий по таймауту. Many Bothans died to… Многие оптимизации были сделаны в попытках решить эту проблему, включая миграцию с VPS на выделенный сервер, разделения на фронт- и бэкенды и т.п., но кардинально проблема была решена только отказом от раздачи по BGP списка отдельных IP-адресов.Если вам необходим список отдельных адресов, вы можете получать их с сайта по HTTPS и далее внедрять в свое решение, например, как описано в статье Настройка BGP для обхода блокировок, или «Как я перестал бояться и полюбил РКН». Мало того, с сайта доступно гораздо больше разных списков, в том числе и в формате Mikrotik Address List, что позволяет более гибко использовать решение.
РКН замедляет Twitter, решение может помочь?
По сути — нет, потому что все эти замедления не отражаются в реестре (хотя законность такого действия спорна, но who cares). Для замедления используются ресурсы расставленных у операторов связи ТСПУ (DPI от компании RDP.RU), управление которыми идет централизованно и закрыто от постороннего взгляда. И высока вероятность, что в недалеком будущем вся фильтрация уйдет в эту сторону и реестр перестанет быть источником данных для нас.Мысль о развитии кастомных списков «Вот эти IP-адреса надо сделать доступными для обхода замедления» есть, но для бесплатного пет-проджекта нахрапом это требует чересчур много постоянных инвестиций. Если удастся придумать форму, в которой я смогу тратить на этот сервис разумное количество собственных сил и средств — обязательно реализую и опишу. Кстати, если у кого-то есть идеи, как это сделать, пишите в комментариях, обсудим. Ибо одна голова — хорошо, а две — мутация.
У меня есть вопрос, ответа на который нет в Q&A
Задайте его в комментариях к статье. Постараюсь ответить на все там же, а если вопрос будет интересен большому числу читателей — добавлю в Q&A.
Заключение
Предполагаю, что реестр как источник IP-префиксов для обхода блокировок исчерпает себя в начале-середине 2022 года, поэтому вряд ли эта статья потребует новой версии, скорее просто уйдет в архив как неработающее решение.
Мечтаю, впрочем, что это и подобные решения станут иметь исключительно историческую ценность и интернет будет тем, чем был раньше — транспортом для информации вне политики. Но эти мечты вряд ли сбудутся.
Так что, как обычно, буду рад, если статья кому-то поможет или, что еще лучше, сподвигнет более глубоко изучать сетевые технологии. Потому что в грамотности — наша сила.
Полезные ссылки
Прежде всего статья Настройка BGP для обхода блокировок, или «Как я перестал бояться и полюбил РКН» — она была наиболее полной и подробно описывающей логику решения. Если вам хочется более глубоко погрузиться в концепцию — эта статья практически идеальна (разве что сейчас уже имеет смысл внедрять это на bird v2, с соответствующей коррекцией конфигураций решения). И еще более полезны комментарии к ней.
Если вам интересно более глубоко понять, что такое и с чем едят BGP в частности и сетевые технологии вообще — не могу не порекомендовать «Сети для самых маленьких» от проекта LinkMeUp
Если вам хочется решение на Address List — NeoBeZ опубликовал короткий скрипт для выгрузки нужного с сервиса. Не забудьте, что потом по этому листу нужно реализовать набор правил для перенаправления трафика.
Для роутеров Keenetic есть решение от Александра Рыжова. Оно, конечно, базируется на старой версии сервиса, но легко корректируется под новую.
Конфиг для микротика с 7й прошивкой:
/routing bgp template
add as="ВАША ВЫДУМАННАЯ AS БЕЗ СКОБОК" disabled=no hold-time=4m input.filter=bgp_in .ignore-as-path-len=yes keepalive-time=1m multihop=yes name=antifilter routing-table=main
/routing bgp connection
add disabled=no hold-time=4m input.filter=bgp_in .ignore-as-path-len=yes keepalive-time=1m local.address= "ВАШ ВНУТРЕННИЙ ИП БЕЗ СКОБОК" .role=ebgp multihop=yes name=antifilter_bgp remote.address=45.154.73.71/32 .as=65432 router-id="ВАШ ВНЕШНИЙ ИП БЕЗ СКОБОК" routing-table=main templates=antifilter
/routing filter rule
add chain=bgp_in disabled=no rule="set gw *9; accept;" <<<===Вот тут по поводу *9 я не уверен. У емня вместо *9 название VPN интерфейса, но в конфиге именно так.