Facebook Twitter Viber WhatsApp Telegram Linkedin ReddIt Email Принтирай LINE

...
Facebook Twitter Viber WhatsApp Telegram Linkedin ReddIt Email Принтирай LINE
Коментари Харесай

Използване на Raspberry Pi като рутер със само един мрежови порт

Facebook Twitter Viber WhatsApp Telegram Linkedin ReddIt Email Принтирай LINE
Ако ви е нужен по-специален личен, една отлична хардуерна платформа за него може да бъде Raspberry Pi 4 Model B. Този модел е по-подходящ, тъй като по-старите версии на Raspberry Pi имат доста по-ниска скорост за продан на мрежовите данни. Техните ограничавания в мрежовата скорост са толкоз огромни, че тези едноплаткови компютри няма по какъв начин да се употребяват в ролята на интернет рутери, в случай че е нужна скорост за достъп към интернет от над 100 Mb/s.

Миникомпютърът е подобаващ заради следните съществени аргументи:
Той е много евтин Той е задоволително бърз Той може да обслужва гигабитов мрежови интерфейс Той употребява напълно малко електрическа сила
Главният проблем на Raspberry Pi 4 Model B е, че той има единствено един мрежови интерфейс – един мрежови порт . За един рутер са нужни най-малко два от тези портове:
Към първия порт се включва интернет кабела, интернет модема или рутера, който дава достъп до Глобалната мрежа – съвършен вид за построяването на бридж Вторият интерфейс се включва към домашната мрежа или към хъба на домашната мрежа
Най-лесното решение, в случай че се употребява Raspberry Pi, е да се купи спомагателна USB3 мрежова карта за към $20, след което планът може да се смята за завършен:

Какво ще си помислите, в случай че ви кажа, че напълно същото може да се направи единствено с единствения мрежови интерфейс на Raspberry Pi 4 Model B? Нека да се задълбочим и да разтеглим нашите знания.
Да се срещнем с VLAN
Може би ще се учудите, че ще стане дума за технология, която стана известна още през 1990-те години и необятно се употребява в корпоративните среди.

От друга страна, аз имам чувството, че тази технология е на процедура незнайна за хората, които са надалеч от администрирането на корпоративни мрежи. Струва си да обсъдим тематиката VLAN.
Какво е VLAN?
Технологията VLAN ( Virtual Local Area Network ) – виртуална местна мрежа дава опция за основаването на разнообразни, отделени една от друга виртуални мрежи благодарение на една и съща единствено една физическа връзка и еднакъв хъб. По този метод внезапно се понижава броят на кабелите, които биха били нужни за построяването на няколко действителни, разграничени една от друга местни мрежи.

Ако желаете трафика на другите мрежи да минава по еднакъв кабел и еднакъв хъб, то по какъв начин да стане идентификацията на другите потоци на този трафик?

При потреблението на VLAN технологията мрежовите пакети се маркират благодарение на тагове. И защото тази технология работи на равнище Ethernet, по-правилно е да не приказваме за мрежови пакети, а за Ethernet фрагменти. Лично аз съм на мнение, че тези елементи в терминологията не са чак толкоз значими за разбирането същността на тази технология.

 
Достатъчно е да знаем, че се употребяват маркери или тагове, които се слагат преди всеки Ethernet кадър. Тези тагове оповестяват на устройствата, поддържащи VLAN, на коя тъкмо местна мрежа принадлежи фрагмента и надлежно, мрежовия пакет, който минава през мрежата.

При този метод потоците от трафик на другите мрежи елементарно се разграничават един от различен. А във въпросните тагове няма нищо комплицирано и забавно. Те се назовават просто VLAN ID и са елементарни цифри от 1 до 4096. Да подчертая, че множеството евтини хъбове могат да поддържат най-вече от 32 до 64 виртуални местни мрежи (VLAN). По-скъпото корпоративно съоръжение може да поддържа до 4096 VLAN. В нашия случай това няма изключително значение.
Управляваният хъб
След като в резюме се запознахме с VLAN технологията, дано да помислим, по какъв начин в нашия случай можем да я използваме.

Като начало на нас ще ни е нужен управляем мрежови хъб, който поддържа VLAN.

Най-евтиният прекъсвач (хъб) с поддръжката на VLAN, който съумях да открия е TP-LINK TL-SG105E с цена малко под $25. Това е хъб с 5 врата. Ако ви е нужно повече, 8-портовата версия е с няколко $ по-скъпа.

На процедура всички хъбове от този вид оферират уеб-интерфейс, който дава опция за настройването на VLAN от някой от компютрите в мрежата.
Маркираният и немаркираният трафик
Когато приказваме за VLAN, би трябвало да знаем, че мрежовият порт на суича (хъба) може да бъде в две положения:
Той може да е член на някоя съответна VLAN мрежа (немаркиран трафик) Той може да дава отговор за прехвърлянето на трафика на няколко VLAN мрежи (маркиран трафик)
Ако даден порт на хъба е член на VLAN, то той се държи като всеки различен порт на суича. В този режим той явно може да е член единствено на една VLAN мрежа. За този порт са отстранени всички VLAN тагове.

Но портът, който е предопределен за прехвърлянето на маркирания с тагове VLAN трафик, просто пренасочва този трафик във типа, в който го получава – т.е., дружно с VLAN маркерите (таговете).

Именно тази ловкост ще използваме за прехвърлянето на мрежовите пакети от другите виртуални мрежи (VLANs) благодарение на нашия Raspberry Pi посредством неговия един-единствен порт благодарение на единствено един кабел.

 
Нека се спрем по-подробно върху показаната нагоре скица.

Да си представим че мрежови пакет от интернет идва в интернет модема и се подава на порт номер №1  на хъба.

Хъбът знае, че какъвто и трафик да пристигна на този порт, то той принадлежи на VLAN 10. Тъй като този трафик би трябвало да бъде изпратен към Raspberry Pi рутера, хъбът маркира мрежовия пакет, като му прибавя VLAN таг и го изпраща дружно с тага-маркер от Raspberry Pi към порт №2 на рутера.

Raspberry Pi рутерът от своя страна, както и хъба, е надъхан за работа с VLAN. Тагът на мрежовия пакет оповестява на рутера към коя тъкмо виртуална мрежа би трябвало да се изпрати този пакет.

Ето един образец за настройка на помощната стратегия netplan, показващ описаната дотук скица:
network: version: 2 ethernets: enp2s0f0: dhcp4: no vlans: enp2s0f0.10: id: 10 link: enp2s0f0 addresses: - 68.69.70.71/24 (fake internet address) gateway4: 68.69.70.1 (fake upstream ISP router) enp2s0f0.20: id: 20 link: enp2s0f0 addresses: - 192.168.0.1/24 (internal network address, acting as gateway)
Виждаме че VLAN мрежовите пакети, които идват във тип на към този момент маркирани пакети, се изпращат (без таговете) към виртуалния мрежови интерфейс, принадлежащ на тази съответна мрежа. Всички тези виртуални мрежови интерфейси се получават от единствено един действителен физически интерфейс (порт) (enp2s0f0). Виртуалните мрежови интерфейси са си името на тъкмо този действителен физически порт, към който е добавена структура във тип „.(VLAN ID)“.

Навярно към този момент сте се досетили защо загатвам. Тези два виртуални мрежови интерфейса доста наподобяват на рутер с два действителни физически врата. В резултат от това всички нужни интервенции по маршрутизацията и по транслирането на мрежовите адреси, които би трябвало да бъдат осъществени, се реализират не благодарение на физически интерфейси/портове, а благодарение на виртуални интерфейси/портове.
Как се работи с VLAN
За да може да се работи с VLAN е нужен желателно на ниска цена хъб, поддържащ VLAN, каквито са на процедура множеството суичове. Управлението става благодарение на напълно елементарен уеб-интерфейс.

В този образец използваме хъба TP-LINK TL-SG105E. За да стигна до нужната страница, в неговия интерфейс аз изминах пътя VLAN –> 802.1Q VLAN.

От тази таблица добиване следната информация:
Порт №1 – немаркиран член на VLAN 10 Порт №2 – маркиран член на VLAN 10 и VLAN 20 Порт №3 – немаркиран член на VLAN 20
Обърнете внимание, че се предлага да се махат портовете от VLAN, които не се употребяват в мрежата. Ето за какво аз отстраних портовете 1, 2 и 3 от общоприетата мрежа VLAN 1. Сега, когато към този хъб бъдат включени повече устройства, съответните портове ще би трябвало да се създадат немаркирани членове на VLAN 20.
Възможни проблеми
Очевидно е, че когато се употребява един-единствен порт, то ние можем да разполагаме само с пропускателната дарба на този порт. В множеството случаи това не е проблем, тъй като гигабитовият Ethernet работи в режим цялостен дуплекс, което значи че има действителни физически съединения както за входящия, по този начин и за изходящия трафик. Тук проблеми няма.

По-различно е, когато Raspberry Pi се употребява и като сървър за аварийни копия на данните с включен към едноплатковият компютър външен диск, което в действителност е едно много постоянно употребявано решение. В този случай трафикът при основаването на аварийните копия и интернет трафика ще се борят за честотната лента на еднакъв гигабитов порт.

Друга присъща специфичност е, че главният размер на трафика е обвързван с TCP връзките. Когато се реализира евакуиране на информация, има продан на данни и в двете страни. Изтегляната информация образува главния трафик, само че има и значителен поток от данни, формирани от мрежови пакети, които се връщат в интернет и оповестяват на предаващата страна по тази причина, че отсрещната страна е получила съответните данни – в случай че това удостоверение го няма, същите данни ще бъдат изпратени отначало. Това са в съществени линии проблемите, с които би трябвало да се съобразяваме при потреблението на сходни решения.
Raspberry Pi 4 Model B в ролята на рутер
Главното ограничаване на Raspberry Pi 4 Model B е продуктивността. Ако да вземем за пример употребявате IPTABLES в в ролята на защитна стена, то аз от опит знам, че пропускателната дарба на мрежата пада до 650 Mb/s.

Това може да се смята за проблем само при положение, че се употребява гигабитов достъп до интернет или скоростта за продан на данни с интернет надвишава тази, с която може да се оправи дребния Raspberry Pi.

Но в случай че скоростта на интернет връзката не е доста покрай гигабитовата, то този проблем не ви визира.

Може би за основаването на рутери, сходни на описания дотук, е по-подходящ едноплатковият микрокомпютър Raspberry Pi 400 или други платформи, основани на системи върху чипа, които са по-бързи от употребяваната SoC в Raspberry Pi 4 Model B. Но за моите цели този дребен компютър е изцяло задоволителен.
Изводи
Дали да си сглобите описания дотук Raspberry Pi рутер зависи единствено от вас. Аз употребявам сходно решение дружно с x86 сървър от към 10 години, тъй като няма по какъв начин да прекарам втори кабел от модема до стаята, където се намира рутера. За мен това е едно доста комфортно решение.

 

 
Източник: kaldata.com


СПОДЕЛИ СТАТИЯТА


КОМЕНТАРИ
НАПИШИ КОМЕНТАР