Домашний дата-центр

Что: f84cd7894bd51b0702488a395b0deda547abc857

Когда: 2022-09-16 13:03:08+03:00

Темы: hard

Домашний дата-центр

https://habr.com/ru/company/selectel/blog/688162/
Вот очень мне нравятся серверные железки, стойки и вся эта тема! Хочу и
дома иметь что-то подобное, но всё останавливается на вопросе "а зачем?".
Заиметь отказоустойчивые коммутаторы, маршрутизаторы -- неплохо однозначно.
Но за уйму лет хостинга всего и вся дома: у меня никогда не было проблем
с отказоустойчивостью и надёжностью. Два моих сервера: очень маленького
форм-фактора железки, но с серверными компонентами внутри. Работают без
нареканий. И только с появлением Intel NUC они перестали быть самыми
производительными железками.

В одном комментарии перечислили для чего нужна своя серверная:

    1. Поднять свой сервер мессенджера, того же джаббера
    2. Свой почтовик
    3. Хранилка бэкапов
    4. Медиабиблиотека: храним в одном месте, пользуемся с любого устройства
    5. Сервис синхронизации
    6. Локальный гит
    7. Сидбокс
    8. Домашняя автоматика
    9. Домашний VPN, чтобы туда-сюда не передергивать VPN на устройстве

