Якщо з'єднання Ethernet містить більше однієї VLAN, всі, крім однієї з цих VLAN, повинні бути позначені тегами . Відповідний тег VLAN IEEE 802.1Q розміщується в кадрі Ethernet в тому місці, де зазвичай був би EtherType кадру. Перша частина тегу VLAN - це ідентифікатор протоколу тегів , який є постійним значенням 0x8100. Як результат, пристрій, який не знає тегів IEEE 802.1Q або налаштований на те, щоб їх не очікувати, побачить позначені кадри і подумає, що "це не IPv4, ARP, ані IPv6; не думаю, що я це взагалі розумію. Найкраще просто ігнорувати це ".
Перемикач, що підтримує VLAN, може фільтрувати пакети, що виходять до кожного порту, за допомогою їх тегів VLAN, а також може додатково знімати тег VLAN з однієї вибраної VLAN у вихідному трафіку з цього порту (і взаємно додавати тег VLAN до вхідного трафіку на цьому порту), так що будь-який трафік вибраної VLAN відображається як звичайний трафік Ethernet до 802.1Q для пристрою, підключеного до цього конкретного порту. Така вибрана VLAN відома як нативна VLAN для цього порту.
Стандарт 802.1Q дозволяє порту Ethernet підтримувати одночасну VLAN та будь-яку кількість тегів VLAN одночасно, але я розумію, що порт передає одночасно теги та без тегів кадри Ethernet - це дещо недобре налаштування: Потрібно пам’ятати, що одна з VLAN в порту / NIC відрізняється від усіх інших і повинна бути налаштована інакше. Схильний до помилок.
У термінології Cisco порт комутатора може бути налаштований як порт доступу, або як порт магістралі . Порт доступу надаватиме доступ лише до однієї VLAN, а теги VLAN автоматично позбавляються від вихідного трафіку та додаються до вхідного трафіку для цього порту. Порт магістралі, з іншого боку, передаватиме трафік на налаштованому наборі VLAN, але весь трафік буде тегом VLAN.
Отже, у вашому випадку два пристрої в двох різних VLAN на одному комутаторі, обидва використовують адреси однієї і тієї ж підмережі IP. Що буде залежати від того, як налаштовані порти комутаторів (і мережеві інтерфейси на пристроях) щодо VLAN.
1.) Перемикайте порти як порти доступу, пристрої, які не знають VLAN: порт комутатора фільтрує трафік "протилежної" VLAN, і тому пристрої ніколи не побачать трафік один одного. Це викликає питання, чи має сенс взагалі вважати їх такими, що "знаходяться в одному сегменті мережі".
2.) Перемикайте порти як порту магістралі, встановлені для передачі обох VLAN, пристроїв, не відомих VLAN: кожен пристрій подумає "Чому цей інший пристрій продовжує надсилати мені такі дивні речі Ethertype 0x8100? Я цього не говорю".
3.) Перемикайте порти як магістральні порти, встановлені для передачі лише по одній VLAN кожен, що знає VLAN: вам також потрібно вказати номери VLAN у мережевій конфігурації пристроїв, але кінцевий результат по суті такий же, як у випадку №1: пристрої не побачать трафік один одного.
4.) Перемикайте порти як магістральні порти, встановлені для передачі обох VLAN, пристроїв, відомих VLAN, але налаштованих на різні VLAN: тепер це рівень підтримки VLAN у пристроях, які фільтрують, але практичний результат такий же, як у випадках №1 та №3: трафік "протилежного" пристрою ніколи не досягне рівня протоколу IP в стеку мережевого протоколу пристрою.
5.) Перемикайте порти як магістральні порти, встановлені для передачі обох VLAN, пристроїв, налаштованих з обізнаністю VLAN, обох VLAN, налаштованих у пристрої. Це вище, ніж те, що ви просили. Тепер пристрій буде ефективно присутній на обох VLAN.
Оскільки обидві VLAN мають вигляд, що вони відрізняються на рівні Ethernet, але використовують однакову підмережу IP, те, що станеться, залежатиме від того, як було реалізовано маршрутизацію IP пристроїв. Головною важливою деталлю буде те, чи призначений стек IP для використання сильної моделі хоста чи слабкої моделі хоста , і як саме концепція VLAN була інтегрована в систему.
Наприклад, Linux представить будь-які налаштовані мітки VLAN як додаткові віртуальні NIC, які відображають стан зв'язку базового фізичного NIC, але в іншому випадку діють настільки незалежно, наскільки це технічно можливо. Таким чином, це буде так само, як у вас було підключено два NIC до двох окремих сегментів фізичної мережі зі 100% перекриттями підмереж IP: система може отримувати вхідний трафік просто чудово, але буде вважати, що будь-який NIC, підключений до IP-підмережі призначення, хороший для спілкування будь-який інший хост у цій підмережі IP, і буде використовувати який-небудь (віртуальний, специфічний для VLAN) NIC вперше виникає в таблиці маршрутизації ... і тому конфігурація може працювати або не працювати в залежності від порядку, в якому різні частини Конфігурація NIC та VLAN ініціалізована. Вам потрібно буде використовувати Linux '
Використання однієї і тієї ж підмережі IP на двох різних сегментах - це проблема рівня 3, незалежно від того, яке розділення сегмента на рівні 2 є фізичним (= фактичні окремі NIC) або логічним (= створено за допомогою VLAN). Проблема шару-3 потребує рішення рівня 3: використання маршрутизатора чи іншої скриньки для симетричного NAT-однієї з підмереж для видалення перекриття підмережі IP було б набагато елегантніше, ніж намагатися обробити її на окремих пристроях.