🌐 English · বাংলা
luci-app-easymesh
OpenWrt/ImmortalWrt-এর জন্য একটি EasyMesh প্লাগইন — একটি হালকা LuCI (OpenWrt/ImmortalWrt Router-এর ওয়েব/তথ্যপাতা ভিত্তিক নিয়ন্ত্রণাতল) যা 802.11s (IEEE বেতার মেশ মান) বেতার এবং তারযুক্ত ব্যাকহলের/মূলসংযোগ সাথে Batman-adv/অগ্রবর্তী-জালক লেয়ার-২ /দ্বিতীয়-স্তর মেশ নেটওয়ার্ক/জালকবিন্যাস স্থাপনকে সহজ করে। এটি হটস্পট/সংযোগস্থল বা VPN (ছদ্মজাল) ছাড়াই স্বতন্ত্রভাবে ব্যবহার করা যায়।
প্রকাশ: 2.4.1-r1 — ২০২৬-০৯-১৬ — @arafatrahmanzami কর্তৃক
সীমিত দক্ষতা নিয়ে, আমি kmod-batman-adv + 802.11s তারযুক্ত + বেতার ব্যাকহলের উপর ভিত্তি করে একটি মেশ LuCI সেটআপ প্লাগইন লিখেছি। দ্রুত এবং স্বয়ংক্রিয় সেটিংসের সংযোজন সেটআপকে আরও সুবিধাজনক করে তোলে। প্লাগইনটি শুধুমাত্র OpenWrt এবং ImmortalWrt 24 এবং 25-এ পরীক্ষা করা হয়েছে। এটি খুব খারাপভাবে লেখা কিন্তু আপাতত ব্যবহারযোগ্য। প্রয়োজনে উপলব্ধ উৎস কোড দিয়ে কোনো সমস্যা রিপোর্ট বা সমাধান করুন।
এটি আসলে কী করে?
ধরুন আপনার দুটি বা তার বেশি WiFi রাউটার আছে। সাধারণত তারা আলাদা WiFi নেটওয়ার্ক তৈরি করে — আপনি যখন ঘর থেকে ঘরে যান, আপনার ফোনকে সংযোগ বিচ্ছিন্ন করে আবার সংযুক্ত হতে হয়।
EasyMesh তাদের একটি একক WiFi নেটওয়ার্ক হিসেবে কাজ করায়। আপনি ঘরে চলাফেরা করার সময় আপনার ফোন সংযুক্ত থাকে — কোনো সংযোগ বিচ্ছিন্নতা নেই, কোনো পুনঃসংযোগ নেই।
এটি আপনাকে ইথারনেট কেবল দিয়ে রাউটারগুলিকে সংযুক্ত করার সুবিধাও দেয় — মেশ কেবল ব্যবহার করে যখন সম্ভব, বেতার সংযোগ ব্যবহার করে যখন কেবল উপলব্ধ নয়, এবং স্বয়ংক্রিয়ভাবে তাদের মধ্যে পরিবর্তন হয়।
আপনার এটির প্রয়োজন যদি:
- ✅ আপনার OpenWrt / ImmortalWrt চালিত ২+ রাউটার থাকে
- ✅ আপনি পুরো বাড়িতে একটি নিরবচ্ছিন্ন WiFi নাম চান
- ✅ আপনি কর্মক্ষমতা না হারিয়ে দূরের ঘরে WiFi প্রসারিত করতে চান
- ✅ আপনার একটি অতিথি নেটওয়ার্ক আছে যা সর্বত্র পৌঁছানো উচিত
আপনার এটির প্রয়োজন নেই যদি:
- ❌ আপনার শুধুমাত্র একটি রাউটার আছে
- ❌ আপনি কাস্টম ফার্মওয়্যার ইনস্টল করতে চান না
- ❌ আপনি প্রতি রাউটারে আলাদা WiFi নামে সন্তুষ্ট
সূচিপত্র
- এটি আসলে কী করে?
- কেন EasyMesh?
- মূল বৈশিষ্ট্য
- পূর্বশর্ত
- শুরু করার আগে
- ইনস্টলেশন
- ইনস্টলেশনের পরে
- দ্রুত শুরু
- বিস্তারিত সেটআপ
- Dumb AP / ক্লায়েন্ট নোডের সাথে কাজ করা
- সংযোগ অগ্রাধিকার সমন্বয়
- তারযুক্ত ব্যাকহল — নিরাপত্তা, ফলব্যাক ও কার্যক্রম
- মেশ জুড়ে অতিথি / IoT নেটওয়ার্ক প্রসারিত করা (VLAN)
- আরও তথ্য — ব্যবহারের পরিস্থিতি
- সমস্যা সমাধান
- পরিবর্তন বিবরণী
- উৎস থেকে সংকলন
- কৃতিত্ব
- পরিভাষা অভিধান
- লাইসেন্স
কেন EasyMesh?
এটি অফিসিয়াল EasyMesh প্রকাশের প্রথম শাখা। এটি তারযুক্ত এবং/অথবা বেতার ব্যাকহলের সাথে Batman-adv লেয়ার-২ মেশ নেটওয়ার্ক স্থাপন এবং কনফিগার করা সহজ করে এবং সেকেন্ডের মধ্যে মেশ সার্ভার এবং ক্লায়েন্ট নোড কনফিগার করার জন্য একটি সহজে ব্যবহারযোগ্য LuCI ইন্টারফেস প্রদান করে।
আপনি "OpenLink Captive Portal" বা WireGuard দিয়ে হটস্পট / VPN LAN + WiFi কভারেজ প্রসারিত করছেন, একটি নিরবচ্ছিন্ন হোম মেশ নেটওয়ার্ক তৈরি করছেন, বা হোমল্যাব সেটআপ জুড়ে একাধিক নোড পরিচালনা করছেন — EasyMesh Batman-adv মেশ WiFi স্থাপনকে অতি-দ্রুত এবং অনায়াস করতে তৈরি।
এটি WireGuard / TorGuard-এর WireGuard অ্যাপ্লিকেশনগুলির সাথে OpenWrt/ImmortalWrt OpenLink-Captive-Portal, wireguard / torguardvpn ব্যবহার করে batman-adv (Batman-adv = Better Approach To Mobile Adhoc Networking — Advanced) দ্বারা চালিত, একটি হটস্পটের পরিসর প্রসারিত করার জন্য একটি উন্নত তারযুক্ত + WiFi মেশ স্থাপন করাও দ্রুত এবং সহজ করে তোলে।
EasyMesh আদর্শ:
- ✅ OpenWrt-এ একটি বিশুদ্ধ মেশের জন্য এক-ক্লিক সেটআপ/স্থাপন — LuCI ওয়েব ইন্টারফেসের ভিতরে সার্ভার এবং ক্লায়েন্ট-নোড কনফিগারেশন সহজ করে
- ✔ OpenWrt/ImmortalWrt এবং Batman-adv-এর সাথে সেকেন্ডের মধ্যে একটি সার্ভার/ক্লায়েন্ট তারযুক্ত + WiFi মেশ ব্যাকহল নেটওয়ার্ক স্থাপন — অ্যাক্সেস-পয়েন্ট WiFi এবং মেশ নেটওয়ার্কের জন্য
- ✔ বড় এলাকা জুড়ে VPN / হটস্পট কভারেজ সহ WiFi বা ইথারনেটের মাধ্যমে একাধিক নোডের সাথে সংযোগ প্রসারিত / উন্নত করা
- ✔ বিভিন্ন অবস্থানে ডিভাইস পরিচালনার জন্য WireGuard-এর পিছনে হোমল্যাব সেটআপ সহজ করা
মূল বৈশিষ্ট্য
- মেশ কোর: Batman-adv 802.11s মেশ দ্বি-ব্যান্ড + তারযুক্ত ব্যাকহল ফলব্যাক এবং লুপ প্রতিরোধ সহ (সার্ভার এবং ক্লায়েন্ট উভয় ভূমিকাতেই উপলব্ধ)
- স্প্লিট-ব্যান্ড ক্লায়েন্ট SSID (Service Set Identifier — WiFi নেটওয়ার্কের নাম; স্টিকি-2.4 GHz ক্লায়েন্ট প্রতিরোধ করে)
- ব্যাকহল সমর্থন: মিশ্র তারযুক্ত এবং বেতার সংযোগের জন্য
kmod-batman-advএবং 802.11s একত্রিত করে - তারযুক্ত ব্যাকহল পোর্ট হ্যান্ডলিং: প্রয়োগের সময় পোর্ট স্বয়ংক্রিয়ভাবে LAN ব্রিজ থেকে সরানো হয়
- সংযোগ অগ্রাধিকার: তারযুক্ত → 6 GHz → 5 GHz → 2.4 GHz (
throughput_override) - GUI-সম্পাদনযোগ্য সংযোগ অগ্রাধিকার — আর কোনো হার্ডকোড করা মান নেই; UI-তেই প্রতিটি ব্যান্ডের ওজন সেট করুন
- বন্ডিং সক্রিয় একযোগে বহু-সংযোগ ট্র্যাফিকের জন্য
- স্বয়ংক্রিয় ব্যান্ড শনাক্তকরণ (ফ্রিকোয়েন্সি-ভিত্তিক, যেকোনো রেডিও ক্রমে কাজ করে)
- নিরাপত্তা: নিরাপদ নেটওয়ার্কের জন্য WPA3 প্রমাণীকরণ, বা খোলা নেটওয়ার্ক
- WPS / মোড-বাটন পেয়ারিং
/etc/rc.wps/পরিবেশকের মাধ্যমে - IP পরিবর্তনের জন্য ৬০-সেকেন্ডের রোলব্যাক ওয়াচডগ
- ক্লায়েন্ট নোডের জন্য AP মোড (Dumb AP) — Dumb AP মেশ ক্লায়েন্ট/স্লেভ নোডগুলি তাদের LAN পোর্টের মাধ্যমে ইন্টারনেট অ্যাক্সেসও প্রদান করতে পারে
- অন্তর্নির্মিত Mesh Status ড্যাশবোর্ড — প্রতিবেশী নোড, সর্বশেষ দেখা সময়, ইন্টারফেস এবং আরও দেখুন
- লাইভ RX/TX লেটেন্সি এবং ব্যান্ডউইথ/সংযোগ-গতি বেতার এবং তারযুক্ত সংযোগ এবং সঙ্গীদের জন্য (৩টি পিং-এর উপর স্মুথ করা)
- দ্রষ্টব্য: এখনও সম্পূর্ণ লাইভ ফিল্ড আপডেট নয় — পেজ রিফ্রেশ প্রয়োজন
- Priority Weight কলাম বেতার সঙ্গীদের জন্য প্রদর্শিত (পূর্বে শুধুমাত্র তারযুক্ত)
- প্রতিবেশী MAC + সর্বশেষ-দেখা তারযুক্ত ব্যাকহলের জন্য (batman originator টেবিল থেকে)
- মেশ VLAN — 802.1Q-এর মাধ্যমে মেশ জুড়ে অতিথি / IoT / হটস্পট নেটওয়ার্ক প্রসারিত করুন
- সার্ভার এবং ক্লায়েন্টের জন্য স্বয়ংক্রিয় ফায়ারওয়াল ও ইন্টারফেস কনফিগারেশন
- নমনীয় নোড অ্যাড্রেসিং: DHCP (Dynamic Host Configuration Protocol), Static IP এবং Dumb AP মোড
- রোমিং অপ্টিমাইজেশন: দ্রুত ক্লায়েন্ট রোমিংয়ের জন্য
dawn/usteerডেমন সমর্থন সহ 802.11k/v/r (দ্রুত-রোমিং মান) একত্রিত করে- উন্নত K/V/R সেটিংস + Mobility Domain
dawnবাusteerএর একটির নিজস্ব luci-app ব্যবহার করলে ডিভাইস/অ্যাপ্লিকেশনের মধ্যে স্যুইচ করার সময় লেটেন্সি উল্লেখযোগ্যভাবে হ্রাস পায়
- হটপ্লাগ + init + ঐচ্ছিক cron ফলব্যাক সংযোগ অগ্রাধিকারের জন্য
- VPN সামঞ্জস্য: VPN-ভিত্তিক মেশ নেটওয়ার্কের জন্য TorGuard-এর WireGuard এবং অন্যান্য VPN OpenWrt অ্যাপের সাথে সহজ একীকরণ
- ভেরিয়েন্ট: openssl / wolfssl / mbedtls
পূর্বশর্ত
সঠিকভাবে কাজ করার জন্য, অ্যাপটির সাধারণত নিম্নলিখিত অন্তর্নিহিত প্যাকেজগুলির প্রয়োজন:
- OpenWrt / ImmortalWrt 24.10+
kmod-batman-adv,batctl-default,luci-proto-batman-adv,kmod-cfg80211(কার্নেল মডিউল লোড করা)wpad-mesh-openssl/wpad-mesh-wolfssl/wpad-mesh-mbedtlsএর একটি (WPA3 এনক্রিপশনের জন্য)dawn/usteerএর একটি (AP স্টিয়ারিং / দ্রুত রোমিংয়ের জন্য)luci-compat(যদি অনুপস্থিত Lua রানটাইম নির্ভরতা দেখা যায়)
হার্ডওয়্যার প্রয়োজনীয়তা: 802.11s মেশ সমর্থনকারী বেতার নেটওয়ার্ক কার্ড সহ রাউটার/ডিভাইস (যেমন MediaTek MT76, Qualcomm Atheros ইত্যাদি)।
শুরু করার আগে
ইনস্টল করার আগে এই পাঁচটি প্রশ্নের উত্তর দিন:
- আমার কি OpenWrt বা ImmortalWrt চালিত ২+ রাউটার আছে? — না হলে, প্রথমে OpenWrt ইনস্টল করুন।
- আমি আমার রাউটারের IP ঠিকানা জানি? — সাধারণত
192.168.1.1বা192.168.10.1। আপনার ফোনের WiFi সেটিংসে "Router" বা "Gateway" এর অধীনে দেখুন। - আমার SSH অ্যাক্সেস আছে? — আপনার PC থেকে
ssh root@<router-ip>চেষ্টা করুন। পাসওয়ার্ড LuCI লগইনের মতোই। - আমার মূল রাউটারে একটি কার্যকরী ইন্টারনেট সংযোগ আছে? — ইনস্টল প্যাকেজ ডাউনলোড করে।
- আমি আমার বর্তমান কনফিগারেশন ব্যাকআপ করেছি? — LuCI-তে: System → Backup / Flash Firmware → Generate archive। প্রতিটি রাউটারে এটি করুন।
যদি পাঁচটি ✅ হয়, তবে এগিয়ে যান। যদি কোনোটি ❌ হয়, প্রথমে সেটি ঠিক করুন।
ইনস্টলেশন
সম্পূর্ণভাবে /tmp থেকে এই কমান্ডগুলি চালান — মূল ফাইলসিস্টেমে কিছু জমা হবে না।
আর্কিটেকচার শনাক্তকরণের প্রয়োজন নেই। EasyMesh হল PKG_ARCH=all — প্রতিটি রাউটার CPU-তে কাজ করে (x86, MIPS, ARM, AArch64, RISC-V)।
শুধুমাত্র OpenWrt/ImmortalWrt ব্যবহার করে আপনি দ্রুত একটি সম্পূর্ণ স্ট্যান্ডার্ড মেশ বেতার নেটওয়ার্ক তৈরি করতে পারেন।
১. wpad পরীক্ষা করুন — আপনার কি নির্দিষ্ট wpad ভেরিয়েন্ট দরকার?
EasyMesh-এর 802.11s ব্যাকহল তৈরি করতে একটি মেশ-সক্ষম wpad (Wireless Protected Access Daemon) প্রয়োজন। বেশিরভাগ রাউটারে ইতিমধ্যে একটি ইনস্টল করা আছে। প্রথমে পরীক্ষা করুন:
# রাউটারে — EasyMesh ইনস্টল করার আগে এটি চালান
opkg list-installed 2>/dev/null | grep wpad
# বা OpenWrt 25.12+ এর জন্য:
apk list --installed 2>/dev/null | grep wpad
আউটপুট ব্যাখ্যা:
| আপনি যা দেখেন | কী করবেন |
|---|---|
wpad-mesh-openssl, wpad-mesh-wolfssl, বা wpad-mesh-mbedtls |
✅ আপনার কাছে ইতিমধ্যে আছে। ধাপ ২-এ যান। |
wpad-openssl, wpad-wolfssl, wpad-mbedtls ("mesh" ছাড়া) |
⚠️ একটি মেশ ভেরিয়েন্ট ইনস্টল করুন — ধাপ ১খ দেখুন |
wpad-basic, wpad-basic-mbedtls, বা wpad-mini |
❌ মেশ করতে পারে না। একটি মেশ ভেরিয়েন্ট ইনস্টল করুন — ধাপ ১খ দেখুন |
| কিছুই না (কোনো wpad নেই) | ❌ একটি মেশ ভেরিয়েন্ট ইনস্টল করুন — ধাপ ১খ দেখুন |
১খ. একটি wpad ভেরিয়েন্ট ইনস্টল করুন (শুধুমাত্র প্রয়োজনে)
একটি ভেরিয়েন্ট বাছুন। আপনার ডিস্ট্রিবিউশন ডিফল্টের সাথে মিলান:
| ভেরিয়েন্ট | জন্য সুপারিশ |
|---|---|
wpad-openssl |
বেশিরভাগ OpenWrt বিল্ড (ডিফল্ট TLS) |
wpad-wolfssl |
ImmortalWrt 25.12+ (ডিফল্ট TLS) |
wpad-mbedtls |
OpenWrt 24.10 ডিফল্ট যখন openssl অনুপলব্ধ |
# opkg (OpenWrt 24.10 এবং তার পুরানো সংস্করণ)
opkg install wpad-openssl # বা wpad-wolfssl / wpad-mbedtls
opkg remove wpad-basic-mbedtls # যদি আপনি একটি basic ভেরিয়েন্ট প্রতিস্থাপন করছেন
# apk (OpenWrt 25.12+)
apk add wpad-openssl # বা wpad-wolfssl / wpad-mbedtls
apk del wpad-basic-mbedtls # যদি আপনি একটি basic ভেরিয়েন্ট প্রতিস্থাপন করছেন
wpad ইনস্টল বা প্রতিস্থাপনের পরে একবার রিবুট করুন:
reboot
দ্রষ্টব্য: একই সময়ে দুটি মেশ-সক্ষম wpad ভেরিয়েন্ট ইনস্টল করবেন না — তারা দ্বন্দ্ব করে। ভেরিয়েন্ট পরিবর্তন করলে, প্রথমে পুরানটি সরান।
২. EasyMesh ইনস্টল করুন — যেকোনো একটি পদ্ধতি বেছে নিন
বিকল্প ক — মেটা-প্যাকেজ (wpad সহ) — দ্রুততম পথ
এগুলি একবারে অ্যাপ এবং wpad ইনস্টল করে। যদি আপনি নিশ্চিত না হন, এটি ব্যবহার করুন।
# OpenWrt ≤ 24.10 (opkg) — একটি বাছুন
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh-wpad-openssl_2.4.1-r1_all.ipk && opkg install luci-app-easymesh-wpad-openssl_2.4.1-r1_all.ipk
# OpenWrt ≥ 25.12 (apk) — একটি বাছুন
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh-wpad-openssl-2.4.1-r1.apk && apk add --allow-untrusted luci-app-easymesh-wpad-openssl-2.4.1-r1.apk
ভিন্ন ভেরিয়েন্ট পছন্দ করলে URL এবং প্যাকেজ নাম উভয়েই openssl কে wolfssl বা mbedtls দিয়ে প্রতিস্থাপন করুন।
বিকল্প খ — শুধুমাত্র মূল EasyMesh প্যাকেজ ইনস্টল করুন
আপনি যদি উপরে একটি -wpad-* মেটা-প্যাকেজ ইনস্টল করে থাকেন তবে এই ধাপটি এড়িয়ে যান — এতে মূল অ্যাপ রয়েছে।
OpenWrt ≤ 24.10 — opkg
cd /tmp && \
opkg update && \
wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh_2.4.1-r1_all.ipk && \
opkg install luci-app-easymesh_2.4.1-r1_all.ipk && \
rm -f /tmp/luci-indexcache /tmp/luci-modulecache/* && \
/etc/init.d/rpcd restart && /etc/init.d/uhttpd restart
OpenWrt ≥ 25.12 — apk
cd /tmp && \
wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh-2.4.1-r1.apk && \
apk add --allow-untrusted luci-app-easymesh-2.4.1-r1.apk && \
rm -f /tmp/luci-indexcache /tmp/luci-modulecache/* && \
/etc/init.d/rpcd restart && /etc/init.d/uhttpd restart
বিকল্প গ — ⚡ একক স্বয়ংক্রিয়-শনাক্তকরণ কমান্ড (opkg vs apk)
এই এক-লাইনটি চালান। এটি কোনটি উপস্থিত তার উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে apk বা opkg বাছাই করে।
cd /tmp && \
if command -v apk >/dev/null 2>&1; then \
echo "Detected apk — OpenWrt 25.12+" && \
wget -O easymesh.pkg https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh-2.4.1-r1.apk && \
apk add --allow-untrusted easymesh.pkg; \
else \
echo "Detected opkg — OpenWrt 24.10 or older" && \
opkg update && \
wget -O easymesh.pkg https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh_2.4.1-r1_all.ipk && \
opkg install easymesh.pkg; \
fi && \
rm -f /tmp/luci-indexcache /tmp/luci-modulecache/* && \
/etc/init.d/rpcd restart && /etc/init.d/uhttpd restart
৩. ঐচ্ছিক — ভাষা প্যাক
EasyMesh ডিফল্টভাবে ইংরেজিতে আসে। বাংলা এবং চীনা (সরলীকৃত) অনুবাদ আলাদা প্যাকেজ হিসাবে উপলব্ধ।
বাংলা (Bengali)
# opkg (≤ 24.10)
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-i18n-easymesh-bn_26.184.37259.7cad107_all.ipk && opkg install luci-i18n-easymesh-bn_26.184.37259.7cad107_all.ipk
# apk (≥ 25.12)
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-i18n-easymesh-bn-26.184.37259.7cad107.apk && apk add --allow-untrusted luci-i18n-easymesh-bn-26.184.37259.7cad107.apk
তারপর UI ভাষা পরিবর্তন করুন: System → System → Language and Style → Language → বাংলা (Bengali)।
চীনা (সরলীকৃত) / 简体中文
# opkg (≤ 24.10)
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-i18n-easymesh-zh-cn_26.184.37259.7cad107_all.ipk && opkg install luci-i18n-easymesh-zh-cn_26.184.37259.7cad107_all.ipk
# apk (≥ 25.12)
cd /tmp && wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-i18n-easymesh-zh-cn-26.184.37259.7cad107.apk && apk add --allow-untrusted luci-i18n-easymesh-zh-cn-26.184.37259.7cad107.apk
তারপর UI ভাষা পরিবর্তন করুন: System → System → Language and Style → Language → 中文 (Chinese)।
ফাইলনাম সম্পর্কে নোট: GitHub রিলিজ asset নামের
~কে.দিয়ে প্রতিস্থাপন করে। উপরের i18n সংস্করণ স্ট্রিং.7cad107ব্যবহার করে — ডাউনলোড URL এই ফর্মটি ব্যবহার করতেই হবে। প্যাকেজ মেটাডেটা (সংস্করণ26.184.37259~7cad107) অপরিবর্তিত থাকে।
৪. অফলাইন ipk / apk/ tarball ইনস্টল (রাউটারে ইন্টারনেট ছাড়া)
বিকল্প ১ — OpenWrt UI-এর মাধ্যমে ইনস্টল করুন
*ক .ipk
Releases/প্রকাশ বিভাগ থেকে সর্বশেষ luci-app-easymesh_*_all.ipk ডাউনলোড করুন। OpenWrt-এর LuCI UI-তে System → Software এ যান। Upload Package ক্লিক করুন, luci-app-easymesh_*_all.ipk নির্বাচন করুন, এবং ইনস্টল করুন।
*খ .apk
বিকল্প ২খ অনুসরণ করুন , শুধুমাত্র ডিফল্ট LuCI সফটওয়্যার ট্যাবগুলো ব্যবহার করে এটি করার কোনো সরাসরি 'এক-ক্লিক' উপায় নেই।
লুসি (LuCI) ওয়েব ফ্রন্টএন্ড উদ্দেশ্যপ্রণোদিতভাবেই অনির্ভরযোগ্য লোকাল .apk ইনস্টলেশন প্রতিরোধ করে। কারণ এর সিস্টেম > সফটওয়্যার (System > Software) মেনুর মাধ্যমে আপনার আপলোড করা ফাইলগুলো প্রসেস করার সময় ব্যাকএন্ডে --allow-untrusted এর মতো কোনো ফ্ল্যাগ বা অনুমতি থাকে না, যার ফলে এটি একটি সিগনেচার ত্রুটি (signature error) দেখায় এবং ইনস্টলেশন প্রক্রিয়াটি বন্ধ করে দেয়।
বিকল্প ২ — CLI (SSH / টার্মিনাল)-এর মাধ্যমে ইনস্টল করুন পিসিতে WinSCP / FileZilla অথবা স্মার্টফোনে Solid Explorer বা Documents by Readdle-এর মতো একটি মোবাইল SFTP ম্যানেজার ব্যবহার করে আপনার ডাউনলোড করা .ipk/.apk প্যাকেজটি (এবং এর জন্য প্রয়োজনীয় অন্যান্য নির্ভরশীল .ipk/ .apk ফাইলগুলো) রাউটারের /tmp ফোল্ডারে কপি বা স্থানান্তর করুন। ফাইলগুলো প্রস্তুত করার পর রাউটারে SSH দিয়ে প্রবেশ করে সেগুলো ইনস্টল করার কমান্ড:
২ক OpenWrt ≤ 24.10 (opkg) রাউটারে
```sh
cd /tmp
opkg install luci-app-easymesh-wpad-openssl_2.4.1-r1_all.ipk
opkg install luci-app-easymesh_2.4.1-r1_all.ipk
# optional
opkg install luci-i18n-easymesh-bn_26.184.37259.7cad107_all.ipk
/etc/init.d/uhttpd restart
২খ OpenWrt ≥ 25.12 (apk) রাউটারে
cd /tmp
apk --allow-untrusted add /tmp/luci-app-easymesh-wpad-wolfssl-2.4.1-r1.apk
apk --allow-untrusted add /tmp/luci-app-easymesh-2.4.1-r1.apk
# optional
apk --allow-untrusted add /tmp/luci-i18n-easymesh-bn-26.184.37259.7cad107.apk
/etc/init.d/uhttpd restart
বিকল্প ৩ — Tarball ইনস্টল
আপনার PC-তে ডাউনলোড করুন, রাউটারের /tmp ফোল্ডারে কপি বা স্থানান্তর করুন। এক্সট্র্যাক্ট করুন
# On PC
wget https://github.com/arafatrahmanzami/luci-app-easymesh/releases/download/2.4.1-r1/luci-app-easymesh-2.4.1-r1-full.tar.gz
scp luci-app-easymesh-2.4.1-r1-full.tar.gz root@192.168.1.1:/tmp/
-অথবা অনুলিপি / স্থানান্তর
বিকল্প ২ এর মতো একটি SFTP ম্যানেজার ব্যবহার করে পূর্বে ডাউনলোড করা tar.gz ফাইল টি, রাউটারের /tmp ফোল্ডারে কপি বা স্থানান্তর করুন। ফাইল প্রস্তুত করার পর রাউটারে SSH দিয়ে প্রবেশ করে ইনস্টল করার কমান্ড:
রাউটারে
# On router
cd / && tar xzf /tmp/luci-app-easymesh-2.4.1-r1-full.tar.gz
chmod +x /etc/init.d/easymesh /etc/hotplug.d/iface/30-easymesh-priority /etc/rc.wps/easymesh-pair
rm -f /tmp/luci-indexcache /tmp/luci-modulecache/*
/etc/init.d/rpcd restart
/etc/init.d/uhttpd restart
উৎস কোড (ক্রমানুদেশন)
ইনস্টলেশনের পরে
- LuCI খুলুন:
http://<router-ip>/cgi-bin/luci/ - Network → EasyMesh এ যান
- একটি ভূমিকা (Server, Client, Node) এবং একটি প্রিসেট বাছুন
- Save & Apply ক্লিক করুন
- যদি মেনু না দেখায়, হার্ড-রিফ্রেশ করুন: Ctrl+Shift+R
কী ইনস্টল হয়:
| পাথ | উদ্দেশ্য |
|---|---|
/usr/lib/lua/luci/controller/easymesh.lua |
LuCI কন্ট্রোলার |
/usr/lib/lua/luci/model/cbi/easymesh.lua |
কনফিগারেশন UI |
/etc/init.d/easymesh |
init লিপি (bat0, mesh VIFs, তারযুক্ত ব্যাকহল, অগ্রাধিকার) |
/etc/config/easymesh |
UCI (Unified Configuration Interface) কনফিগার |
/etc/hotplug.d/iface/30-easymesh-priority |
ইন্টারফেস চালু হলে সংযোগ অগ্রাধিকার পুনঃপ্রয়োগ |
/etc/rc.wps/easymesh-pair |
WPS বোতাম পরিবেশক |
/etc/uci-defaults/luci-easymesh |
প্রথম-চালনার সেটআপ |
/usr/share/luci/menu.d/luci-app-easymesh.json |
মেনু এন্ট্রি |
/usr/share/rpcd/acl.d/luci-app-easymesh.json |
ACL অনুমতি |
দ্রুত শুরু
- সার্ভার (ইন্টারনেট আছে): EasyMesh → role: Server, band mode: Dual-band
- ক্লায়েন্ট (এক্সটেন্ডার): role: Client, একই Mesh ID, AP Mode: ON, static IP
- উভয়ে: একই পাসওয়ার্ড, K/V/R চালু
দ্রুত সেটআপ পূর্বনির্ধারিত — একটি ভূমিকা বাছাই করুন, একটি বোতাম ক্লিক করুন, সম্পন্ন:
উভয় রাউটারে Save & Apply করার পর প্রায় ৩০ সেকেন্ড অপেক্ষা করুন। সার্ভারে Network → EasyMesh খুলুন — আপনার সঙ্গী টেবিলে ক্লায়েন্টের MAC দেখা উচিত:
বিস্তারিত সেটআপ — মৌলিক মেশ নেটওয়ার্ক (১ সার্ভার + ২ নোড)
ধাপ ১ — জালক সার্ভার সেটআপ করুন
-
OpenWrt-এ (Network → Wireless) যেকোনো সক্রিয় বেতার নেটওয়ার্ক নিষ্ক্রিয়/মুছুন।
-
Network → EasyMesh-এ যান এবং Mesh Mode-এর জন্য "Server" নির্বাচন করুন।
-
আপনার WiFi SSID লিখুন (এটি মূল WiFi নেটওয়ার্ক যা সমস্ত ডিভাইস সংযুক্ত হবে)।
-
নিয়মিত AP-এর জন্য WiFi রেডিও নির্বাচন করুন। (সুপারিশ: সেরা পারফরম্যান্সের জন্য মেশ ব্যাকহল থেকে ভিন্ন রেডিও ব্যবহার করুন।)
-
মেশ রেডিও নির্বাচন করুন এবং একটি পৃথক SSID লিখুন। (অ্যাপ স্বয়ংক্রিয়ভাবে আপনার মেশ SSID-তে
-meshযোগ করে।) -
Password Protection সক্রিয় করুন, একটি Mesh Password লিখুন এবং Save & Apply ক্লিক করুন।
-
"Reapply EasyMesh Settings" ক্লিক করুন APs স্থাপন এবং মেশ নেটওয়ার্কিং সক্রিয় করতে।
সেটআপ যাচাই করুন:
- Network → Wireless এ যান WiFi নেটওয়ার্ক যোগ হয়েছে কিনা দেখতে।
- Network → Interfaces এ যান Batman (
bat0) ডিভাইস এবংmesh_batmanইন্টারফেস যোগ হয়েছে কিনা নিশ্চিত করতে।
ধাপ ২ — একটি মেশ নোড সেটআপ করুন
-
দ্বিতীয় রাউটারে Network → EasyMesh এ যান।
-
Mesh Mode-এর জন্য "Client" নির্বাচন করুন।
-
সার্ভারের মতো একই WiFi SSID, Mesh SSID এবং Password লিখুন।
-
WiFi SSID এবং Mesh SSID উভয়ের জন্য একই WiFi রেডিও টাইপ (AX, AC, b/g/n) নির্বাচন করছেন তা নিশ্চিত করুন।
-
Save & Apply ক্লিক করুন, তারপর "Reapply EasyMesh Settings" ক্লিক করুন।
-
AP Mode ট্যাবে যান এবং একটি হোস্টনেম নির্বাচন করুন (যেমন
node2,node3)। -
DHCP (Dumb AP নোডের জন্য সুপারিশকৃত) সেট করুন অথবা আপনার Mesh Server-এর মতো একই রেঞ্জে একটি Static IP কনফিগার করুন।
-
Save & Apply ক্লিক করুন, তারপর "Enable Dumb AP Mode" ক্লিক করুন।
ধাপ ৩ — অতিরিক্ত মেশ নোডের জন্য পুনরাবৃত্তি করুন
- প্রতিটি নোডের জন্য একই WiFi SSID, Mesh SSID এবং Password ব্যবহার করুন।
- সমস্ত নোড একই WiFi রেডিও টাইপ (AX, AC, b/g/n) ব্যবহার করছে তা নিশ্চিত করুন।
ধাপ ৪ — প্রতিবেশী নোড যাচাই করুন
- Mesh Server-এ Network → EasyMesh এ যান এবং কাছাকাছি নোডগুলি Mesh Status এর অধীনে তালিকাভুক্ত কিনা দেখুন।
- Network → Wireless এ যান এবং Mesh Backhaul নেটওয়ার্কগুলি সার্ভারের সাথে যোগাযোগ করছে কিনা যাচাই করুন।
- Status → Overview → DHCP Devices এর অধীনে আপনার Mesh নোডগুলির IP খুঁজুন।
- ব্রাউজারে এর IP লিখে একটি নোড অ্যাক্সেস করুন।
ধাপ ৫ — (ঐচ্ছিক) Mesh Server-এ TorGuard WireGuard VPN সক্রিয় করুন
- Network → TorGuard WireGuard এ যান।
- আপনার WireGuard ইউজারনেম ও পাসওয়ার্ড লিখুন।
- আপনার পছন্দের WireGuard সার্ভার অবস্থান নির্বাচন করুন।
- WireGuard সক্রিয় করুন এবং Save & Apply ক্লিক করুন।
- সমস্ত মেশ নেটওয়ার্ক ট্র্যাফিক VPN টানেলের মাধ্যমে রুট করতে "Start WireGuard" ক্লিক করুন।
🔥 এখন আপনার OpenWrt Mesh WiFi সম্পূর্ণভাবে সেট আপ হয়েছে! 🚀
Dumb AP / ক্লায়েন্ট নোডের সাথে কাজ করা
Thin / Dumb AP মোড সক্রিয় করার পরে চাইল্ড নোডে লগইন করুন।
Dumb AP মোড সক্রিয় করার পরে একটি নোড পুনরুদ্ধার করুন:
যদি আপনি WiFi-এর মাধ্যমে সাইট অ্যাক্সেস করতে না পারেন, তাহলে একটি ইথারনেট কেবল (RJ45 কেবলের মাধ্যমে LAN-to-LAN) ব্যবহার করে সাব-নোডের LAN পোর্ট সরাসরি মাস্টার নোড LAN-এর সাথে সংযুক্ত করুন। তারপর মাস্টার নোডের DHCP তালিকায় সাব-নোডের IP ঠিকানা খুঁজুন এবং ক্লায়েন্ট নোড ব্যাকএন্ডে লগইন করতে আপনার ব্রাউজারে IP লিখুন।
স্ট্যাটাস পেজের DHCP সেকশনের অধীনে নোড IP খুঁজুন এবং একটি ব্রাউজারে (Chromium / Firefox / Brave, ইত্যাদি) IP খুলুন।
Mesh বেতার প্যারামিটার পরিবর্তনের সর্বোত্তম অনুশীলন:
- প্রথমে প্রতিটি চাইল্ড নোডের কনফিগারেশন পরিবর্তন করুন।
- অবশেষে, Mesh মাস্টার নোডের প্যারামিটার / সেটিংস পরিবর্তন / আপডেট করুন।
- সমস্ত নোড পুনঃসংযোগ করতে সেটিংস পুনঃপ্রয়োগ করুন। সমস্ত ডিভাইস পুনরায় কনফিগার হয় এবং নোড পুনঃসংযোগ সম্পন্ন হয়।
তারযুক্ত ব্যাকহল — নিরাপত্তা, পিছু হটা ও কার্যক্রম
EasyMesh তারযুক্ত ব্যাকহলকে নিরাপদ এবং স্বয়ংক্রিয় করে তোলে — দুটি নোডের মধ্যে একটি কেবল প্লাগ ইন করুন, মেশ এটি প্রধান পথ হিসেবে ব্যবহার করে। কেবল ব্যর্থ হলে, ম্যানুয়াল হস্তক্ষেপ ছাড়াই বেতার সংযোগে ফলব্যাক করে।
প্রয়োগের সময় কার্যক্রম
- পোর্ট ফিল্টারিং — শুধুমাত্র ভৌত
ethN/lanNপোর্ট নির্বাচনযোগ্য। CPU-অভ্যন্তরীণ পোর্ট এবং macvlan ইন্টারফেস লুকানো থাকে, তাই ভুল ইন্টারফেস বেছে নিয়ে রাউটার ভাঙার ঝুঁকি নেই। - স্বয়ংক্রিয় ব্রিজ অপসারণ — নির্বাচিত পোর্ট প্রয়োগের সময় LAN ব্রিজ (
br-lan) থেকে সরানো হয়। এটি তারযুক্ত এবং মেশ পথের মধ্যে একটি লেয়ার-২ লুপ প্রতিরোধ করে। - অগ্রাধিকার নির্ধারণ — পোর্টটি
throughput_override = 1000000(1 Gbit) পায়, তাই batman-adv যেকোনো বেতার সংযোগের উপর এটিকে পছন্দ করে। - অবস্থা লেবেল — প্রতিটি পোর্ট সংরক্ষণের আগে
(in bridge - will be removed on apply)বা(free)দেখায়, যাতে আপনি জানেন কী ঘটবে।
বেতারে ফলব্যাক
তারযুক্ত সংযোগ বিচ্ছিন্ন হলে (কেবল খুলে ফেলা, সুইচ রিবুট, পোর্ট ব্যর্থতা):
- batman-adv কয়েক সেকেন্ডের মধ্যে ক্ষতি সনাক্ত করে
- ট্র্যাফিক স্বয়ংক্রিয়ভাবে 5 GHz (600 Mbit অগ্রাধিকার) বা 2.4 GHz (30 Mbit অগ্রাধিকার) মেশ ব্যাকহলে রুট হয়
- ম্যানুয়াল হস্তক্ষেপ প্রয়োজন নেই
কেবল ফিরে এলে:
- তারযুক্ত পোর্ট স্বয়ংক্রিয়ভাবে পুনঃসংযুক্ত হয়
- ট্র্যাফিক তারযুক্তে ফিরে যায় — উপলব্ধ থাকলে তারযুক্ত সর্বদা জেতে
নিরাপত্তা
- লুপ প্রতিরোধ — LAN ব্রিজ থেকে তারযুক্ত পোর্ট সরানো তারযুক্ত এবং মেশ পথের মধ্যে একটি লেয়ার-২ লুপ বন্ধ করে, যা অন্যথায় নেটওয়ার্ক প্লাবিত করত।
- বেতার ব্যাকহলে WPA3 — কনফিগার করা হলে মেশ সংযোগগুলি WPA3 ব্যবহার করে; তারযুক্ত দিকটি কেবল বিশ্বস্ত নোডের মধ্যে একটি সরাসরি L2 সংযোগ।
- রোলব্যাক ওয়াচডগ — যদি একটি তারযুক্ত-ব্যাকহল পরিবর্তন সংযোগ বিচ্ছিন্ন করে, একটি ৬০-সেকেন্ডের ওয়াচডগ স্বয়ংক্রিয়ভাবে পূর্বের কার্যকর কনফিগারেশন পুনরুদ্ধার করে।
দ্রুত পরীক্ষা
তারযুক্ত ব্যাকহল সক্রিয় কিনা যাচাই করুন:
batctl hardif eth0 throughput_override # 1000.0 MBit প্রত্যাশিত
batctl o # শীর্ষে তারযুক্ত প্রতিবেশী
ip link show eth0 # UP, `master br-lan` নেই
ব্রিজ থেকে পোর্ট সরানো হয়েছে কিনা নিশ্চিত করুন:
brctl show br-lan # eth0 তালিকাভুক্ত থাকা উচিত নয়
পরীক্ষার জন্য বেতারে ফলব্যাক জোর করুন:
ip link set eth0 down
sleep 10
batctl o # ট্র্যাফিক এখন 5 GHz ব্যবহার করা উচিত
ip link set eth0 up
সংযোগ অগ্রাধিকার সমন্বয়
Batman-adv throughput_override দ্বারা সংযোগ গুণমান গুণ করে সেরা পথ বেছে নেয়। EasyMesh UI-তে এই মানগুলি প্রকাশ করে:
ডিফল্ট:
| ফিল্ড | ডিফল্ট (Kbit/s) | অর্থ |
|---|---|---|
| তারযুক্ত | 1000000 |
যেকোনো বেতার সংযোগের উপর তারযুক্ত পছন্দ |
| 6 GHz | 900000 |
দ্রুত বেতার, প্রায়-তারযুক্ত |
| 5 GHz | 600000 |
স্ট্যান্ডার্ড 5 GHz ব্যাকহল |
| 2.4 GHz | 30000 |
ধীর কিন্তু দীর্ঘ পরিসর |
উচ্চ মান = বেছে নেওয়ার সম্ভাবনা বেশি। শুধু সংযোগ গুণমানের উপর batman সিদ্ধান্ত নিতে 0 সেট করুন।
সাধারণ সমন্বয় পরিস্থিতি:
- তারযুক্ত-প্রথম, বেতার-ফলব্যাক (পূর্বনির্ধারিত): wired=1000000, 5 GHz=600000, 2.4 GHz=30000
- শুধু তারযুক্ত জোর করুন (তারযুক্ত বিচ্ছিন্ন না হওয়া পর্যন্ত বেতার উপেক্ষা করুন): wired=10000000, 5 GHz=100000, 2.4 GHz=10000
- 5 GHz প্রাথমিক পছন্দ করুন (বেতার ব্যান্ডউইথ পছন্দ): wired=500000, 5 GHz=900000, 2.4 GHz=20000
- দীর্ঘ-পরিসর পছন্দ (2.4 GHz দেয়ালের মধ্য দিয়ে ভাল): wired=1000000, 5 GHz=400000, 2.4 GHz=200000
রিয়েল টাইমে বর্তমান মান যাচাই করুন:
মেশ টেবিলে Priority weight কলামটি প্রতিটি ইন্টারফেসে প্রয়োগ করা প্রকৃত throughput_override দেখায়, প্রতিটি পেজ লোডে রিফ্রেশ হয়। দ্রুত শুরু বিভাগে ড্যাশবোর্ড স্ক্রিনশট দেখুন।
প্রয়োগ করুন:
Save & Apply ক্লিক করুন, বা চালান:
/etc/init.d/easymesh restart
পরিবর্তন ~১৫ সেকেন্ডের মধ্যে কার্যকর হয়।
মেশ জুড়ে অতিথি / IoT নেটওয়ার্ক প্রসারিত করা (VLAN)
এটি কী, ৩০ সেকেন্ডে?
ধরুন আপনার বাড়িতে তিনটি পৃথক নেটওয়ার্ক আছে:
- মূল WiFi — আপনার ফোন, ল্যাপটপ, টিভি
- অতিথি WiFi — ভিজিটররা (আপনার ফাইলগুলিতে অ্যাক্সেস নেই)
- IoT WiFi — স্মার্ট বাল্ব, ক্যামেরা, প্লাগ (নিরাপত্তার জন্য বিচ্ছিন্ন)
সাধারণত, আপনি যখন একটি মেশ এক্সটেন্ডার যোগ করেন, শুধুমাত্র মূল নেটওয়ার্ক এক্সটেন্ডারে ছড়িয়ে পড়ে। এক্সটেন্ডারে সংযুক্ত অতিথিরা এখনও মূল-নেটওয়ার্ক বিশেষাধিকার পায়, যা একটি নিরাপত্তা ফাঁক।
EasyMesh-এর Mesh VLANs (Virtual LANs) বৈশিষ্ট্য তিনটি নেটওয়ার্ককেই মেশ জুড়ে ছড়িয়ে দেয় — যাতে একটি এক্সটেন্ডার নোডে একজন অতিথি এখনও অতিথি থাকে, এবং একটি এক্সটেন্ডারে একটি IoT ডিভাইস এখনও বিচ্ছিন্ন IoT নেটওয়ার্কে থাকে।
আপনার কি এটি প্রয়োজন?
| আপনার পরিস্থিতি | VLAN প্রয়োজন? |
|---|---|
| আপনার শুধুমাত্র একটি WiFi নেটওয়ার্ক আছে | ❌ না — এই সেকশনটি এড়িয়ে যান |
| আপনার অতিথি WiFi আছে এবং সমস্ত এক্সটেন্ডারে চান | ✅ হ্যাঁ |
| আপনার স্মার্ট-হোম ডিভাইস পৃথক নেটওয়ার্কে আছে | ✅ হ্যাঁ |
| আপনি একটি হটস্পট / ক্যাপটিভ পোর্টাল চালান | ✅ হ্যাঁ — মেশ জুড়ে ছড়িয়ে দিতে প্রয়োজন |
| আপনি শুধু চান WiFi সর্বত্র কাজ করুক | ❌ না — মেশ ইতিমধ্যে এটি পরিচালনা করে |
পূর্বশর্ত
VLAN কনফিগার করার আগে, আপনার প্রয়োজন:
- ✅ একটি কার্যকরী মেশ — দুটি বা তার বেশি নোড ইতিমধ্যে সংযুক্ত (দ্রুত শুরু দেখুন)
- ✅ অন্তত একটি অতিরিক্ত নেটওয়ার্ক ইতিমধ্যে তৈরি — যেমন Network → Interfaces-এ একটি
guestইন্টারফেস - ✅ EasyMesh 2.4.1-r1 বা নতুন ইনস্টল করা
- ⚠️ আপনি যদি একটি তারযুক্ত ব্যাকহল ব্যবহার করেন, আপনার ইথারনেট কেবল 802.1Q-ট্যাগযুক্ত ফ্রেম বহন করতে সক্ষম হতে হবে। সাধারণ আনম্যানেজড সুইচ পূর্বনির্ধারিত ভাবে এটি করে; কিছু পুরানো ম্যানেজড সুইচে VLAN 10/20/etc. পাস করার অনুমতি কনফিগার করতে হবে।
ধাপ ১ — আপনার নেটওয়ার্কের VLAN ID খুঁজুন
যদি আপনার ইতিমধ্যে একটি অতিথি নেটওয়ার্ক থাকে, এটি কোন VLAN নম্বর ব্যবহার করে তা খুঁজে বের করুন:
LuCI UI-এর মাধ্যমে:
- Network → Interfaces এ যান
- আপনার অতিথি নেটওয়ার্কে Edit ক্লিক করুন
- Device ফিল্ডটি খুঁজুন — এটি
br-guestবাbr-lan.10এর মতো বলতে পারে - যদি নামে একটি ডটের পরে একটি সংখ্যা থাকে (যেমন
br-lan.10), সেই সংখ্যাটি হল VLAN ID - যদি কোনো সংখ্যা না থাকে, আপনার অতিথি নেটওয়ার্ক পূর্বনির্ধারিত ভাবে ব্যবহার করে — সাধারণত 10
SSH-এর মাধ্যমে:
# তাদের VLAN ID সহ সমস্ত নেটওয়ার্ক ডিভাইসের তালিকা
uci show network | grep -E "8021q|vid"
উদাহরণ আউটপুট:
network.guest=interface
network.guest.device='br-lan.10'
network.guest.proto='static'
এই ক্ষেত্রে, VLAN ID হল 10।
এখনও একটি অতিথি নেটওয়ার্ক নেই? প্রথমে Network → Interfaces → Add new interface-এ একটি তৈরি করুন → নাম
guest→ প্রোটোকলStatic address→ IP192.168.30.1/24। তারপর এখানে চালিয়ে যান।
ধাপ ২ — EasyMesh-এ VLAN IDগুলি লিখুন
- Network → EasyMesh খুলুন
- Mesh VLAN সেকশনে স্ক্রল করুন
- VLAN IDs (কমা-বিভক্ত) ফিল্ডে, আপনি যে VLAN IDগুলি প্রসারিত করতে চান সেগুলি লিখুন
- একক নেটওয়ার্ক:
10 - দুটি নেটওয়ার্ক:
10,20 - তিনটি নেটওয়ার্ক:
10,20,30
- একক নেটওয়ার্ক:
- পেজের নীচে Save & Apply ক্লিক করুন
ধাপ ৩ — মেশ পুনর্নির্মাণের জন্য অপেক্ষা করুন
মেশটি নেটওয়ার্ক ডিভাইসগুলি পুনর্নির্মাণ করতে প্রায় ১৫–২০ সেকেন্ড সময় নেয়। অগ্রগতি দেখুন:
# একটি টার্মিনাল খুলুন এবং লগ দেখুন
logread -f | grep easymesh
আপনি নিম্নলিখিত লাইনগুলি দেখবেন:
easymesh: Mesh VLAN: bat0.10 created
easymesh: Mesh VLAN 10: attached to br-guest
easymesh: Mesh VLAN: bat0.20 created
easymesh: Mesh VLAN 20: attached to br-iot
ধাপ ৪ — এটি কাজ করেছে কিনা যাচাই করুন
ডিভাইসগুলি তৈরি হয়েছে কিনা দেখুন:
uci show network | grep 8021q
প্রত্যাশিত আউটপুট (VLAN 10 এবং 20 এর জন্য):
network.@device[5].name='bat0.10'
network.@device[5].type='8021q'
network.@device[5].ifname='bat0'
network.@device[5].vid='10'
network.@device[6].name='bat0.20'
network.@device[6].type='8021q'
network.@device[6].ifname='bat0'
network.@device[6].vid='20'
ব্রিজগুলি পরীক্ষা করুন:
uci show network | grep -E "br-guest|br-iot"
অতিথি ব্রিজে ports='...' bat0.10 এবং IoT ব্রিজে ports='...' bat0.20 খুঁজুন।
এন্ড-টু-এন্ড পরীক্ষা:
- সার্ভার নোডে আপনার অতিথি WiFi-তে একটি ডিভাইস সংযুক্ত করুন — এটি একটি
192.168.30.xIP পায় কিনা নিশ্চিত করুন - একটি ক্লায়েন্ট নোডে একই ডিভাইস অতিথি WiFi-তে সংযুক্ত করুন — এটি কিন্তু
192.168.30.xIP পাওয়া উচিত - এটি প্রমাণ করে যে অতিথি VLAN এখন মেশ জুড়ে প্রসারিত হয়েছে
সাধারণ পরিস্থিতি
শুধুমাত্র অতিথি নেটওয়ার্ক
uci set easymesh.config.mesh_vlans='10'
uci commit easymesh
/etc/init.d/easymesh restart
অতিথি + IoT
uci set easymesh.config.mesh_vlans='10,20'
uci commit easymesh
/etc/init.d/easymesh restart
অতিথি + IoT + হটস্পট
uci set easymesh.config.mesh_vlans='10,20,30'
uci commit easymesh
/etc/init.d/easymesh restart
স্বয়ংক্রিয়-সংযুক্তি — ম্যানুয়াল ব্রিজিং প্রয়োজন নেই
যদি আপনার বিদ্যমান ব্রিজগুলি শেষে VLAN ID দিয়ে নামকরণ করা হয়, EasyMesh স্বয়ংক্রিয়ভাবে VLAN ডিভাইস সংযুক্ত করে। স্বীকৃত প্যাটার্ন:
| ব্রিজের নাম | VLAN এর জন্য স্বয়ংক্রিয়-সংযুক্তি |
|---|---|
br-10 |
VLAN 10 |
br-lan10 |
VLAN 10 |
br-vlan10 |
VLAN 10 |
br-guest10 |
VLAN 10 |
br-iot10 |
VLAN 10 |
উদাহরণ: Network → Interfaces → Devices-এ br-guest এর নাম পরিবর্তন করে br-guest10 করুন এবং EasyMesh পরবর্তী রিস্টার্টে স্বয়ংক্রিয়ভাবে bat0.10 যোগ করবে। ম্যানুয়াল ধাপ নেই।
VLAN সমস্যা সমাধান
সমস্যা: VLAN ডিভাইস দেখাচ্ছে না
# লিপি কী লগ করেছে দেখুন
logread | grep -i "mesh vlan" | tail -20
"Skipping invalid VLAN" বা "Mesh VLAN: bat0.X created" খুঁজুন। যদি লগ তৈরি দেখায় কিন্তু ডিভাইস সেখানে না থাকে:
# ম্যানুয়ালি পুনরায় তৈরি করুন
/etc/init.d/network reload
sleep 5
ip link show bat0.10
সমস্যা: অতিথি ডিভাইস মূল-নেটওয়ার্ক IP (192.168.1.x) পায় অতিথি (192.168.30.x) এর পরিবর্তে
ক্লায়েন্ট নোডে ব্রিজে VLAN ডিভাইস নেই। ম্যানুয়ালি যোগ করুন:
- Network → Interfaces → Devices
- আপনার অতিথি ব্রিজে (যেমন
br-guest) Edit ক্লিক করুন - Ports তালিকায়
bat0.10যোগ করুন - Save & Apply ক্লিক করুন
মেশে প্রতিটি নোডে এটি করুন।
সমস্যা: VLAN সক্রিয় করার পরে তারযুক্ত ব্যাকহল অতিথি ট্র্যাফিক বহন করা বন্ধ করেছে
নোডগুলির মধ্যে আপনার ফিজিক্যাল সুইচ ট্যাগগুলি সরিয়ে ফেলছে কিনা দেখুন:
- আনম্যানেজড সুইচ ব্যবহার করলে — এটি সাধারণত সমস্ত VLAN পাস করে
- ম্যানেজড সুইচ ব্যবহার করলে — পোর্ট 10, 20, 30-এ ট্যাগযুক্ত ট্র্যাফিকের অনুমতি কনফিগার করুন (বা 802.1Q ট্রাঙ্ক মোড ব্যবহার করুন)
দ্রুত পরীক্ষা: সুইচ বাইপাস করুন। দুটি নোডকে একটি একক ইথারনেট কেবল দিয়ে সরাসরি সংযুক্ত করুন এবং পুনরায় পরীক্ষা করুন। যদি এটি কাজ করে, সুইচটি সমস্যা।
সমস্যা: VLAN সক্রিয় করার পরে সার্ভারে WiFi কাজ করে কিন্তু ক্লায়েন্টে কাজ করে না
ক্লায়েন্ট নোড পুনর্নির্মাণ হয়নি। এটি জোর করুন:
ssh root@<client-node-ip>
/etc/init.d/easymesh restart
sleep 15
uci show network | grep 8021q
VLAN নিষ্ক্রিয় করা
সমস্ত VLAN ডিভাইস সরাতে:
uci set easymesh.config.mesh_vlans=''
uci commit easymesh
/etc/init.d/easymesh restart
sleep 15
uci show network | grep 8021q # কিছুই প্রিন্ট করবে না
লিপি স্বয়ংক্রিয়ভাবে bat0-এ সমস্ত 8021q ডিভাইস সরিয়ে দেয়।
এটি অভ্যন্তরীণভাবে কীভাবে কাজ করে
যদি আপনি কৌতূহলী হন:
- প্রতিটি VLAN ID
bat0-এ একটি 802.1Q সাব-ইন্টারফেস তৈরি করে — উদাহরণস্বরূপ,bat0.10 - Batman-adv স্বচ্ছভাবে মেশ জুড়ে ট্যাগযুক্ত ফ্রেম বহন করে
- 802.1Q সাব-ইন্টারফেস সংশ্লিষ্ট ব্রিজে (যেমন
br-guest) একটি পোর্ট হিসাবে যোগ করা হয় - এক্সটেন্ডারে থাকা ক্লায়েন্ট ডিভাইস যেগুলি অতিথি AP-তে সংযুক্ত হয় তারা ট্যাগযুক্ত ট্র্যাফিক পায় যা সার্ভারের অতিথি ব্রিজে পৌঁছায়
- ক্লায়েন্ট নোডে অতিরিক্ত কনফিগারেশনের প্রয়োজন নেই — মেশ ট্যাগগুলি এন্ড-টু-এন্ড বিতরণ করে
এটি ব্যবহার করার জন্য আপনাকে এটি বুঝতে হবে না, তবে ডিবাগিং করার সময় এটি সহায়ক।
আরও তথ্য — ব্যবহারের পরিস্থিতি
-
VPN প্রয়োজন নেই। আপনি শুধুমাত্র OpenWrt/ImmortalWrt রাউটার ব্যবহার করে VPN ছাড়াই একটি স্ট্যান্ডার্ড মেশ তারযুক্ত + বেতার নেটওয়ার্ক সম্পূর্ণভাবে এবং দ্রুত তৈরি / স্থাপন করতে পারেন — সেকেন্ডের মধ্যে।
-
শেয়ার্ড-রেডিও অপারেশন। আপনি একই রেডিও হার্ডওয়্যারে মূল WiFi AP এবং Mesh AP উভয়ই চালাতে পারেন, কিন্তু এটি সুপারিশ করা হয় না — কর্মক্ষমতা উল্লেখযোগ্যভাবে হ্রাস পাবে। সর্বোত্তম সমাধান হল প্রতিটি নেটওয়ার্ক একটি স্বাধীন রেডিও ফ্রিকোয়েন্সি ব্যবহার করুক।
- যদি একটি একক শেয়ার্ড ফ্রিকোয়েন্সিতে উভয়ই চালান, নিম্নলিখিত সীমাবদ্ধতা প্রযোজ্য: সীমিত চ্যানেল ব্যান্ডউইথ ও কর্মক্ষমতা হ্রাস করে, এবং কম উপলব্ধ চ্যানেল নেটওয়ার্ক গতি ও স্থিতিশীলতা হ্রাস করে।
- সেই ক্ষেত্রে, Batman-এর উন্নত বৈশিষ্ট্য যেমন bonding এবং fragmentation নিষ্ক্রিয় করতে হবে ওভারহেড / হার্ডওয়্যার লোড কমাতে।
-
তারযুক্ত ডিভাইস এবং থার্ড-পার্টি রাউটার। EasyMesh বেতার Mesh সমর্থন করে না এমন তারযুক্ত ডিভাইস বা থার্ড-পার্টি রাউটারের সাথে সংযোগ করতে পারে। বেতার Mesh কার্যকারিতা ছাড়া একটি তারযুক্ত OpenWrt ডিভাইস (x86 সফট রাউটার) ব্যবহার করলে, Network → Interfaces এ যান এবং
mesh_batmanইন্টারফেস ম্যানুয়ালিbat0ভার্চুয়াল ডিভাইসে বাইন্ড করুন (mesh_batmanইন্টারফেসে ডিভাইস হিসেবেbat0নির্বাচন করুন)। -
WireGuard / VPN। এই প্লাগইনের সাথে মিলিতভাবে WireGuard (VPN) ব্যবহার করাও সম্ভব।
সমস্যা সমাধান
সেটিংস প্রয়োগ করার পরে আমার রাউটারে অ্যাক্সেস হারিয়েছি
-
রাউটার আনপ্লাগ করুন। ১০ সেকেন্ড অপেক্ষা করুন। আবার প্লাগ করুন।
-
প্রতি ০.৩ সেকেন্ডে রিসেট বোতাম ট্যাপ করুন যতক্ষণ না LED দ্রুত ব্লিংক করে।
-
একটি LAN কেবল আপনার PC থেকে একটি LAN পোর্টে সংযুক্ত করুন।
-
আপনার PC-র IP 192.168.1.2 / 255.255.255.0 সেট করুন।
-
SSH করুন:
ssh root@192.168.1.1 -
mount_rootলিখুন -
সর্বশেষ ব্যাকআপ থেকে পুনরুদ্ধার করুন:
/etc/init.d/easymesh restore reboot
মেশ ০ সঙ্গী দেখায়
- উভয় রাউটার WiFi পরিসরের মধ্যে আছে কিনা দেখুন
- Mesh ID এবং password উভয়েই একই কিনা নিশ্চিত করুন
- উভয় রাউটারে
batctl nচালান — যদি খালি থাকে, মেশ সংযোগ তৈরি হয়নি - পরীক্ষা করার আগে রিবুটের পরে ২ মিনিট অপেক্ষা করুন
ক্লায়েন্ট নোডে ইন্টারনেট নেই
- সার্ভারই একমাত্র DHCP চালানো রাউটার হতে হবে (ক্লায়েন্ট নোডগুলি "Dumb AP" মোডে সেট থাকে, যা স্থানীয়ভাবে DHCP নিষ্ক্রিয় করে)
- Status → Overview পরীক্ষা করুন — ক্লায়েন্ট নোডের একটি IP আছে?
- ক্লায়েন্ট নোড থেকে
ping 1.1.1.1চেষ্টা করুন
WiFi SSID অদৃশ্য হয়ে যায়
- Network → Wireless পরীক্ষা করুন — ইন্টারফেস সক্রিয়?
- রাউটারে
wifi reloadচালান - ত্রুটির জন্য
logread | grep hostapdপরীক্ষা করুন
"Priority weight" ? বা 0.0 MBit দেখায়
init লিপি অগ্রাধিকার প্রয়োগ সমাপ্ত করেনি। ৩০ সেকেন্ড অপেক্ষা করুন, তারপর:
/etc/init.d/easymesh restart
sleep 15
batctl hardif eth0 throughput_override # 1000.0 MBit দেখানো উচিত
অথবা Network → EasyMesh → Boot-time reliability-এ Cron fallback চেকবক্স সক্রিয় করুন।
এটি প্রতি মিনিটে অগ্রাধিকার পুনঃপ্রয়োগ করে — নিরাপদ, idempotent, এবং রাউটারে যেখানে বেতার ড্রাইভার ধীরে লোড হয় সেখানে সহায়ক।
পরিবর্তন বিবরণী
[2.4.1-r1] — ২০২৬-০৯-১৬
যোগ করা হয়েছে
- সার্ভার ভূমিকার জন্যও তারযুক্ত ব্যাকহল ড্রপডাউন দেখানো হয় (পূর্বে শুধুমাত্র Client/Node)
- পোর্ট অবস্থা লেবেল:
(in bridge - will be removed on apply)/(free) - শুধুমাত্র
ethN/lanNএ ফিল্টার — CPU পোর্ট এবং macvlan ইন্টারফেস বাদ দেয় throughput_overrideএর মাধ্যমে সংযোগ অগ্রাধিকার (তারযুক্ত 1 Gbit, 6 GHz 900 Mbit, 5 GHz 600 Mbit, 2.4 GHz 30 Mbit)- GUI-সম্পাদনযোগ্য সংযোগ অগ্রাধিকার ওজন — init লিপিতে আর কোনো হার্ডকোড করা মান নেই
- Priority Weight কলাম বেতার সঙ্গীদের জন্য (পূর্বে শুধুমাত্র তারযুক্ত)
- মেশ VLAN — 802.1Q-এর মাধ্যমে মেশ জুড়ে অতিথি / IoT / হটস্পট নেটওয়ার্ক প্রসারিত করুন
- UI-তে নতুন "Mesh VLAN" সেকশন: কমা-বিভক্ত VLAN ID লিখুন (যেমন
10,20,30) - init লিপি প্রতিটি নোডে প্রতিটি ID-এর জন্য একটি
bat0.<vid>802.1Q ডিভাইস তৈরি করে - ব্রিজ যদি
br-<vid>,br-lan<vid>,br-vlan<vid>,br-guest<vid>, বাbr-iot<vid>নামে হয় তবে স্বয়ংক্রিয়ভাবে VLAN ডিভাইস সংযুক্ত করে - প্রয়োগের আগে
bat0-এ পূর্ববর্তী 802.1Q ডিভাইস সরিয়ে দেয় — ID পরিবর্তন বা ফিল্ড মুছতে নিরাপদ - README-এ শিক্ষানবিস গাইড: পূর্বশর্ত, ধাপে ধাপে, উদাহরণ, সমস্যা সমাধান
- UI-তে নতুন "Mesh VLAN" সেকশন: কমা-বিভক্ত VLAN ID লিখুন (যেমন
iw devএর মাধ্যমে স্বয়ংক্রিয় ব্যান্ড শনাক্তকরণ- একযোগে বহু-সংযোগ ট্র্যাফিকের জন্য
bat0-এ bonding সক্রিয় /etc/rc.wps/easymesh-pairপরিবেশকের মাধ্যমে WPS পেয়ারিং (wifi-scripts এর সাথে কোনো দ্বন্দ্ব নেই)- IP পরিবর্তনের জন্য ৬০-সেকেন্ডের রোলব্যাক ওয়াচডগ
- স্প্লিট-ব্যান্ড ক্লায়েন্ট SSID (2.4 / 5 GHz আলাদা)
wait_and_attach_mesh()— ৬০ সেকেন্ড টাইমআউট + ম্যানুয়ালbatctlসংযুক্তি ফলব্যাক- রোল-ভিত্তিক স্যানিটেশন: সার্ভার
wired_ifরাখে - ঐচ্ছিক cron ফলব্যাকের জন্য UI চেকবক্স যোগ করা হয়েছে (ডিফল্ট বন্ধ)
- বেতার সঙ্গীদের জন্য লাইভ লেটেন্সি মনিটরিং (৩টি পিং-এর উপর স্মুথ করা)
- বেতার এবং তারযুক্ত সংযোগের জন্য লাইভ RX/TX ব্যান্ডউইথ রেট
- তারযুক্ত ব্যাকহলের জন্য প্রতিবেশী MAC + সর্বশেষ-দেখা (batman originator টেবিল থেকে)
- শক্তিশালী অগ্রাধিকার পড়া (একাধিক
batctlসিনট্যাক্স চেষ্টা করে) - ইন্টারফেস চালু হলে অগ্রাধিকার পুনঃপ্রয়োগের জন্য হটপ্লাগ একীকরণ
- init লিপিতে ৯০-সেকেন্ডের অগ্রাধিকার পুনঃপ্রচেষ্টা লুপ + দ্বিতীয়-পাস ক্যাচআপ
সংশোধন করা হয়েছে
- init লিপি UCI-তে escaped quotes লিখেছিল, যার ফলে বেতার সংযোগ ভেঙে যায়
- CBI-তে
apply_on_parse=trueপ্রতিটি পেজ লোডে UCI লিখেছিল (লকআউট) - Server ভূমিকা ভুলবশত AP মোড সক্রিয় করতে পারে, DHCP নিষ্ক্রিয় করে
+wpad-meshনির্ভরতা সরানো হয়েছে (kconfig পুনরাবৃত্ত নির্ভরতা সৃষ্টি করছিল)pair()sleep 0.3ব্যবহার করেছিল — BusyBox-এ ভাঙাpair()সঙ্গী পরীক্ষা খালি লাইন গণনা করেছিলsleep 3; ifup bat0ath9k মেশের জন্য খুব ছোট ছিল- গণনা প্রদর্শন তারযুক্ত ইন্টারফেস দ্বিগুণ গণনা করেছিল
পরিবর্তিত
- ৪টি প্যাকেজে বিভক্ত: মূল + 3 wpad মেটা
- IPK SDK-এর
ipkg-buildদিয়ে তৈরি (gzipped-tar, OpenWrt-সামঞ্জস্যপূর্ণ)
উৎস থেকে সংকলন (OpenWrt SDK)
আপনি OpenWrt/ImmortalWrt উৎস কোড মূল ডিরেক্টরিতে নিম্নলিখিত কমান্ডগুলি চালাতে পারেন।
ধাপ ১ — OpenWrt SDK সেটআপ
আপনার টার্গেট প্ল্যাটফর্মের জন্য OpenWrt SDK ডাউনলোড এবং ইনস্টল করুন:
git clone https://git.openwrt.org/openwrt/openwrt.git
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
ধাপ ২ — OpenWrt প্যাকেজ উৎসে EasyMesh অ্যাপ যোগ করুন
cd package
git clone https://github.com/arafatrahmanzami/luci-app-easymesh.git
ধাপ ৩ — প্যাকেজ সংকলন করুন
OpenWrt-এর মূল ডিরেক্টরিতে ফিরে যান:
cd ../
make menuconfig ব্যবহার করে প্যাকেজ নির্বাচন করুন:
make menuconfig
LuCI → Applications → luci-app-easymesh এ নেভিগেট করুন, তারপর এটি একটি মডিউল হিসাবে সংকলন করতে <M> নির্বাচন করুন।
প্যাকেজ সংকলন করুন:
make package/luci-app-easymesh/compile V=s
সংকলন হওয়ার পরে, .ipk প্যাকেজটি bin/packages/.../base/-এ উপলব্ধ হবে।
সংক্ষিপ্ত সংস্করণ (সব একসাথে):
git clone https://github.com/arafatrahmanzami/luci-app-easymesh.git package/luci-app-easymesh
make menuconfig # নির্বাচন করুন LUCI -> Applications -> luci-app-easymesh
make package/luci-app-easymesh/compile V=s
# আউটপুট: bin/packages/xxx/base/luci-app-easymesh_xxx.ipk
কৃতিত্ব
- মূল লেখক:
- dz dingzhong110@gmail.com
- torguardvpn — torguardvpn/luci-app-easymesh
- মূল প্রকল্প থেকে শাখা:
- ত্রুটি-সংশোধন শাখা: mobing8/luci-app-easymesh-dawn
- বর্তমান রক্ষণাবেক্ষণকারী: Arafat Rahman Zami Mondol — @arafatrahmanzami · একটি ইস্যু খুলুন
আরও অন্বেষণের জন্য, উৎস কোড দেখুন বা উপরে তালিকাভুক্ত রেফারেন্স রিপোজিটরিগুলিতে প্রকাশ ট্র্যাক করুন।
পরিভাষা অভিধান
এই README-তে যে ইংরেজি বা মিশ্র পরিভাষাগুলি ব্যবহার করা হয়েছে সেগুলি এখানে ব্যাখ্যা করা হল। যেসব পরিভাষা অনুবাদ করলে নেটওয়ার্কিংয়ে অর্থ পরিবর্তিত হতে পারে বা আন্তর্জাতিক মানে অপরিচিত হতে পারে, সেগুলি ইংরেজিতেই রাখা হয়েছে।
নেটওয়ার্ক মৌলিক পরিভাষা
| পরিভাষা | পূর্ণ রূপ | ব্যাখ্যা |
|---|---|---|
| WiFi | Wireless Fidelity | তারবিহীন নেটওয়ার্ক সংযোগের মানক নাম। বেতার সংযোগের প্রযুক্তি। |
| LAN | Local Area Network | স্থানীয় এলাকা নেটওয়ার্ক — আপনার বাড়ি বা অফিসের ভিতরের ডিভাইসগুলির মধ্যে সংযোগ। |
| WAN | Wide Area Network | বিস্তৃত এলাকা নেটওয়ার্ক — সাধারণত ইন্টারনেট সংযোগ যা ISP থেকে আসে। |
| AP | Access Point | অ্যাক্সেস পয়েন্ট — WiFi সংকেত সম্প্রচার করে যা ডিভাইসগুলি সংযুক্ত হতে পারে। |
| IP | Internet Protocol | ইন্টারনেট প্রোটোকল — প্রতিটি নেটওয়ার্ক ডিভাইসের অনন্য ঠিকানা (যেমন 192.168.1.1)। |
| MAC | Media Access Control | মিডিয়া অ্যাক্সেস কন্ট্রোল — প্রতিটি নেটওয়ার্ক কার্ডের অনন্য হার্ডওয়্যার সনাক্তকারী (যেমন 00:11:22:33:44:55)। |
| DHCP | Dynamic Host Configuration Protocol | স্বয়ংক্রিয়ভাবে ডিভাইসে IP ঠিকানা বিতরণকারী সেবা। |
| DNS | Domain Name System | ডোমেন নামকে IP ঠিকানায় রূপান্তর করে (যেমন google.com → 142.250.185.78)। |
| SSID | Service Set Identifier | WiFi নেটওয়ার্কের নাম, যা আপনি ফোনে দেখেন (যেমন EasyMesh_WiFi)। |
| VLAN | Virtual LAN | ভার্চুয়াল LAN — একটি ফিজিক্যাল নেটওয়ার্কে একাধিক লজিক্যাল নেটওয়ার্ক তৈরি করার কৌশল (যেমন অতিথি নেটওয়ার্ক)। |
| VPN | Virtual Private Network | ভার্চুয়াল প্রাইভেট নেটওয়ার্ক — ইন্টারনেটের উপর এনক্রিপ্টেড সংযোগ যা গোপনীয়তা রক্ষা করে। |
বেতার মান ও প্রোটোকল
| পরিভাষা | ব্যাখ্যা |
|---|---|
| 802.11s | IEEE মান যা মেশ নেটওয়ার্কিং সমর্থন করে — রাউটারগুলি সরাসরি একে অপরের সাথে সংযোগ করে। |
| 802.11k/v/r | তিনটি IEEE মান যা একসাথে দ্রুত রোমিং প্রদান করে — আপনি যখন ঘরের মধ্যে চলাচল করেন, ফোন স্বয়ংক্রিয়ভাবে সবচেয়ে কাছের রাউটারে সংযোগ করে। |
| 802.11k | নিকটবর্তী অ্যাক্সেস পয়েন্ট সম্পর্কে তথ্য শেয়ার করে। |
| 802.11v | ক্লায়েন্টকে সুপারিশ করে কোন অ্যাক্সেস পয়েন্টে সংযুক্ত হওয়া উচিত। |
| 802.11r | দ্রুত রোমিং — সংযোগ বিচ্ছিন্ন না করে অন্য রাউটারে চলে যাওয়া। |
| 802.1Q | VLAN ট্যাগিং মান। ডেটা প্যাকেটে একটি ট্যাগ যোগ করে কোন নেটওয়ার্কের তা চিহ্নিত করে। |
| WPA2 | WiFi Protected Access 2 — নেটওয়ার্ক এনক্রিপশনের পুরানো কিন্তু এখনও ব্যবহৃত মান। |
| WPA3 | WiFi Protected Access 3 — WPA2-এর উত্তরসূরি, আরও শক্তিশালী এনক্রিপশন। |
| SAE | Simultaneous Authentication of Equals — WPA3-এ ব্যবহৃত পাসওয়ার্ড-ভিত্তিক প্রমাণীকরণ পদ্ধতি। |
| K/V/R | উপরের 802.11k/v/r-এর সংক্ষিপ্ত রূপ। |
| AX / AC / N | WiFi 6 (AX), WiFi 5 (AC), WiFi 4 (N) — বেতার মান প্রজন্ম। |
| 2.4 GHz / 5 GHz / 6 GHz | বেতার সংকেতের কম্পাঙ্ক — 2.4 GHz দীর্ঘ পরিসর কিন্তু ধীর, 5/6 GHz দ্রুত কিন্তু ছোট পরিসর। |
| MIMO | Multiple-Input Multiple-Output — একাধিক অ্যান্টেনা দিয়ে একসাথে ডেটা পাঠানো ও গ্রহণ। |
| MU-MIMO | Multi-User MIMO — একসাথে একাধিক ডিভাইসের সাথে যোগাযোগ। |
OpenWrt ইকোসিস্টেম
| পরিভাষা | ব্যাখ্যা |
|---|---|
| OpenWrt | ওপেন-সোর্স রাউটার ফার্মওয়্যার, Linux-ভিত্তিক। রাউটারকে সম্পূর্ণভাবে নিয়ন্ত্রণ দেয়। |
| ImmortalWrt | OpenWrt-এর একটি ফর্ক (শাখা), চীনা সম্প্রদায় দ্বারা রক্ষণাবেক্ষণকৃত, কিছু অতিরিক্ত প্যাকেজ ও ডিফল্ট সেটিংস সহ। |
| LuCI | OpenWrt-এর ওয়েব-ভিত্তিক কনফিগারেশন ইন্টারফেস। ব্রাউজারে http://<router-ip> লিখলে যা খোলে। |
| UCI | Unified Configuration Interface — OpenWrt-এর সব কনফিগার এক জায়গায় রাখার ব্যবস্থা। /etc/config/ ডিরেক্টরিতে থাকে। |
| opkg | OpenWrt 24.10 এবং তার পুরানো সংস্করণে ব্যবহৃত প্যাকেজ ম্যানেজার। .ipk ফাইল ইনস্টল করে। |
| apk | OpenWrt 25.12+ এবং Alpine Linux-এ ব্যবহৃত নতুন প্যাকেজ ম্যানেজার। .apk ফাইল ইনস্টল করে। |
| procd | OpenWrt-এর সেবা ব্যবস্থাপক — কোন সেবা কখন চালু হবে তা নিয়ন্ত্রণ করে। |
| rpcd | LuCI-এর পিছনে থাকা সেবা যা ওয়েব ইন্টারফেসের অনুরোধ প্রক্রিয়া করে। |
| uhttpd | LuCI ওয়েব পেজ পরিবেশনকারী হালকা HTTP সার্ভার। |
| Batman-adv | Better Approach To Mobile Adhoc Networking — Advanced — মেশ রাউটিং প্রোটোকল। কোন ডেটা কোন পথে যাবে তা নির্ধারণ করে। |
| batctl | Batman-adv নিয়ন্ত্রণ ও নির্ণয়ের কমান্ড-লাইন টুল। |
| bat0 | Batman-adv-এর ভার্চুয়াল নেটওয়ার্ক ইন্টারফেস, যার মাধ্যমে মেশ ট্র্যাফিক প্রবাহিত হয়। |
| hardif | Hardware Interface — Batman-adv যে বাস্তব ইন্টারফেস ব্যবহার করে (যেমন eth0, phy0-mesh0)। |
| wpad | Wireless Protected Access Daemon — OpenWrt-এ WiFi পরিচালনার সেবা। বিভিন্ন ভেরিয়েন্ট আছে (openssl/wolfssl/mbedtls)। |
| wpad-mesh | wpad-এর বিশেষ সংস্করণ যা 802.11s মেশ সমর্থন করে। |
| kmod | Kernel Module — কার্নেলে লোডযোগ্য অতিরিক্ত কোড (যেমন kmod-batman-adv)। |
| dawn | একটি অ্যাক্সেস পয়েন্ট স্টিয়ারিং ডেমন — ক্লায়েন্টকে সেরা AP-তে পরিচালনা করে। |
| usteer | ইউজার-স্পেস স্টিয়ারার — dawn-এর বিকল্প, হালকা ও দ্রুত। |
শেল কমান্ড
| কমান্ড | ব্যাখ্যা |
|---|---|
uci set |
UCI কনফিগারেশনে একটি মান সেট করে। |
uci get |
UCI কনফিগারেশন থেকে একটি মান পড়ে। |
uci commit |
পরিবর্তিত মান স্থায়ীভাবে সংরক্ষণ করে। |
uci show |
বর্তমান UCI কনফিগারেশন প্রদর্শন করে। |
opkg install |
opkg দিয়ে একটি প্যাকেজ ইনস্টল করে। |
opkg update |
প্যাকেজ তালিকা হালনাগাদ করে। |
apk add |
apk দিয়ে একটি প্যাকেজ ইনস্টল করে। |
apk del |
apk দিয়ে একটি প্যাকেজ সরায়। |
batctl n |
Batman-adv প্রতিবেশী তালিকা দেখায়। |
batctl if |
Batman-adv ইন্টারফেস তালিকা দেখায়। |
batctl o |
Batman-adv originator টেবিল দেখায় (সম্পূর্ণ মেশ টপোলজি)। |
batctl ping |
Batman-adv-এর লেয়ারে পিং পাঠায়। |
iw dev |
বেতার ইন্টারফেস তালিকা দেখায়। |
wget |
ফাইল ডাউনলোড করে। |
scp |
নিরাপদ ফাইল কপি (SSH-এর উপর)। |
ssh |
নিরাপদ রিমোট শেল সংযোগ। |
reboot |
রাউটার পুনরায় চালু করে। |
logread |
সিস্টেম লগ পড়ে। |
ip link |
নেটওয়ার্ক ইন্টারফেস অবস্থা দেখায়। |
ifup / ifdown |
ইন্টারফেস চালু / বন্ধ করে। |
chmod +x |
ফাইলকে এক্সিকিউটেবল (চালানোর যোগ্য) করে। |
একক ও পরিমাপ
| একক | ব্যাখ্যা |
|---|---|
| bit | ডিজিটাল তথ্যের ক্ষুদ্রতম একক (০ বা ১)। |
| Byte | ৮ বিট। B (বড় হাতের) দিয়ে প্রকাশ করা হয়। |
| Kbit/s | কিলোবিট প্রতি সেকেন্ড — ডেটা স্থানান্তরের গতি। |
| Mbit | মেগাবিট = ১০০০ কিলোবিট। |
| Gbit | গিগাবিট = ১০০০ মেগাবিট। |
| Mbps | মেগাবিট প্রতি সেকেন্ড = ১০০০ Kbit/s। |
| MHz / GHz | মেগাহার্টজ / গিগাহার্টজ — রেডিও কম্পাঙ্ক। ১ GHz = ১০০০ MHz। |
| ms | মিলিসেকেন্ড = সেকেন্ডের ১/১০০০। লেটেন্সি পরিমাপে ব্যবহৃত। |
ইন্টারফেস পদবি
| পদবি | ব্যাখ্যা |
|---|---|
| eth0, eth1 | ইথারনেট ইন্টারফেস (তারযুক্ত)। কিছু রাউটারে CPU-এর অভ্যন্তরীণ পোর্ট। |
| lan1, lan2, lan3 | LAN ফিজিক্যাল পোর্ট (তারযুক্ত)। সাধারণত যেগুলিতে আপনি ডিভাইস সংযুক্ত করেন। |
| wan | WAN পোর্ট — ইন্টারনেট/ISP-এর সাথে সংযোগের জন্য। |
| phy0-mesh0 | মেশ ভার্চুয়াল বেতার ইন্টারফেস — 802.11s ট্র্যাফিক বহন করে। |
| phy0, phy1 | বেতার রেডিও হার্ডওয়্যার সনাক্তকারী। |
| radio0, radio1 | OpenWrt-এ রেডিওর নাম। |
| bat0 | Batman-adv-এর ভার্চুয়াল মেশ ইন্টারফেস। |
| br-lan | LAN ব্রিজ ইন্টারফেস (সেতুবন্ধন)— একাধিক পোর্টকে একটি নেটওয়ার্কে একত্রিত করে। |
| br-guest | অতিথি নেটওয়ার্কের ব্রিজ। |
| wlan0, wlan1 | বেতার ক্লায়েন্ট/AP ইন্টারফেস। |
UI ও সেটআপ পদবি
| পদবি | ব্যাখ্যা |
|---|---|
| Server | মেশের মূল রাউটার যা ইন্টারনেট প্রদান করে। ইন্টারনেট সংযোগ থাকে। |
| Client | এক্সটেন্ডার রাউটার — মেশের মাধ্যমে ইন্টারনেট গ্রহণ করে। |
| Node | শুধুমাত্র রিলে — কেবল ট্র্যাফিক এগিয়ে পাঠায়, নিজে ইন্টারনেট গ্রহণ বা প্রদান করে না। |
| Dumb AP | "বোকা" অ্যাক্সেস পয়েন্ট — DHCP ও ফায়ারওয়াল নিষ্ক্রিয় থাকে, কেবল WiFi সম্প্রচার করে। |
| Mesh ID | মেশ নেটওয়ার্কের নাম — সমস্ত নোডে অবশ্যই একই হতে হবে। |
| Mobility Domain | ৪-অক্ষরের হেক্সাডেসিমাল সনাক্তকারী যা 802.11r দ্রুত রোমিংয়ে ব্যবহৃত হয়। |
| Save & Apply | পরিবর্তন সংরক্ষণ ও প্রয়োগ করার বোতাম। |
| Reapply EasyMesh Settings | বর্তমান সেটিংস পুনরায় মেশে প্রয়োগ করার বোতাম। |
| Preset | পূর্বনির্ধারিত সেটিংস — এক ক্লিকে সাধারণ কনফিগারেশন। |
| Rollback | পরিবর্তনের পর সমস্যা হলে পূর্বের অবস্থায় ফিরে যাওয়া। |
| Watchdog | নির্দিষ্ট সময়ে নির্দিষ্ট কাজ সম্পাদনকারী নজরদারি প্রক্রিয়া। |
| WiFi | বেতার (তারহীন-সংযোগ) । |
প্ল্যাটফর্ম
| পরিভাষা | ব্যাখ্যা |
|---|---|
| Branch | কোডের একটি সমান্তরাল সংস্করণ। |
| Commit | কোড পরিবর্তনের একটি সংরক্ষিত স্ন্যাপশট। |
| Fork | অন্য কারও প্রকল্পের নিজস্ব অনুলিপি, স্বাধীনভাবে পরিবর্তনযোগ্য। |
| Git | ভার্সন নিয়ন্ত্রণ ব্যবস্থা — কোডের পরিবর্তন ট্র্যাক করে। |
| GitHub | Git রিপোজিটরি হোস্টিং প্ল্যাটফর্ম। কোড শেয়ার ও সহযোগিতার জন্য। |
| Repository or Repo | কোড ও ফাইলের সংগ্রহস্থল। |
| Release | একটি নির্দিষ্ট সংস্করণ যা ব্যবহারকারীদের জন্য প্রকাশ করা হয়। |
| Source code | উৎস কোড বা প্রোগ্রামিং নির্দেশনাবলী — সহজভাবে ক্রমানুদেশন বা নির্দিষ্ট ক্রমে নির্দেশ দেওয়া। |
| Tag | একটি কমিটের নামসহ চিহ্ন যেমন 2.4.1-r1। |
| Linux | ওপেন-সোর্স অপারেটিং সিস্টেম কার্নেল — OpenWrt ও ImmortalWrt এর ভিত্তি। |
লাইসেন্স
GPL-2.0 (মূল প্রকল্প থেকে উত্তরাধিকারসূত্রে প্রাপ্ত)