IM, почта, локальный Git: всё это не требует ресурсов вообще. Просто
ноутбук может это всё хостить. Хранение резервных копий, медиа
библиотеки, seedbox -- всё это требует только достаточного места на
дисках. Ну и не совсем дохлое железо (речь про одноядерные процессоры
i386, и пару гигабайт RAM (хотя и с ней будет работать)) чтобы ZFS
хорошо работал. И вот всё просто упирается в кол-во дисков которое можно
подключить. В обычный большой корпус обычного компьютера можно вставить
с дюжину дисков без проблем (возможно докупая корзины 5.25"). Если я
приобрету ещё пару 16TB HDD (для зеркалирования, поэтому и два), то у
меня вообще всё что есть на лентах влезет на диски. И в одном сервере у
меня даже как-раз два слота для них есть свободных.

Многие говорят про запуск виртуальных машин -- для этого нужны мощные
железки. Не поспоришь. Но вот у меня, кроме совсем дохлых ВМ в которых
NetBSD, OpenBSD, какие-нибудь GNU/Linux, где я просто проверяю сборку и
работу некоторого своего софта, в этом году появилась только одна ВМ,
которой я отдаю много ресурсов, где я вожусь с одним огромным C++
проектом. Но он даже не каждую неделю включается и мощность ему нужна
только для ускорения процесса сборки.

У меня до сих пор дома все компьютеры соединяет один единственный 1Gbps
коммутатор на пять портов. И прямо сейчас подключены только три порта.
Just for fun, just proof of concept я бы мог задействовать по два
Ethernet порта для того, что в GNU/Linux называют bond-ом. Но на
практике мне это не требуется вовсе. MPTCP нету в FreeBSD, поэтому и
скорость в 2Gbps я просто так не получу из коробки.

Ну и не дёшево это всё конечно. Я так понимаю, что в первую очередь надо
смотреть на б/у серверы/оборудование, которое может быть существенно
дешевле. Но сразу в голове воспоминания о том, что фиг поймёшь не
обманут ли тебя.

Ну и полноценная, пускай и маленькая, стойка это здорово, но rack
mountable сервера жутко громкие. Для тишины нужные большие вентиляторы:
а это только пъедестальники, значит и никакой стойки (не брать же её
только для пары коммутаторов?). Или размещать на балконе. Но это значит
его надо утеплять, ибо зимой на нём как на улице у меня.

Плюс лично я ещё совершенно не хотел бы связываться с маршрутизаторами,
которые сделаны не на базе обычной ОС, которую ты сам поставил. Просто
угнетает психологически сама мысль о том, что ты полностью ограничен
функционалом встроенного ПО. Я спокоен если это тупой коммутатор. Или
если это коммутатор, который максимум управление VLAN-ами умеет делать,
но не более -- там как бы или он умеет/делает или нет, особо вариантов
больше нет. А вот маршрутизацию я бы хотел уже делать в полноценной ОС.
Или если речь ещё и про firewall. Поэтому у меня никогда не было
маршрутизаторов типа WiFi+ADSL+router+NAT+firewall: это всегда какой-то
обычный ПК с GNU/Linux или FreeBSD внутри. Точнее железки были, но
работавшие в режиме моста. Хотя маршрутизатор, по идее, штука тоже не
хитрая: приходит пакет, смотришь в таблицу куда его дальше отослать,
отсылаешь. Против таких тоже ничего не имею. Но дома такой не нужен,
ведь ещё же и firewall и NAT (к сожалению, пока legacy IPv4 ещё
распространён) понадобятся. Поэтому вместо специализированных
маршрутизаторов у меня бы был yet another сервер, пускай и достаточно
дохленький.

Возможно для всяких Syncthing, NextCloud и подобных штук нужны и
существенные мощности. Но я живу в Unix-friendly мире компьютеров: нужно
получить доступ к NAS, так монтируй его по NFS, который из коробки
встроен в ОС и вообще с ZFS (в FreeBSD) интегрирован. Нужна безопасная
связь для этого? Ну так поднимай WireGuard (в IPv6 мире -- IPsec). Чего
чего, но какого-то дополнительного софта для этого не надо мне.

Ну и я не сисадмин, не сетевик, не devops -- для локальных экспериментов
мне хватает и что имею. Даже 10Gbps сет��вые карты я так и не заимел, ибо
мне и 1Gbps хватает, так как я при этом всё равно упрусь в скорость HDD.

оставить комментарий

комментарий 0:

From: kmeaw
Date: 2022-09-18 10:27:54Z

Много интересного на эту тему написано на
https://www.reddit.com/r/homelab/

У меня раньше в квартире стояла 42U стойка со стоечным сервером, сейчас
уехала к маме в дом - там сильно более сложная топология сети и места
больше. Вместо неё у меня под потолком прикручены два маленьких 3U
телеком-ящика; в одном стоит свитч и две PDU, в другом - одна PDU. PDU
сверху удобно использовать, чтобы по полу не тянулись провода, а ещё они
бывают с IEC C13 розетками, то туда удобно подключать компьютерную
технику - блоки питания и мониторы. Вместо стоечного сервера у меня
обычный PC tower и NAS-коробка от QNAP на ARM.

В PDU с C13 у меня подключены паяльная станция, тестовый ATX-блок,
свитч, десктоп и два монитора, ещё на столе лежит свободный кабель.

Даже для домашних нужд приятно использовать серверные платы - у них есть
BMC. У меня в обычном корпусе сейчас собрана машина на ASUS P11C-C/4L, в
ATX-разъём которой воткнут DC-DC преобразователь с 24 VDC на входе,
которые берутся из промышленного БП с функцией UPS.

Rack mountable сервера можно сделать тихими, но это потребует некоторой
доработки - заменить высокооборотные маленькие вентиляторы на меньшее
число больших низкооборотных. С блоками питания сложнее - у серверов они
компактные, и туда не всякий вентилятор встанет; нужно изучать
конструкцию конкретных блоков или искать, какие есть потише. У Noctua
есть маленькие тихие вентиляторы, создающие неплохой поток воздуха.
Стоечный сервер раньше стоял у меня в кладовке рядом со спальней -
работа системы охлаждения была заметна только в момент перезагрузки BMC,
когда включались максимальные обороты.

Ещё одна приятная функция для домашнего сервера - сетевая загрузка.
Когда приходит кто-то из знакомых с программными проблемами, то
достаточно воткнуть его в загрузочный VLAN и выбрать в BIOS загрузку по
сети, не надо возиться с CD и флешками.

Если сильно заморочиться, то можно сделать домашний сервер местом
хранения и распространения секретов - поднять свой PKI, использовать его
для своих VPN и почтовых серверов, пакетных репозиториев,
SSH-сертификатов. TPM сейчас (благодаря Windows 11) стали доступны для
дома, их можно использовать и со свободными ОС - измерять прошивку,
загрузчик, ядро и остальные критические компоненты. Или использовать
встроенный в процессор Intel PTT, если он есть.

Git сам по себе ресурсов много не потребляет, но часто хочется ещё и
систему непрерывной интеграции со сборочным агентом. А если с друзьями
таким сервисом делиться, то часто и какой-то веб-интерфейс нужен.

Некоторые любят ещё и в игрушки поиграть, а раз сервер уже есть, то
можно видеокарточку в него поставить и в виртуалку с ОС для запуска игр
её пробросить. От этого же сервера можно кинуть длинный видеокабель до
монитора, чтобы не слышать шум, а события ввода по сети в виртуалку
доставлять.

Если дома есть акустическая система, то на тот же сервер можно
переложить задачу медиапроигрывателя и звукового сервера - если
какому-то устройству нужно воспроизвести звук, то можно отправить его по
локальной сети. А ещё такой сервер станет единой точкой управления
музыкой, чтобы сожителям не нужно было перекоммутировать источники звука
или каждому иметь свой.

Маршрутизацию и фаерволы для дома я тоже предпочитаю делать сам, а не
доверять производителю сетевого оборудования. Поэтому на свитче у меня
стоит SwOS, которая маршрутизировать не умеет, и всё через 802.1q
доезжает до сервера.

Б/у оборудование сильно дешевле, особенно если смотреть на недорогих
производителей - Supermicro, MikroTik. Новый свитч из магазина с 24
гигабитными и двумя 10-гигабитными портами мне четыре года назад
обошёлся примерно в 12 тысяч рублей, гигабитные порты у меня пока не
закончились. На вторичном рынке есть недорогие сетевые карточки на Intel
82598 и 82599.

> я бы мог задействовать по два Ethernet порта для того, что в GNU/Linux
> называют bond-ом. Но на практике мне это не требуется вовсе. MPTCP
> нету в FreeBSD, поэтому и скорость в 2Gbps я просто так не получу из
> коробки.

Если L2-оборудование поддерживает bonding (достаточно умный свитч или
прямое соединение двух машин), то 2Gbps можно и без MPTCP получить -
bonding ведь ниже MPTCP по стеку происходит.

> значит и никакой стойки (не брать же её только для пары коммутаторов?)

Помимо rack-mountable активного оборудования (в первую очередь серверов
и коммутаторов), для стоек бывают полки, PDU и кабель-органайзеры.
У Дмитрия Бачило стоят несколько серверов в tower-корпусах на полках в
стойке. Из плюсов - можно красиво сделать cable management, а ещё меньше
шансов устроить пожар - стойка металлическая.

> нужно получить доступ к NAS, так монтируй его по NFS, который из
> коробки встроен в ОС и вообще с ZFS (в FreeBSD) интегрирован

А как во FreeBSD связаны ZFS и NFS?

комментарий 1:

From: Sergey Matveev
Date: 2022-09-18 11:09:45Z


>У меня раньше в квартире стояла 42U стойка со стоечным сервером, сейчас
>уехала к маме в дом - там сильно более сложная топология сети и места
>больше. Вместо неё у меня под потолком прикручены два маленьких 3U
>телеком-ящика; в одном стоит свитч и две PDU, в другом - одна PDU. PDU
>сверху удобно использовать, чтобы по полу не тянулись провода, а ещё они
>бывают с IEC C13 розетками, то туда удобно подключать компьютерную
>технику - блоки питания и мониторы. Вместо стоечного сервера у меня
>обычный PC tower и NAS-коробка от QNAP на ARM.

Телеком-ящики впервые увидел на работе текущей: действительно выглядят
очень удобно. Хотя и небольшие стойки на колёсиках тоже для дома кажутся
вполне пригодными.

>В PDU с C13 у меня подключены паяльная станция, тестовый ATX-блок,
>свитч, десктоп и два монитора, ещё на столе лежит свободный кабель.

Про себя радуюсь что я ни разу в жизни ничего не паял, вообще не понимаю
в этом деле ничего и поэтому моя голова свободна ещё и от этих забот :-)

