Как стать автором
Обновить

Комментарии 38

Прошу прощения, я пригласил этого пользователя из песочницы, а оказалось что сам пост автоматически публикуется. Получился легкий некропостинг. Исходник аж за 2013 год.
Надеюсь, с тех пор он перешёл таки на OpenWRT
DDWRT был весьма неплох. Хотя сейчас я бы Mikrotik виртуализировал.
С Микротиком это не так интересно — они сразу готовые рабочие образы распространяют (Mikrotik CHR).
Ну и к текущему моменту всё же проброс сетевых карт методами SR-IOV и/или pci passthrough более выгоден. Плюс это даст возможность управлять wifi сетями в самом виртуальном роутере.
Ткни, что почитать на эту тему, если не трудно. Мне достаточно актуально по работе. Я так понимаю, что это прямой проброс железа карточки для виртуальной машины? А обычно это просто виртуализация средствами vt-d с софтовой обработкой на CPU?
Про SR-IOV от RedHat:
rhelblog.redhat.com/2016/05/23/sr-iov
redhatstackblog.redhat.com/2015/03/05/red-hat-enterprise-linux-openstack-platform-6-sr-iov-networking-part-i-understanding-the-basics
redhatstackblog.redhat.com/2015/04/29/red-hat-enterprise-linux-openstack-platform-6-sr-iov-networking-part-ii-walking-through-the-implementation

Pci Passthrough и технология VT-D — это как раз аппаратный проброс реального устройства в виртуальную машину. Требуется поддержка от процессора и материнской платы. Аналог AMD — IOMMU. При этом гостевая система считает, что к ней подключено полноценное pci устройство с соответствующей же производительностью. Помимо сети так ещё часто подключают видеокарты для игр/расчётов на виртуальной машине. Временами — raid контроллеры, когда гостю требуется полное управление дисковой подсистемой.

В простых ситуациях (и в этом посте) используют сетевой мост для связи виртуальной машины с реальным адаптером. При этом практически вся работа ложится на центральный процессор, что не очень хорошо сказывается на времени отклика при высоких нагрузках на систему.

Разница между SR-IOV и pci passthrough в том, что для первого метода требуется дополнительная поддержка конкретным устройством (сетевой картой, например). При втором методе пробросить можно что угодно (но тут уже зависит от жадности производителя — nvidia очень не любит проброс видеокарт и пытается заставить людей покупать карты серии quadro).
а разве для гостя будет разница с физическим устройством? Или Nvidia детектит сам факт установки драйверов на виртуалке?
Да, именно факт установки драйверов на виртуалке. Причём одновременно используют несколько методов сразу.
А у них это лицензией запрещено?
Официально я такого запрета в лицензионном соглашении не вижу. Но драйвера их этим занимаются, а модифицировать их запрещено. Без драйверов же использовать видеокарту не получится.
Я бы сказал SR-IOV позволяет на одной сетевой карте создать несколько Virtual Function устройств и пробрасывать в виртуалку уже их, а не всю сетевую карту целиком.
В итоге они работают почти так же как macvlan, но силами сетевухи: отлавливая пакеты с определенным MAC-адрессом. Сделать виртуальный бридж на них не получится.
То есть нарезать ресурсы реальной карты на несколько виртуальных машин, и при этом каждая будет почти на уровне bare-metal работать со всем этим?
Именно так, сами VF, без включения IOMMU можно активировать и на хостовой машине, определяться они будут как отдельное PCI-устройство.
Технология IOMMU нужна как раз для того что бы осуществить этот проброс устройства непосредственно в виртуалку.
image
Нашел схему
nvidia очень не любит проброс видеокарт и пытается заставить людей покупать карты серии quadro


В KVM это обходится опцией сокрытия виртуализации для гостевой системы
Однозначно неплох, если сравнивать со стоковой прошивкой. Но по сравнению с OpenWRT/LEDE, единственный его плюс — доступ к проприетарным драйверам.
Я с таким хоть и не сталкивался, но разве нет возможности в том же OpenWRT/LEDE собрать проприетарный модуль руками (нативным или кросс-компилятором — роли не играет) и поставить драйвер в систему явным образом (руками)?
Заголовочники то всяко доступны ИМХО
Ну не совсем некропостинг ИМХО.
Сама идея актуальна и по сей день. Особенно на тестинге, где одна физическая машина и куча виртуалок.

Я в 2017-м использовал подобную схему на тестинге:
— Хостовая OS debian jessie, ядро 2.6.32-vz, OpenVZ 6
— Внутри контейнеры OpenVZ+виртуалки KVM

Была задача, для которой надо было xtables-addons. Собираться на кастомном ядре данный аддон отказался. В итоге я поднял VM (стандартная jessie), которая служила шлюзом, тем самым решив проблемы со сборкой xtables-addons, и, попутно освободив хостовую ОС от задач шлюза.

