Vlan на пальцях, черговий it-блог в безодні інтернету
В роботі системних адміністраторів досить часто виникає задача поділу мережі на окремі логічні блоки (на відділи, аудиторії і т.д.). Добре, якщо час і ресурси дозволяють реалізувати такий розподіл в залозі. Але найчастіше на об'єкті вже є мережа і робити треба на її базі і бажано з мінімальними простоями.
І тут нам на допомогу приходить така технологія, як VLAN (для реалізації необхідні комутатори з її підтримкою). VLAN - Virtual Local Area Network. Суть технології полягає в тому, що до мережевого кадру (2-й рівень) додається додатковий заголовок (tag), який містить службову інформацію і VLAN ID. Окремих портів комутаторів також призначений VLAN ID. На підставі даного поля пакети передаються на певні порти комутатора. Таким чином ми створюємо логічні мережі, в які включаємо комп'ютери з різних кінців наявної мережі. Мережі з різними VLAN ID недоступні один одному, як якщо б вони були виконані з окремих кабелів і пристроїв. Значення VLAN ID можуть бути від 1 - 4095. При цьому 1 зарезервована як VLAN за замовчуванням або default.
Виходячи з цього логічно припустити що є трафік тегованих і нетегірованний. Тегованих трафік (з ідентифікатором Вланєв) в основному йде між комутаторами і серверами. Звичайні ж комп'ютери (особливо під керуванням ОС Windows) не розуміють тегованих трафік. Тому на тих портах, які дивляться безпосередньо на робочі станції або в мережу з некерованим комутатором, видається нетегірованний трафік. Тобто від мережевого кадру відрізається тег. Це також відбувається, якщо на порту налаштований VLAN ID = 1.
Також існує поняття «транк» (thrunk). Цим словом називають порти комутатора, за якими йде трафік з різними тегами. Зазвичай транк налаштовується між між комутаторами, щоб забезпечити можливість існування в VLAN ах комп'ютерів з різних комутаторів.
Оскільки теорія не так добре відкладається в голові, як те, що зробив руками. то рекомендую потренуватися на практиці, щоб концепція міцно засіла в голові і допомагала придумувати і реалізовувати більш технологічні і зручні рішення.
А тепер трошки практики
На комутаторах D-Link Вланєв створюються приблизно ось так:
create vlan my_vlan tag 777
Далі його треба отконфигурировать, тобто додати порти
config vlan my_vlan add tagged 2-14
Тут ми додали в наш ВЛАН порти 2-14. З них буде йти тегованих трафік. Щоб додати в vlan комп'ютер, потрібно створити для нього нетегірованний порт:
config vlan my_vlan add untagged 28,34
При це цьому потрібно стежити, щоб цей порт ні відзначений в іншому Вланєв як нетегірованний.
Тепер можна спробувати налаштувати мережу між комп'ютерами на 28 і 34 портах комутатора. Щоб переконатися що вони ізольовані від інших комп'ютерів на комутаторі, спробуйте встановити зв'язок з ким-небудь з іншого Вланєв.
Оскільки Linux це мережева ОС, то в ній також є можливість як працювати комутатором і передавати тегованих пакети, так і обробляти тегованих трафік. Для настройки роботи з VLAN необхідно встановити утиліту vconfig. а також включити підтримку в ядрі.
Далі виконуємо наступні дії:
vconfig set_name_type VLAN_PLUS_VID_NO_PAD
vconfig add eth0 777
ifconfig vlan4 172.16.3.1 netmask 255.255.240.0 up
Природно, що ми не будемо вводити ці команди при кожному завантаженні. У Gentoo для автоматизації підняття інтерфейсу Вланєв, потрібно записати /etc/conf.d/net наступне:
vconfig_eth0 = ( «set_name_type VLAN_PLUS_VID_NO_PAD»)
config_vlan777 = ( «172.16.3.1 netmask 255.255.254.0")
Тут eth0 це інтерфейс на який приходить трафік. А vlan777 інтерфейс через який ми підключаємося до локальної мережі обмеженою цим vlan.