>Даже для домашних нужд приятно использовать серверные платы - у них есть
>BMC. У меня в обычном корпусе сейчас собрана машина на ASUS P11C-C/4L, в
>ATX-разъём которой воткнут DC-DC преобразователь с 24 VDC на входе,
>которые берутся из промышленного БП с функцией UPS.

Не очень понял (и в электричестве я не силён совсем): вместо "просто"
блока питания, подключен промышленный ИБП напрямую к материнской плате?
А зачем так? В том плане, что я просто не понимаю плюсов/минусов :-)

>Rack mountable сервера можно сделать тихими, но это потребует некоторой
>доработки - заменить высокооборотные маленькие вентиляторы на меньшее
>число больших низкооборотных.

А как заменить вентиляторы которые горизонтально воздух прогоняют? Они
же ведь на всю высоту сервера располагаются как правило? Ну, по крайней
мере, то что я видел в 1U и 2U серверах. Там же геометрически нельзя
большего диаметра ничего вставить, если крышку сверху хочется закрыть. А
если такого же диаметра, но меньшего кол-ва оборотов, то они же уже
просто не будут охлаждать должным образом.

>Стоечный сервер раньше стоял у меня в кладовке рядом со спальней -
>работа системы охлаждения была заметна только в момент перезагрузки BMC,
>когда включались максимальные обороты.

Да, на самом то деле помню что без нагрузки (и без перезагрузки) они
вполне себе конечно тихие могут быть. Особенно когда не в стойке рядом с
десятком других источников тепла. Но если же нагрузка будет, то не
слышать всё равно не удастся. Когда у людей вижу кладовки, то первой
мыслью приходит то, что это могло бы быть отличным местом для серверов.
Дверь в кладовку если шумоизолировать. Но у меня в квартире нету её,
только балкон может быть изолирован от жилых помещений.

>Ещё одна приятная функция для домашнего сервера - сетевая загрузка.
>Когда приходит кто-то из знакомых с программными проблемами, то
>достаточно воткнуть его в загрузочный VLAN и выбрать в BIOS загрузку по
>сети, не надо возиться с CD и флешками.

Ну это если часто делаешь подобное. На первой работе мы так почти всё
загружали (ну не я, а тестировщики и сборщики серверов). Дома я поднимал
diskless загрузку чтобы вспомнить какого это, плюс узнать что такое
iPXE, но потом забил, ибо так редко требуется с чего-то загрузится, что
я готов подождать несколько минут работы dd. Но да: штука полезная
бесспорно. Правда, опять же, не требующая каких-то серверов и ощутимых
мощностей, чтобы нужен был "дата-центр" :-)

>Если сильно заморочиться, то можно сделать домашний сервер местом
>хранения и распространения секретов

Согласен, тоже может быть полезно даже дома.

>Git сам по себе ресурсов много не потребляет, но часто хочется ещё и
>систему непрерывной интеграции со сборочным агентом. А если с друзьями
>таким сервисом делиться, то часто и какой-то веб-интерфейс нужен.

Да, про это даже не вспомнил (дома просто подобное не использую). Тут
соглашусь что уже на 2GB RAM ноутбуке не захостишь приемлемо такое.

>Некоторые любят ещё и в игрушки поиграть, а раз сервер уже есть, то
>можно видеокарточку в него поставить и в виртуалку с ОС для запуска игр
>её пробросить. От этого же сервера можно кинуть длинный видеокабель до
>монитора, чтобы не слышать шум, а события ввода по сети в виртуалку
>доставлять.

Этого я насмотрелся в видеороликах Linus Tech Tips :-). У него как-раз
"ПК" сделаны в rackmountable серверах, от которых длинные оптические
("электричество" на десятки метров (в частном доме) уже же не пустишь)
HDMI/USB кабели тянутся до рабочих мест. Вообще, если есть место для
стойки с шумными серверами (кладовка, где-то там что-то в частном доме),
то идея мне нравиться протянуть от них "консоль" до рабочего места!

>Если дома есть акустическая система, то на тот же сервер можно
>переложить задачу медиапроигрывателя и звукового сервера - если
>какому-то устройству нужно воспроизвести звук, то можно отправить его по
>локальной сети. А ещё такой сервер станет единой точкой управления
>музыкой, чтобы сожителям не нужно было перекоммутировать источники звука
>или каждому иметь свой.

Ну это уже я отношу к специфичным use-case-ам (хех, а домашний PKI нет
:-)). У меня всю жизнь вся акустика это только наушники (+ЦАП и
остальное), наушники в MP3-плеере для аудиокниг (слушаю когда вне
компьютера, например прибираюсь или мою посуду). Но всё должно стать
сильно сложнее, если есть ещё кто-то рядом и хочется посмотреть
совместно фильм например. Ну тут опыта нет :-). Да и вообще сейчас
понимаю что сильно всё проще если пользователь всей инфраструктуры это
только один человек. Если бы жил с родителями, то там бы нужно ещё было
думать про Samba какую-нибудь, действительно, чтобы и родители со своим
Windows имели доступ к медиатеке.

>Маршрутизацию и фаерволы для дома я тоже предпочитаю делать сам, а не
>доверять производителю сетевого оборудования. Поэтому на свитче у меня
>стоит SwOS, которая маршрутизировать не умеет, и всё через 802.1q
>доезжает до сервера.

Ага, понимаю. У родителей кстати как-раз VLAN-ы использовал для
сегментирования сетей. Но в качестве коммутатора уже выступал отдельный
компьютер с сетевухами (помню что отдельно покупал 100Mbps Intel Ether
Express Pro, который даже под DOS работал).

>Б/у оборудование сильно дешевле, особенно если смотреть на недорогих
>производителей - Supermicro, MikroTik. Новый свитч из магазина с 24
>гигабитными и двумя 10-гигабитными портами мне четыре года назад
>обошёлся примерно в 12 тысяч рублей, гигабитные порты у меня пока не
>закончились. На вторичном рынке есть недорогие сетевые карточки на Intel
>82598 и 82599.

Во-во, наслышан про подобные цены! И слышал про 10GbE Ethernet
коммутаторы на 12/24 портов с SFP-шками менее чем то ли 50, то ли 100
тысяч. Может чего и путаю, но помню про ощутимую дешевизну. И про NIC-и
и HBA дешёвые. Собственно у меня SAS HBA за пару тысяч была куплена б/у
как-раз. И ломаться то там особо нечему, ибо даже вентилятора нет.

>Если L2-оборудование поддерживает bonding (достаточно умный свитч или
>прямое соединение двух машин), то 2Gbps можно и без MPTCP получить -
>bonding ведь ниже MPTCP по стеку происходит.

Bonding то можно сделать и через тупой коммутатор, соединив два
компьютера четырьмя кабелями через него, но я же не смогу получить
увеличение пропускной способности для единственного TCP соединения? Если
пакеты разбрасывать по портам round-robin-ом, то будет их
переупорядочивание и жуткая деградация скорости TCP из-за этого.
Насколько читал и знаю: умные коммутаторы (ну или lagg/LACP реализации в
ОС) всё равно будут кидать трафик между двумя IP-адресами (или между
двумя TCP/UDP-портами) через один порт Ethernet. У меня же дома это
вообще усугубляется тем, что физически по Ethernet у меня идёт трафик
между fc00::98f1 --> fc00::2752 (например) адресами: IPsec IP-in-IP
туннель, внутри уже которого IPv6 и IPv4 до Интернета. С точки зрения
второго уровня: у меня ровно один IP с ровно одним IP другого сервера
общаются.

>Помимо rack-mountable активного оборудования (в первую очередь серверов
>и коммутаторов), для стоек бывают полки, PDU и кабель-органайзеры.
>У Дмитрия Бачило стоят несколько серверов в tower-корпусах на полках в
>стойке. Из плюсов - можно красиво сделать cable management, а ещё меньше
>шансов устроить пожар - стойка металлическая.

Согласен, не поспоришь.

>А как во FreeBSD связаны ZFS и NFS?

"Интеграция" конечно громко звучала, но просто навсего все "sharenfs"
property у dataset-ов автоматически попадают в /etc/zfs/exports, который
по умолчанию тоже используется наравне с /etc/exports. Если мне надо
dataset сделать доступным по сети, то я просто делаю: zfs set
sharenfs="-maproot=stargrave -ro -network 2a03:e2c0:XXXXXXX/YY" и он
будет доступен через NFS сразу же. В Solaris и для iSCSI аналогичная
интеграция с ZFS имеется.

комментарий 2:

From: kmeaw
Date: 2022-09-18 12:27:03Z

> Не очень понял (и в электричестве я не силён совсем): вместо "просто"
> блока питания, подключен промышленный ИБП напрямую к материнской плате?
> А зачем так? В том плане, что я просто не понимаю плюсов/минусов :-)

В плату подключается небольшой модуль picoPSU - это DC-DC
преобразователь, который из одного входного напряжения делает весь
спектр напряжений, необходимый для работы компьютера. Он всего раза в 3
больше по высоте обычного разъёма ATX PSU, поэтому легко влезает в
корпус.

Снаружи корпуса находится металлический блок питания, куда подключены
picoPSU, последовательно пара аккумуляторов на 12 VDC и сетевое
напряжение 230 VAC.

Плюс в том, что нет лишнего преобразования 230 VAC -> 12 VDC -> 230 VAC,
которое совсем не бесплатное в плане КПД. Если в компьютере уже стоит
современный ATX PSU с APFC, то он бы и от 32 VAC запустился, но к форме
"синуса" он может быть привередлив. Минус в том, что я не могу в такой
"UPS" воткнуть любой электрический прибор. Но у меня из важного есть
только свитч, который умеет питаться от 24 VDC и оптический терминал,
который запитан от USB этого же сервера.

> А как заменить вентиляторы которые горизонтально воздух прогоняют?
> Там же геометрически нельзя большего диаметра ничего вставить, если
> крышку сверху хочется закрыть.

У 1U и 2U либо с открытой крышкой держать, либо сверлить её. В 3U уже
влезают обычные большие вентиляторы, если их перевернуть.

> я же не смогу получить увеличение пропускной способности для
> единственного TCP соединения?

Увы, так не получится. Зато можно будет обслужить больше клиентов
одновременно. А какой-нибудь rsync при быстрых дисках/хорошем
кешировании всё равно приходится запускать в несколько процессов, иначе
он в CPU упирается.

> У меня же дома это вообще усугубляется тем, что физически по Ethernet
> у меня идёт трафик между fc00::98f1 --> fc00::2752 (например)
> адресами: IPsec IP-in-IP туннель, внутри уже которого IPv6 и IPv4 до
> Интернета.

Круто, нет доверия даже проводной сети внутри дома. У меня безопасность
проводной сети ограничивается нарезанием сети на VLAN и запретом
некоторых видов трафика (IPv6 RA, DHCP, ARP reply с некоторых IP) для
не-роутеров.

комментарий 3:

From: Sergey Matveev
Date: 2022-09-18 12:48:44Z


>В плату подключается небольшой модуль picoPSU [...]

Ага, понял. Круто, красиво!

>У 1U и 2U либо с открытой крышкой держать, либо сверлить её. В 3U уже
>влезают обычные большие вентиляторы, если их перевернуть.

С большим сервером конечно проще. А открывать или модифицировать 1U не
хотелось бы: всё же в нём всё заточено под то, чтобы насквозь пропускать
потоки воздуха. Впрочем... раз это дешёвая (б/у), хорошая и надёжная
железка, то можно и покорёжить её, ничего страшного, даже если и КПД
охлаждения чуть снизится из-за неидеальности потоков продува.

>> я же не смогу получить увеличение пропускной способности для
>> единственного TCP соединения?
>
>Увы, так не получится. Зато можно будет обслужить больше клиентов
>одновременно. А какой-нибудь rsync при быстрых дисках/хорошем
>кешировании всё равно приходится запускать в несколько процессов, иначе
>он в CPU упирается.

Поэтому идея MPTCP и нравится: можно было бы единственное TCP соединение
распараллелить. rsync может и в CPU упрётся, а вот NFS (или там iSCSI)
особо ничего не жрёт: для него бы пригодилось.

>Круто, нет доверия даже проводной сети внутри дома. У меня безопасность
>проводной сети ограничивается нарезанием сети на VLAN и запретом
>некоторых видов трафика (IPv6 RA, DHCP, ARP reply с некоторых IP) для
>не-роутеров.

Не имею железки которая бы нарезала VLAN-ы (даже банально свободного
компьютера с достаточным количеством NIC-ов). Поэтому изолирую сегменты
сети фактом использования IPsec-а. NFS (а сейчас ещё и например iSCSI
(caceb7c690176fd88f8af317d0a5d2ba3e765b02)) и firewall разрешают до них
стучаться только из сети, которая может быть только внутри IPsec
туннелей. Факт успешного прохождения трафика с ряда IPv6 адресов,
означает что IPsec уже аутентифицировал эту машину. Для гостей просто
приходится подключать иногда WiFi (через который в сети окажутся Android
и iOS), ну и для себя я временами включаю PowerLine адаптеры. И всё это
идёт в тупой коммутатор. Недостаток моего текущего IPsec решения: весь
трафик проходит через один сервер (шлюз), даже если компьютеры могут
достучаться друг до друга и напрямую через коммутатор.

Сгенерирован: SGBlog 0.34.0