P.S. Задача, по сути, та же, что и у автора, только заместо WRT был использован debian
Заводил как-то Mikrotik CHR под VBox на удаленной машине (рабочая станция SCADA с доступом в сеть АСУ) за кучей NATов. Оттуда поднимал VPN к своему офисному маршрутизатору, и уже через туннель имел из офиса полный доступ к сети АСУ и SCADA станции.
В бесплатном варианте там bandwidth зарезан?
Да, пользовался бесплатным, с ограничением на интерфейс 1Mbps. Но для моих задач «выше крыши» хватало.
Не обязательно. Делаете на сайте триальную лицензию на 60 дней и скорость 1Гб/10Гб.
По истечении ничего не происходит. Только нельзя обновится. Но многие идут дальше и перевыпускают лицензию на еще 60 дней и так далее.

image

Эта якобы «дырка» работает уже не первый год и была озвучена на MUM.

/system license generate-new-id

/system license renew account=#####@gmail.com password=##### level=p-unlimited

/system license print
Санкции не прилетят?)
А разве вы что-то нарушаете? Я же выше написал, что этот «хак» был озвучен на официальной конференции MikroTik.
На профильном форуме по хакам ни о каких последствиях ничего не пишут. Напомню, что это работает уже полтора года. Если бы латыши думали что это плохо, то наверно бы прикрыли это.
Я попробую) Спасибо.
Вчера мне за 5мин. до начала матча Россия-Египет приспичило мне достать с полки неиспользуемый (но заранее настроенный) декодер IPTV от Ростелекома. Декодер шёл по акции вместе с пакетом интернет+тв за 300руб./50Мбит и нафиг не был нужен. Но я вспомнил, что РТК аннонсировал бесплатные HD-трансляции ЧМФ 2018.
Внезапно (с), выяснилось, что мой роутер (не так давно был перепрошит OpenWRT) by default, оказался без поддержки igmp мультикастинга. В результате, я почти весь первый тайм имел секс с настройкой роутера. Хорошо, что голы пошли именно во втором тайме :)
Я к чему это всё… в dd-wrt, насколько я помню, галочка включить поддержку igmp proxy доступна «из коробки».
К слову, igmpproxy в OpenWrt включается одной командой установки opkg. Ну и разрешить igmp snooping на нужном интерфейсе.
А вот дальше начинается увлекательное приключение по отлову сетей из которых идет вещание через syslog и добавление их в altnet'ы.

Вообще интересно, как это реализовано одной галочкой в DD-WRT, ибо igmprpoxy там тот же самый, просто конфиг заполняется автоматически.
Udpxy и забыть igmpproxy как страшный сон. (плейлист придётся немного переделать)
плейлист в приставке ростелекома? у них не поддерживаются софт-плееры.
попробовал igmpproxy. обычные каналы работают отлично, а вот часть HD-каналов рассыпаются (как назло, матч-HD и Россия-1 HD). непонятно почему. нагрузка на проц. роутера около 1%. альтнет прописал тот, что нужно.
пока остановился на бридже порта приставки с wan-портом.
А кто-нибудь, для простого домашнего использования, пробовал отечественную прошивку Wive-NG?
Мне визуально показалось, что эта прошивка на дешевом роутере уделывает по скорости дорогие и навороченные роутеры.
Но, правда, не даёт глубоко разбирать пакеты данных.
Почему никто не вспоминает про pfsense? Для виртуального роутера эта система просто на порядок лучше, чем openwrt. Да и для физического тоже.
А чем лучше? Просто интересно, я его никогда не щупал.
Удобнее и мощнее. Буквально любое действие делается из web интерфейса, есть плагины. По количеству функций сравнима, наверное, с микротиком, или даже превосходит его. Имеет просто лучший, web интерфейс из всех, что я видел, который полностью избавляет от необходимости лезть в консоль. Но на любой дешевый роутер эту систему не поставишь, так как под капотом там полноценная FreeBSD.
Вот посмотрите только, как оно выглядит, информативно, красиво и настолько же функционально. Категорически советую попробовать.
Заголовок спойлера
image
Красиво, но у меня уже везде микротики. Буду иметь в виду.
pfsense/opnsense удобны, когда нужно организовать софтовую маршрутизацию с дополнительными фичами какими-либо. Например — отказоустойчивая маршрутизация с сохранением соединений при переключении на резерв и автоматичесим реплицированием конфигурации (CARP+pfsync+XMLRPC Sync). И встроенным haproxy. И squid. А ещё отследить попытки взлома (IPS). И при этом авторизовать пользователей в Active Directory.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории