Адміністратор-початківець, що обслуговує малу мережу, як правило, навіть не замислюється про таке поняття як VLAN. У той же час, складно уявити сучасний середній бізнес, не кажучи вже про велике, яке б не використовувало при побудові своєї мережі технологію VLAN.
Як правило, всі інструкції з VLAN досить складні для розуміння новачком і, тим більше, людиною, у якої відсутня спеціальна освіта за цим напрямком.
Для нативного розуміння технології VLAN потрібна наявність певного розуміння базових процесів, які у локальних мережах. І саме такого матеріалу в переважній більшості інструкцій немає взагалі. Якщо ж вони й є, рівень їхнього опису може виявитися надто складним для новачка. Саме з цієї причини багато адміністраторів-початківців обходять цю тему стороною, не приділяючи їй належної уваги.
Зі свого боку, ми підготували для читачів публікацію, за допомогою якої базові принципи налаштування VLAN зможе освоїти навіть людина без спеціальної освіти.
Деякі терміни і тонкощі ми свідомо опустили, щоб матеріал був зрозумілий найбільш широкому колу читачів.
Базові поняття принципів роботи локальних мереж
Докладно розглядати модель OSI ми будемо, т.к. це забере досить багато часу і ускладнить розуміння матеріалу. Але в загальних рисах розуміти модель OSI все ж таки потрібно.
Нижче пропонуємо до вашої уваги найпростішу і зрозумілішу схему моделі OSI.
Перший рівень OSI – фізичний. Як неважко здогадатися, у ньому відбувається фізична передача даних як імпульсів. Іншими словами це передача бітів 0 і 1, незалежно від того, яке середовище передачі даних використовується, будь то кручена пара, оптика або навіть коаксіал (наприклад, в мережах DOCSIS).
Другий рівень OSI – канальний. На канальному рівні вже з'являється такий термін як MAC-адреса.
Ви, мабуть, часто зустрічаєте на сайтах виробників мережевого обладнання в описах комутаторів позначку «Layer 2». Це і означає те, що комутатор працює на другому рівні моделі OSI.
З поняттям MAC-адреси ви стикаєтеся постійно, це не що інше, як унікальна фізична адреса обладнання, представлена у форматі CC:2D:E0:B4:ED:AD. Перші символи МАС-адреси містять інформацію про виробника, саме з цієї причини в комплексних заходах підвищення безпеки багато адміністраторів практикують заміну зовнішніх МАС-адрес на WAN-портах як один з механізмів маскування виробника обладнання та ускладнення його ідентифікації. Щоб уникнути конфліктів, МАС-адреси роблять унікальними.
Ми зараз не розглядатимемо хаби (Hub, концентратори), як пристрої, які остаточно застаріли. У той же час ви повинні знати, що такі пристрої раніше використовувалися. Відмінність хаба від комутатора полягає в тому, що хаб завжди дублює всі пакети на всі порти.
На сьогоднішній день сучасні мережі будуються з використанням комутаторів другого рівня (або третього). Комутатори також називають свічами, від англійської Switch.
На відміну від хабів, у комутатора є таблиця MAC-адрес (MAC-table). У характеристиках комутатора завжди вказано розмір цієї таблиці, наприклад 2К, 4К або 8К записів. Для більш високорівневих рішень розмір таблиць ще більший.
Навіщо потрібна ця таблиця? Під час роботи комутатор аналізує заголовки кадрів (MAC Header) і перевіряє, з якого МАС надійшов кадр. Після цього МАС відправника динамічно прив'язується до конкретного порту.
Якщо комутатор отримав кадр із невідомим йому кінцевим МАС, він розішле його на всі порти. По суті це «режим навчання». Потім, після отримання відповіді від одержувача прийому кадру, комутатор прив'яже до конкретного порту і МАС одержувача. Надалі комутатор надсилатиме кадри лише на конкретний порт.
Цим досягається одразу кілька речей. По-перше, стає можливим одночасна незалежна передача даних на всіх портах, вона буде обмежена лише швидкістю порту та можливостями комутаційної матриці. По-друге, підвищується безпека переданих даних, т.к. дані будуть передаватися лише на потрібний порт.
Сучасні комутатори найчастіше працюють за принципом "Store-and-forward", це так звана передача з проміжним зберіганням. Для чого це потрібно і як це працює? Під час отримання даних комутатор перевіряє контрольну суму, що дозволяє уникнути передачі пошкоджених даних.
Третій рівень OSI – мережевий. Для кращого розуміння необхідно знати, що на третьому рівні додається IP header – заголовок пакета з інформацією про IP-адреси. Комутатори Layer 2 не обробляють IP-заголовки і працюють лише із «зовнішнім» MAC-заголовком. Для обробки IP header застосовуються маршрутизатори Layer 3, які здатні керувати трафіком на основі IP-заголовків.
Існують також комутатори Layer 2 із функціями Layer 3. Наприклад, це може бути комутатор із можливістю статичної маршрутизації.
Четвертий рівень OSI – транспортний. На 4-му рівні з'являються протоколи TCP та UDP, які визначають метод доставки інформації. Для TCP це доставка пакетів з підтвердженням отримання, для UDP – доставка без підтвердження.
Наступні рівні OSI сьогодні ми не розглядатимемо, вони нам зараз не цікаві. Повертаємось до Layer 2.
Наступна річ, яку необхідно знати про комутатори це робота з широкомовними пакетами.
Усього в локальній мережі існує 3 варіанти доставки інформації:
Unicast
Multicast
Broadcast
Ці терміни ви неодноразово зустрічали, коротко пройдемося по всіх.
Unicast - це звичайна передача даних від пристрою А до пристрою Б.
Multicast – передача даних декількома вибірковими пристроями, наприклад від пристрою А до пристроїв Б і Г.
Broadcast – передача даних усім учасникам мережі, наприклад, від пристрою А до пристроїв Б, В і Р. Брідкаст ще називають широкомовними запитами. Надсилаються вони з використанням адреси FF:FF:FF:FF:FF:FF, такі кадри приймаються всіма пристроями, що входять до локальної мережі.
Якщо розглядати хаб, у ньому є 1 широкомовний домен (broadcast domain) і 1 домен колізій (collision domain). Що це означає? Це означає, що в межах хаба широкомовний запит (FF:FF:FF:FF:FF:FF) передається всім портам, а одночасна передача даних можлива тільки по одному інтерфейсу.
У комутаторах також один широкомовний домен, а ось доменів колізій стільки, скільки портів. Іншими словами, широкомовний запит передається на всі порти, але передача даних можлива по всіх портах одночасно.
Ось ми плавно підійшли до VLAN. У разі використання VLAN, бродкастових доменів буде стільки, скільки створено вланів. Це означає, що пристрої, що знаходяться в різних VLAN, зможуть відправляти broadcast FF:FF:FF:FF:FF:FF тільки в межах своєї віртуальної мережі.
Що таке VLAN і як це працює
VLAN є скороченням від англійської Virtual Local Area Network, що означає віртуальну локальну мережу.
Технологія VLAN докладно описана у стандарті IEEE 802.1Q та надає можливість об'єднання пристроїв у різні логічні мережі при використанні єдиного фізичного середовища передачі даних та єдиного обладнання. По суті, влан емулює кілька каналів передачі даних та кілька фізичних комутаторів. Власне, для кінцевих клієнтів це так і виглядає.
За рахунок використання вланів, підприємства та оператори зв'язку можуть заощаджувати ресурси на прокладання мереж, купівлю додаткового обладнання та мережеве адміністрування. До того ж влан дозволяє забезпечувати підвищену безпеку даних, що передаються, а також забезпечити віддалене управління по захищеному каналу.
VLAN надає величезні переваги:
віртуалізація та поділ мережі без купівлі/установки додаткового обладнання та ліній зв'язку. Ви можете створити 2, 3, 5, 20 скільки завгодно підмереж на існуючому устаткуванні, без прокладання нових кабелів.
ізоляція підмереж, ізоляція підключених клієнтів;
Стандартом передбачено до 4096 VLAN, іноді цього може виявитися мало або недостатньо для реалізації складної мережі. Устаткування Mikrotik (під керуванням RouterOS) підтримує технологію вкладених VLAN'ів – QinQ.
Слід чітко розуміти, що QinQ зменшує розмір MTU (розмір пакетів), що може призвести до фрагментації пакетів. Тому QinQ слід використовувати тільки у разі неможливості реалізації іншого механізму.
Для чого потрібен QinQ і де він використовується?
QinQ іноді використовується інтернет-провайдерами для підключення клієнтів, при якому може і не вистачити 4 тисяч VLAN'ів.
Також QinQ може бути використаний провайдером для транзиту клієнтських VLAN через мережу. Наприклад, провайдер має клієнта з кількома підключеннями, на кожному з яких є свої VLAN, при цьому замовник не бажає змінювати VLAN ID на своїй стороні, але сам провайдер зазначені ідентифікатори вже використовує.
У цьому плані QinQ чимось нагадує прокидання портів, тільки в цьому випадку прокидаються VLAN'и, забезпечуючи для клієнта «логічний транк».
Принцип роботи VLAN
При використанні VLAN, в Ethernet-фрейми впроваджується додатковий заголовок-мітка, розміром 4 байти:
Після додавання мітки комутатор видаляє з кадру стару контрольну суму FCS (Frame check sequence), розраховує і додає нову.
Подальша обробка кадрів складає основі «міток», іменованих VLAN тегами. З мітками VLAN працюють комутатори та маршрутизатори, для кінцевих клієнтів вони залишаються непоміченими, тому що на портах доступу тег знімається.
VLAN на Mikrotik: варіанти реалізації
«Мікротик мікротика різниця», це необхідно завжди пам'ятати, знати і розуміти, при реалізації VLAN. У Mikrotik, як і будь-якого іншого виробника мережевого обладнання, своє власне бачення реалізації налаштувань VLAN.
На базі обладнання Mikrotik можлива реалізація програмних (софтових) VLAN, так і апаратних (hardware).
Апаратний VLAN, як випливає з назви, реалізується безпосередньо на базі switch-chip. Можливість реалізації апаратної води залежить від того, який саме чіп комутації застосовується у вашому пристрої.
З цього приводу рекомендуємо ознайомитись з офіційним керівництвом Switch Chip Features . Якщо коротко, апаратний VLAN (Hardware VLAN) підтримується такими чіпами:
Atheros7240:
RB750
RB750UP
RB751U-2HnD
RB951-2n
Atheros8227:
RB941-2nD (hAP lite)
RB951Ui-2nD (hAP)
RB952Ui-5ac2nD (hAP ac lite)
RB750r2 (hEX lite)
RB750UPr2 (hEX PoE lite)
RB750P-PBr2 (PowerBox)
RB750P r2
RBOmniTikU-5HnDr2 (OmniTIK 5)
RBOmniTikUPA-5HnDr2 (OmniTIK 5 PoE)
RB2011 series (ether6-10)
RB951Ui-2HnD
Atheros8316:
RB493G
RB435G
RB450G
RB750G
RB1200
RB1100
Atheros8327:
RB953GS
RB850Gx2
RB2011 series (ether1-5 + sfp1)
RB750GL
RB751G-2HnD
RB951G-2HnD
RBD52G-5HacD2HnD (hAP ac²)
cAP ac
RB1100AH
RB1100AHx2
CCR1009 series (ether1-4)
RB433GL
QCA8337:
RB3011 series
RB OmniTik ac series
RB750Gr2 (hEX)
RB962UiGS-5HacT2HnT (hAP ac)
RB960PGS (hEX PoE)
RB960PGS-PB (PowerBox Pro)
У всіх перелічених пристроях VLAN можна реалізувати засобам комутації чіпа. Перевага даного методу полягає в тому, що обробка тегів, їх додавання та зняття виконується самим чіпом без участі процесора (hardware offload, апаратне розвантаження).
До цього методу слід вдаватися у тих випадках, коли:
стоїть мета досягти максимальної продуктивності;
продуктивність VLAN упирається у можливості CPU;
реалізація деяких можливостей недосяжна засобами програмного VLAN;
Hardware VLAN пропонує велику кількість параметрів, опцій та правил обробки кадрів. Детальну інформацію про налаштування апаратного VLAN можна знайти в офіційній документації на посилання вище.
Якщо ця тема буде затребуваною, ми опублікуємо окрему інструкцію.
Другий метод реалізації – програмний/софтовий VLAN/Software VLAN. Саме цей метод найчастіше описується та зустрічається на практиці. Він не такий функціональний, зате максимально простий у налаштуванні.
Налаштування програмного VLAN у RouterOS на обладнанні Mikrotik
Розглядати процес налаштування ми будемо на прикладі пристроїв RB750UPr2 (hEX POE lite) та RB750r2 (hEX lite). Обидва пристрої реалізовані з урахуванням платформи MIPSBE (qca9531L). І там, і там 64 МБ оперативної пам'яті, POE-версія відрізняється підтримкою PoE-out. Є й інша відмінність, у звичайних версіях процесор працює на вищій частоті - 850 МГц проти 650 МГц POE-версії. Така різниця забезпечує на 30% більшу продуктивність.
RB750UPr2 ми будемо використовувати в якості головного шлюзу, центрального вузла комутації і джерела живлення, два пристрої RB750r2, що залишилися, будуть використані в якості комутаторів.
Обмовимося відразу, варіант не оптимальний, трохи доплативши, можна придбати RB260GS (SwOS) з гігабітними інтерфейсами. Як варіант це можуть бути недорогі комутатори сторонніх виробників, наприклад TL-SG105E / TL-GS108E від TP-Link. При цьому процес їх налаштування відрізнятиметься.
Також можна розглядати hAP lite ( RB941-2nD ), hAP ac lite ( RB952Ui-5ac2nD ), hAP ( RB951Ui-2nD ) та інші моделі з вбудованим модулем Wi-Fi. Особливий інтерес будуть представляти RB951Ui-2HnD та гігабітний RB951G-2HnD . Обидва пристрої оснащені радіомодулями підвищеної потужності та великим обсягом оперативної пам'яті, що дозволяє реалізувати бездротову мережу на підприємстві з кількома SSID, зокрема. HotSpot. Такий варіант реалізації обійдеться помітно дешевше, ніж використання, наприклад, CRS109-8G-1S-2HnD-IN .
Трохи нижче пропонуємо до вашої уваги умовну схему мережі, яку ми і реалізовуватимемо.
Як основний пристрій обраний Mikrotik hEX POE lite (RB750UPr2), він виконуватиме функції шлюзу, що маршрутизує трафік у локальній мережі вигаданого підприємства. На схемі цей пристрій позначено як вузол R1.
Припустимо, нам потрібно реалізувати 2 підмережі - офісну та гостьову. Для офісної мережі ми використовуватимемо VLAN 20, для гостьової – VLAN 30. Номери вланів особливого значення не мають, головне, щоб ви чітко розуміли, який із них за яку мережу відповідає.
VLAN1 не можна використовувати, т.к. це "нативний" VLAN (native) для великої кількості обладнання, у тому числі і для Mikrotik.
Для офісної мережі з VLAN 20 ми будемо використовувати підмережу 10.20.0.0/24, а для гостьової – 10.30.0.0/24. Ідеальним варіантом є використання різних підмереж зі списку:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
Наприклад, 10.х.х.х для офісу та 192.168.х.х для гостьової мережі. Підсіти 100.64.0.0 - 100.127.255.255 використовувати не варто, т.к. вона призначена для NAT інтернет-провайдерів (CGN, Carrier-Grade NAT).
Конфігурація маршрутизатора R1
На вузлі R1 реалізуємо наступну конфігурацію:
Ether1 використовується для підключення до мережі провайдера;
ether2 кидаємо до офісної мережі VLAN 20;
ether3 кидаємо у гостьову мережу VLAN 30;
ether4 і ether5 будемо використовувати як магістральні канали (trunk) для підключення двох додаткових hEX lite (RB750r2), на схемі вони позначені як R2 і R3.
Самі R2 і R3 використовуватимемо замість керованих комутаторів.
Перед налаштуванням ми виконуємо повне скидання пристрою та починаємо налаштування з нуля. Ви можете виконувати модифікацію існуючої конфігурації, правда у разі вам знадобиться на завершальному етапі видалити деякі елементи, серед яких бридж, dhcp-сервер тощо. створені за замовчуванням.
Оскільки пристроїв Mikrotik у нас кілька, насамперед задаємо ім'я пристрою (identity, alias), щоб згодом не виникало плутанини з керуванням. Робимо це командою:
/system identity
set name=R1-POE
Потім, з метою підвищення безпеки, відключаємо всі сервіси, що не використовуються, залишаємо тільки Winbox:
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set api-ssl disabled=yes
Для зручності перейменовуємо мережеві інтерфейси та додаємо до них коментарі:
/interface ethernet
set [ find default-name=ether1 ] comment=WAN name=ether1-wan
set [ find default-name=ether2 ] comment="VLAN20 OFFICE"
set [ find default-name=ether3 ] comment="VLAN30 GUEST"
set [ find default-name=ether4 ] comment="TRUNK 1" name=ether4-trunk
set [ find default-name=ether5 ] comment="TRUNK 2" name=ether5-trunk
Це буде особливо актуально, якщо пристрої пристойна кількість та/або вони оснащені великою кількістю інтерфейсів.
Як бачите, ether1 ми перейменували на ether1-wan, а ether4/ether5 на ether4-trunk/ether5-trunk.
На інтерфейсі ether1-wan ми маємо підключення до мережі провайдера. Налаштовуємо динамічне отримання IP (від DHCP-сервера):
/ip dhcp-client
add dhcp-options=hostname,client disabled=no interface=ether1-wan
При використанні софтового VLAN, існує два основні типи інтерфейсів:
теговані (trunk);
нетеговані (access);
Теговані інтерфейси, це інтерфейси, на яких кадри маркуються за допомогою VLAN-міток. На таких інтерфейсах можна одночасно передавати кілька VLAN'ів і, як правило, вони використовуються як магістральні канали. Такі порти називають транками (trunk).
Нетеговані (untagged) інтерфейси використовують для підключення кінцевих пристроїв та клієнтів, їх ще можна називати портами доступу (access port).
При програмній реалізації портів доступу VLAN, у RouterOS використовуються бриджі. Оскільки у нас передбачається виділення 2 портів під офісну та гостьову мережу, створюємо для них відповідні бриджі:
/interface bridge
add comment=OFFICE fast-forward=no name=bridge-vlan20-office
add arp = reply-only comment = GUEST fast-forward = no name = bridge-vlan30-guest
Як ви могли помітити, для гостьового бриджу ми використовуємо додатковий параметр arp = reply-only, він буде використовуватися спільно з ARP для того, щоб унеможливити використання самопризначених IP в гостьовій мережі. Іншими словами, маршрутизатор не відповідатиме на запити пристроїв, на яких призначено статичний IP.
Перед налаштуванням DHCP, заздалегідь, для кожної підмережі необхідно створити пули адрес:
/ip pool
add comment=OFFICE name=pool-vlan20-office ranges=10.20.0.11-10.20.0.253
add comment=GUEST name=pool-vlan30-guest ranges=10.30.0.11-10.30.0.253
Якщо в мережі більше 250+ пристроїв, потрібно створювати додаткові пули. Потім вони вибираються в параметрі "next pool" (наступний пул, який буде задіяний після вичерпання попереднього).
У нашому випадку це 10.20.0.11-10.20.0.253 для офісних пристроїв та 10.30.0.11-10.30.0.253 для гостьових. Перші та останні IP-адреси в обох діапазонах ми резервуємо для майбутніх можливих сервісів (робити це зовсім не обов'язково).
Призначати всі IP ми будемо засобами Mikrotik за допомогою DHCP-серверів:
/ip dhcp-server
add address-pool=pool-vlan20-office disabled=no interface=\
bridge-vlan20-office name=dhcp-vlan20-office
add add-arp=yes address-pool=pool-vlan30-guest disabled=no interface=\
bridge-vlan30-guest name=dhcp-vlan30-guest
Зверніть увагу! Створено 2 сервери, по одному на кожен бридж. Кожен сервер видаватиме IP зі свого пулу, таким чином, для VLAN 20 і VLAN 30 будуть видаватися адреси з різних підмереж (10.20.х і 10.30.х).
Для гостей ми додатково використовуємо параметр add-arp=yes, він додаватиме ARP для всіх виданих оренд (DHCP leases). Якщо цього зробити, гостьова мережу нічого очікувати працювати, т.к. гостьовий бридж не відповідатиме на запити клієнтів – раніше в налаштуваннях бриджу ми вже задали параметр arp = reply-only (тільки відповідати).
У кожній з підмереж призначаємо маршрутизатору свій окремий IP:
/ip address
add address=10.20.0.1/24 comment=OFFICE interface=bridge-vlan20-office \
network=10.20.0.0
add address=10.30.0.1/24 comment=GUEST interface=bridge-vlan30-guest network=\
10.30.0.0
Потім для кожної підмережі вказуємо DNS і шлюз, які використовуються за замовчуванням:
/ip dhcp-server network
add address=10.20.0.0/24 comment=OFFICE dns-server=10.20.0.1 gateway=\
10.20.0.1 netmask=24
add address=10.30.0.0/24 comment=GUEST dns-server=10.30.0.1 gateway=10.30.0.1 \
netmask=24
Оскільки до інтерфейсів ether4 та ether5 будуть підключені інші маршрутизатори/комутатори (R2 та R3), їх необхідно перетворити на транки, видавши по 2 vlan у кожен порт:
/interface vlan
add interface=ether4-trunk name=vlan20-trunk-to-R2 vlan-id=20
add interface=ether5-trunk name=vlan20-trunk-to-R3 vlan-id=20
add interface=ether4-trunk name=vlan30-trunk-to-R2 vlan-id=30
add interface=ether5-trunk name=vlan30-trunk-to-R3 vlan-id=30
Робити це можна як із вкладки Interfaces/VLAN, так і з основного розділу.
VLAN'и створені, але порти ether2 та ether3 все ще ні до чого не прив'язані.
Порт ether2 необхідно закинути в bridge-vlan20-office і туди закинути 20-й влан з інтерфейсів ether4 і ether5. Ті ж дії виконуємо для ether3 та vlan 30 на транкових портах.
Іншими словами, за допомогою бриджу ми об'єднали кожен vlan у свій бридж, і туди закинули відповідні порти доступу. Як бачите, нічого складного тут нема.
/interface bridge port
add bridge=bridge-vlan20-office comment="OFFICE access port" interface=ether2
add bridge=bridge-vlan30-guest comment="Державний access port" interface=ether3
add bridge=bridge-vlan20-office comment="VLAN 20" interface=\
vlan20-trunk-to-R2
add bridge=bridge-vlan20-office comment="VLAN 20" interface=\
vlan20-trunk-to-R3
add bridge=bridge-vlan30-guest comment="VLAN 30" interface=vlan30-trunk-to-R2
add bridge=bridge-vlan30-guest comment="VLAN 30" interface=vlan30-trunk-to-R3
Власне щодо VLAN на пристрої R1 все готово.
Далі, для зручності роботи з правилами Firewall, фільтрами та обмеженнями, створюємо 2 списки інтерфейсів:
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
Після чого розподіляємо інтерфейси по групам:
/interface list member
add interface=ether1-wan list=WAN
add interface=bridge-vlan20-office list=LAN
add disabled=yes interface=bridge-vlan30-guest list=LAN
У групу WAN (зовнішні інтерфейси) додаємо ether1-wan, т.к. він використовується для підключення до мережі постачальника. Якщо ви використовуєте PPPoE, WAN слід додавати і ether1, і pope-client. Те ж саме стосується інших типів підключення з VPN. Використання груп інтерфейсів дозволяє оптимізувати правила Firewall.
bridge-vlan20-office з офісною підмережею додаємо до списку LAN-інтерфейсів. По-перше, нам потрібно в цій мережі мати доступ до Інтернету. По-друге, ми хочемо зберегти можливість управління Mikrotik із цієї підмережі.
bridge-vlan30-guest до списку LAN-інтерфейсів не додаємо (disabled=yes). Чому? Тому що наступними правилами ми заборонимо маршрутизатору приймати вхідні з'єднання (input) із гостьової мережі. З гостьової мережі дозволятимемо лише транзитний трафік (forward) до мережі Інтернет. Іншими словами, зайти в налаштування RouterOS гості не зможуть, навіть якщо знатимуть логін та пароль адміністратора.
Щоб Mikrotik не виявлявся у Winbox Neighbor, задаємо відповідні обмеження, вказавши доступ для групи LAN:
/ip neighbor discovery-settings
set discover-interface-list=LAN
Додатково встановлюємо обмеження для підключення до Mikrotik MAC:
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
Підключення будуть дозволені лише з інтерфейсів, що входять до групи LAN.
Щоб користувачі обох підмереж могли виходити в інтернет, необхідно дозволити запити до DNS-сервера і налаштувати маскарадинг:
/ip dns
set allow-remote-requests=yes
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" \
ipsec-policy=out,none out-interface-list=WAN
Трапляються випадки, коли одному з VLAN доступ до Інтернету необхідно заборонити. І тут у правилах маскарадинга слід явно вказати src.address, котрим виконувати обробку трафіку. Наприклад, для vlan 20 необхідно вказати src.address 10.20.0.0/24. Є нюанси, про які у багатьох інструкціях не сказано жодного слова. Справа в тому, що на пристроях Layer 2, VLAN між собою ізольовані повністю.
У випадку з Layer 3 не все так просто. Маршрутизатор знає всі адреси та підмережі, тому може виникнути ситуація, коли пристрої з одного VLAN зможуть побачити пристрої з іншого VLAN. Тут все залежить від маршрутів, правил та фільтрів.
Для того, щоб заборонити маршрутизатору обробляти трафік між VLAN 20 та VLAN 30 можна написати відповідне правило Firewall для ланцюжка forward. Але ми реалізуємо це естетичніше – через правила маршрутизації:
/ip route rule
add action=unreachable dst-address=10.30.0.0/24 src-address=10.20.0.0/24
add action=unreachable dst-address=10.20.0.0/24 src-address=10.30.0.0/24
Іншими словами, ми явно забороняємо маршрутизувати трафік з 10.30.0.0/24 до 10.20.0.0/24 і навпаки.
Налаштування маршрутизаторів R2 та R3
Для маршрутизаторів R2 і R3 налаштувань набагато менше, т.к. по суті, вони виконують функції керованих комутаторів. Далі ми наведемо конфігурацію для R2, для R3 вона буде ідентична, тому ви спокійно зможете зробити вивантаження-завантаження файлу-конфігурації.
Вивантаження:
export file=conf2.rsc
Завантаження
import file=conf2.rsc
Де conf2.rsc – назва конфігураційного файлу.
Як і раніше, насамперед відключаємо непотрібні послуги, створюємо нову обліку, задаємо ідентифікатор пристрою. Вважаємо, дані операції ви можете виконати самостійно.
Для того, щоб розподілити наші влади, створюємо ті самі 2 бриджі:
/interface bridge
add comment=OFFICE fast-forward=no name=bridge-vlan20-office
add comment=GUEST fast-forward=no name=bridge-vlan30-guest
Для зручності до інтерфейсів можна додати коментарі:
/interface ethernet
set [ find default-name=ether1 ] comment="UPLINK TRUNK" name=ether1-trunk
set [ find default-name=ether2 ] comment=OFFICE
set [ find default-name=ether4 ] comment=GUEST
Інтерфейс ether1 ми також трохи перейменували, додавши приставку «trunk». Після цього вішаємо на нього наші VLANи:
/interface vlan
add interface=ether1-trunk name=vlan20-uplink vlan-id=20
add interface=ether1-trunk name=vlan30-uplink vlan-id=30
У R2 і R2 транковий порт всього один, що залишилися 4 інтерфейсу розділені на дві групи, vlan 20 і vlan 30.
Відповідним чином (відповідно до схеми) розподіляємо інтерфейси за раніше створеними бриджами:
/interface bridge port
add bridge=bridge-vlan20-office comment="UPLINK OFFICE" interface=\
vlan20-uplink
add bridge=bridge-vlan30-guest comment="UPLINK GUEST" interface=vlan30-uplink
add bridge=bridge-vlan20-office comment=OFFICE interface=ether2
add bridge=bridge-vlan20-office interface=ether3
add bridge=bridge-vlan30-guest comment=GUEST interface=ether4
add bridge=bridge-vlan30-guest interface=ether5
З аплінка vlan'и необхідно розкинути кожен у свій бридж, 20-й у bridge-vlan20-office, 30-й у bridge-vlan20-guest.
Далі в ці ж бриджі додаємо необхідні порти. У нашому випадку 2 та 3 порт додані до офісної мережі, а 4 та 5 – до гостьової.
Наступний момент стосується обмеження доступу до маршрутизатора з мережі. Механізм блокування доступу використовуємо той самий, що і на R1. Створюємо новий список інтерфейсів:
/interface list
add comment="OFFICE Subnet" name=LAN
Після чого заносимо в цьому список 20-й влан з аплінка та офісний бридж:
/interface list member
add interface=bridge-vlan20-office list=LAN
add interface=vlan20-uplink list=LAN
Для обмеження доступу додаємо правило у файрвол:
/ip firewall filter
add action=drop chain=input in-interface-list=!LAN
Після цього маршрутизатор перестане приймати вхідні (input) з'єднання з мереж, що не входять до списку "LAN", при цьому пересилання пакетів (forward) залишиться як є.
Для зручності самому маршрутизатору можна призначити IP-адресу:
/ip dhcp-client
add add-default-route=no dhcp-options=clientid,hostname disabled=no \
interface=bridge-vlan20-office
Як бачите, IP ми отримуватимемо лише в 20-му VLAN безпосередньо від DHCP-сервера. У 30-му VLAN пристрою IP-адреса не потрібна, на пересилання пакетів це ніяк не впливає.
Ось, власне, і все. Можна перевірити порти.
10.20.0.1 це головний шлюз у 20-му vlan, 10.20.0.251/252 – маршрутизатори R2/R3. HP-NC360T це тестовий ПК, що виконує сканування підмережі.
Якщо ви виконаєте сканування підмережі 10.30.0.0/24, пристрої не відображатимуться, хоча вони є:
10.30.0.252/253 це IP маршрутизаторів, які ми додавали для зручності управління з vlan 30 на етапі початкової конфігурації, у вас вони відображатися не будуть через відсутність dhcp-client на R2 і R3 в VLAN 30.
Тепер щодо продуктивності. Як ви пам'ятаєте, ми вже згадували, що програмні VLAN забирають ресурси процесора. Щоб вивчити взаємозв'язок, виконуємо невеликий тест швидкості між двома комп'ютерами. Перший ПК підключений до R2, другий – R3.
Звичайне пересилання пакетів у локальній мережі призводить до використання ресурсів CPU. У конкретному прикладі згенерований дуплексний трафік із сумарною швидкістю близько 180 Мбіт/сек (100 Мбіт FDX), при цьому завантаження процесора QCA9531 (650 МГц) складає в середньому до 20%.
Як бачимо, навіть для такого бюджетного рішення не становить особливих проблем обробляти трафік у програмній конфігурації VLAN. Де це і буде відчуватись, так це у великих мережах, з великою кількістю з'єднань між пристроями, наприклад, за наявності NAS та гостьових HotSpot. Втім, такі рішення як RB750Gr3, RB3011, RB450Gx4 з подібним завданням справляються відмінно, не кажучи вже про старші моделі.
Не забувайте, що у складних мережах зі складною конфігурацією варто застосовувати відповідне більш високорівневе обладнання, а при необхідності, і взагалі, використовувати Hardware VLAN.
Для підприємств VLAN є дуже виправданим рішенням, що дозволяє підвищити захищеність мережі загалом. Наприклад, якщо у вас є торгові зали, цілком логічним кроком буде помістити всі касові ПК та POS-системи у VLAN, відмінний від офісного. Якщо ви використовуєте IP-відеоспостереження, для нього також варто виділити окремий VLAN. Зрештою, навіть якщо у вашому програмному забезпеченні буде вразливість, вона буде ізольована в окремій підмережі. Згадайте, скільки проблем доставив «Petya». Саме технологія VLAN дозволила багатьом підприємствам зазнати «мінімальних втрат» та обмежити поширення шкідливого ПЗ.
Додаткова довідкова інформація на тему VLAN:
Авторизуйтеся, щоб додати відгук