প্রায় একই ভাষায় দুটি অনুরোধ আসে: প্রতিটি VPN ক্লায়েন্টকে একটি নির্দিষ্ট VLAN-এ রাখুন, অথবা চলমান একটি VLAN ট্রাঙ্ক VPN-এর ওপর দিয়ে বহন করুন। এরা দুটি ভিন্ন পণ্য। OpenVPN-এর অন্তর্নির্মিত VLAN-সচেতন মোড প্রথম অনুরোধের জন্য একটি সুইচ মডেল, এবং এটি স্বচ্ছ ট্যাগ পরিবহনের সমার্থক নয়। ভুলটি বেছে নিলে এমন একটি ডিজাইন দাঁড়ায় যা কনফিগার করা দেখায়, অথচ আপনার দরকারি ফ্রেমগুলো নীরবে ফেলে দেয়।

VLAN-সচেতন মোড আসলে কী তৈরি করে

শুধু সার্ভারের জন্য TAP ডিপ্লয়মেন্টে vlan-tagging চালু থাকলে ডিমন তার TAP ডিভাইস এবং প্রতিটি সংযুক্ত ক্লায়েন্টকে একটি অভ্যন্তরীণ সুইচের পোর্ট হিসেবে মডেল করে। ক্লায়েন্ট পোর্টগুলো ট্যাগবিহীন, এবং তাদের VLAN সংযোগ সার্ভারে প্রতিটি ক্লায়েন্টের vlan-pvid কনটেক্সটের মাধ্যমে নির্ধারিত হয়, ক্লায়েন্ট যা পাঠায় তার দ্বারা নয়। মডেলটির পুরো মর্ম এখানেই: সদস্যপদ হলো প্রমাণিত সহকর্মী সম্পর্কে সার্ভারের পক্ষ থেকে নেওয়া সিদ্ধান্ত। ক্লায়েন্ট প্রোফাইলে এমন কিছু থাকতে হবে না যা জানে সে কোন VLAN-এ পড়ে।

সার্ভারের TAP দিকটি vlan-accept-এর মাধ্যমে নিজস্ব ট্যাগযুক্ত বা ট্যাগবিহীন গ্রহণ নীতি পায়। ওই সুইচের ভেতরে ফরওয়ার্ডিং কেবল মিলে যাওয়া VID-এর মধ্যে ঘটে, client-to-client সেট থাকলেও, তাই ভিন্ন VLAN-এর দুই ক্লায়েন্ট সার্ভারের মধ্য দিয়ে একে অপরের কাছে পৌঁছাতে পারে না, যদিও দুজনেই এতে সংযুক্ত।

এই মডেলটি একটি অ্যাক্সেস-পোর্ট মডেল। ক্লায়েন্ট ছেড়ে যাওয়া ফ্রেম ট্যাগবিহীন, এবং সংযোগটি সার্ভার পরিচয়ের ভিত্তিতে আরোপ করে। ল্যাপটপকে নিজের ট্রাফিক নিজে ট্যাগ করতে বলা মানে অন্য একটি ডিজাইন চাওয়া।

অ্যাসাইনমেন্ট অবশ্যই প্রমাণিত ক্লায়েন্ট পরিচয় অনুসরণ করবে, ক্লায়েন্ট নিজের সম্পর্কে যে মান দেয় তা নয়। বাদ পড়া অ্যাসাইনমেন্ট কোনো কোয়ারেন্টিন অবস্থাও নয়: ক্লায়েন্ট ডিফল্ট PVID-এ পৌঁছায়, তাই অনুপস্থিত ccd এন্ট্রি নীরব একটি নীতি সিদ্ধান্ত, নিরপেক্ষ কিছু নয়।

স্বচ্ছ ট্রাঙ্ক এর বদলে যা দাবি করে

আগেই ট্যাগ করা ফ্রেম প্রান্ত থেকে প্রান্তে বহন করা শুরু হয় VLAN-সচেতন প্রক্রিয়াকরণ বন্ধ করে। সুইচ মডেল ও ট্যাগ সংরক্ষণ পরস্পরের বিকল্প, আর দুটোই চালু করা মানে এক বৈশিষ্ট্যকে অন্যের কাজ করতে বলা।

বন্ধ করা কেবল শুরু। প্রতিটি প্রান্তের ব্রিজ এবং ভৌত সুইচ পোর্টকে একমত হতে হবে কোন VLAN অনুমোদিত, কোন ট্যাগটি নেটিভ, এবং ট্যাগবিহীন ফ্রেম কীভাবে দেখা হয় তা নিয়ে। সীমাহীন ট্রাঙ্ক বাড়ালে আপনি যে দুটি ব্রডকাস্ট ডোমেইন জুড়তে চেয়েছিলেন তার চেয়ে অনেক বেশি উন্মুক্ত হয়ে পড়ে।

ফ্রেমের আকারের জন্য আলাদা বাজেট দরকার। ট্যাগযুক্ত ইথারনেট ফ্রেমের সঙ্গে এনক্যাপসুলেশন গাইড থেকে কপি করা পেলোড সংখ্যার চেয়ে বড়, আর রাউটেড টানেলের জন্য ঠিক থাকা MTU ট্রাঙ্ক পাথ কাজ করে তার প্রমাণ নয়।

সিদ্ধান্ত নির্ধারণকারী তিনটি শর্ত

প্রথমত, ক্লায়েন্ট প্ল্যাটফর্ম কি আদৌ TAP সমর্থন করে? Android ও iOS করে না, আর macOS-এর সমর্থন সীমিত, তাই মোবাইল ব্যবহারকারীর বহর VLAN কীভাবে সাজানোই থাকুক, TAP-ভিত্তিক যেকোনো ডিজাইন বাদ দেয়। রাউটেড TUN সেশন ইথারনেট ফ্রেম নয়, IP প্যাকেট বহন করে, এবং সার্ভার প্রান্তে যত VLAN কনফিগারেশনই থাকুক তা বদলায় না। টপোলজি ডিজাইন করার আগে বহরটি যাচাই করুন, কারণ এই শর্তটিই এড়ানো যায় না। এটি সবচেয়ে বেশি ধরা পড়ে সুইচের কাজ শেষ হওয়ার পর।

দ্বিতীয়ত, VLAN কে নির্ধারণ করে? উত্তর যদি হয় «সার্ভার, কে প্রমাণিত হয়েছে তার ভিত্তিতে», তবে সুইচ মডেল মানানসই। উত্তর যদি হয় «বিদ্যমান সুইচ অবকাঠামো, আগে থেকেই থাকা ট্যাগ নিয়ে», তবে আপনার ট্রাঙ্ক ডিজাইন দরকার।

তৃতীয়ত, নেটওয়ার্কের কতটা অংশ পৌঁছানোর যোগ্য হওয়া উচিত? সুইচ মডেল গঠনগতভাবেই প্রতিটি ক্লায়েন্টকে একটি VLAN-এ রাখে। ট্রাঙ্ক ডিজাইন একটি ব্রিজ, আর ভুল কনফিগার করা ব্রিজ আলাদা থাকার কথা থাকা ব্রডকাস্ট ডোমেইনগুলো জুড়ে দেয়।

আপনার বেছে নেওয়া পথ পরীক্ষা করা

যে ক্লায়েন্ট অনুমোদিত VLAN-এ থাকা উচিত এবং যে থাকা উচিত নয়, এমন দুটি ক্লায়েন্ট সংযুক্ত করুন, তারপর সার্ভার থেকেই নয়, সত্যিকারের প্রান্ত থেকে পরীক্ষা করুন। সার্ভার প্রান্তের পৌঁছানোযোগ্যতা প্রমাণ করে ব্রিজ বা সুইচ আছে; কোন VLAN-এ ক্লায়েন্ট পৌঁছেছে তা প্রমাণ করে না।

ip -d link show tap0
bridge vlan show

সার্ভারে দ্বিতীয় কমান্ডটি প্রতিটি ব্রিজ পোর্টের VLAN সদস্যপদ দেখায়, পোর্টটি ট্যাগযুক্ত কি না সহ। দ্বিতীয় স্তরের ওপরে ডিবাগ শুরু করার আগে এটি আপনার অভিপ্রেত অ্যাসাইনমেন্টের সঙ্গে মিলিয়ে দেখুন।

ডিপ্লয়মেন্টটি দুটি ডিজাইনের কোনটি ব্যবহার করে তা লিখে রাখুন। «VLAN সচেতন» লেখা নোট অস্পষ্ট, আর পরের ইঞ্জিনিয়ার প্রথমে যে সংস্করণ শিখেছেন সেটিই ধরে নেবেন। OpenVPN VLAN রেফারেন্সসুইচের আচরণ ও প্রতিটি ক্লায়েন্টের কনটেক্সট সংজ্ঞায়িত করে, আর আপনি কোন মডেল চালাচ্ছেন তা নিশ্চিত করার সবচেয়ে ছোট পথ এটিই।

সম্পর্কিত নিবন্ধ