আমি কিছুটা গবেষণা করেছি।
প্রথম জিনিসটি আমি শিখেছি হ'ল ম্যাক ঠিকানা ব্যতীত অন্যান্য মানদণ্ডের ভিত্তিতে ডিএইচসিপি ইজারা নির্ধারণ করা সম্ভব।
ডিএইচসিপি FAQ থেকে :
একটি ক্লায়েন্ট আইডি কি?
ডিএইচসিপি প্রোটোকলের উদ্দেশ্যে ক্লায়েন্ট আইডি হিসাবে অভিহিত যাকে ক্লায়েন্ট কম্পিউটার সনাক্ত করতে প্রোটোকল দ্বারা যা ব্যবহৃত হয় তা। ডিফল্টরূপে, ডিএইচসিপি বাস্তবায়নগুলি সাধারণত এই উদ্দেশ্যে ক্লায়েন্টের ম্যাক ঠিকানা নিয়োগ করে, তবে ডিএইচসিপি প্রোটোকল অন্যান্য বিকল্পের অনুমতি দেয়। কিছু ডিএইচসিপি বাস্তবায়নের আপনার পছন্দসই ক্লায়েন্ট আইডি নির্দিষ্ট করার জন্য একটি সেটআপ বিকল্প রয়েছে। ম্যাক ঠিকানার একটি বিকল্প হ'ল আপনার পছন্দের চরিত্রের স্ট্রিং। যাই হোক না কেন, ডিএইচসিপি কাজ করার জন্য, আপনাকে অবশ্যই নিশ্চিত থাকতে হবে যে অন্য কোনও ক্লায়েন্ট আপনার চয়ন করা ক্লায়েন্ট আইডি ব্যবহার করছে না, এবং আপনাকে অবশ্যই ডিএইচসিপি সার্ভার গ্রহণ করবে তা নিশ্চিত হতে হবে।
তারপরে, যদিও এটি ওপেনডব্লিউআরটিতে স্পষ্টতই লুসি ওয়েব ইন্টারফেস দ্বারা সমর্থিত নয়, ডিএনএসমাস্ক নিজেই ক্লায়েন্ট_আইডি এবং একাধিক ম্যাক ঠিকানা সমর্থন করে (কিছু সতর্কতার সাথে)।
Dnsmasq ম্যান পৃষ্ঠা থেকে :
-জি, - ডিএইচসিপি-হোস্ট = [হাওয়াদ্দর] [, আইডি: ক্লায়েন্ট_আইডি | *] [, সেট: ট্যাগ] [, আইপ্যাড্ডার] [, হোস্টনেম] [, ইজারা_টাইম] [, উপেক্ষা করুন] ডিএইচসিপি সার্ভারের জন্য প্রতি হোস্ট প্যারামিটার নির্দিষ্ট করুন । এটি একটি নির্দিষ্ট হার্ডওয়্যার ঠিকানা সহ একটি মেশিনকে সর্বদা একই হোস্টনাম, আইপি ঠিকানা এবং ইজারা সময় বরাদ্দ করতে দেয়। এর মতো নির্দিষ্ট হোস্টনামটি মেশিনে ডিএইচসিপি ক্লায়েন্ট দ্বারা সরবরাহিত যে কোনওটিকে ওভাররাইড করে। এটি হার্ডওয়্যার ঠিকানাটি বাদ দিতে এবং হোস্টনামটি অন্তর্ভুক্ত করার অনুমতিযোগ্য, সেক্ষেত্রে আইপি ঠিকানা এবং ইজারা সময় এই নামটি দাবি করে যে কোনও মেশিনে প্রযোজ্য হবে। উদাহরণস্বরূপ --dhcp-host = 00: 20: e0: 3b: 13: af, wap, অসীম dnsmasq কে হার্ডওয়্যার অ্যাড্রেস সহ মেশিনটি দিতে বলে: 00: 20: e0: 3b: 13: AF নাম ওয়াপ এবং একটি অসীম ডিএইচসিপি ইজারা। --dhcp-होস্ট = ল্যাপ, 192.168.0.199 dnsmasq কে সর্বদা মেশিনের ল্যাপের আইপি ঠিকানা 192.168.0.199 বরাদ্দ করতে বলে।
(...)
'আইডি:' দিয়ে উপসর্গ করে হোস্টগুলি সনাক্ত করতে হার্ডওয়্যার অ্যাড্রেসগুলির চেয়ে ক্লায়েন্ট সনাক্তকারী ব্যবহার করার অনুমতি রয়েছে। সুতরাং: --dhcp-host = id: 01: 02: 03: 04, ..... ক্লায়েন্ট শনাক্তকারী 01: 02: 03: 04 এর সাথে হোস্টকে বোঝায়। এটি ক্লায়েন্ট আইডি যেমন পাঠ্য হিসাবে নির্দিষ্ট করার অনুমতি দেওয়া হয়: --dhcp-host = id: clientidastext, .....
(...)
একটি বিশেষ কেস হিসাবে, একাধিক হার্ডওয়্যার ঠিকানা অন্তর্ভুক্ত করা সম্ভব। উদাহরণস্বরূপ: - ডিএইচসিপি-হোস্ট = 11: 22: 33: 44: 55: 66,12: 34: 56: 78: 90: 12,192.168.0.2 এটি কোনও আইপি অ্যাড্রেসকে একাধিক হার্ডওয়্যার অ্যাড্রেসের সাথে যুক্ত করার অনুমতি দেয় এবং ডিএনএসএমএসকে অনুমতি দেয় যখন অন্য একটি ইজারা চাইবে তখন একটি হার্ডওয়্যার অ্যাড্রেসের একটিতে ডিএইচসিপি ইজারা পরিত্যাগ করতে। সাবধান থাকুন যে এটি করা একটি বিপজ্জনক কাজ, এটি কেবলমাত্র নির্ভরযোগ্যভাবে কাজ করবে যদি কেবলমাত্র হার্ডওয়্যার ঠিকানাগুলির মধ্যে একটিতে যে কোনও সময় সক্রিয় থাকে এবং এটি কার্যকর করার জন্য ডিএনএসমস্কের কোনও উপায় না থাকে। উদাহরণস্বরূপ, ল্যাপটপে স্থিতিশীল আইপি ঠিকানা বরাদ্দ করা কার্যকর যা উভয় তারযুক্ত এবং ওয়্যারলেস ইন্টারফেস রয়েছে।
আমি মাল্টি-ম্যাক সমাধানটি বেছে নিয়েছি (কারণ আমি ক্লায়েন্টের পাশে ক্লায়েন্ট আইডি কীভাবে নির্দিষ্ট করতে পারি তা জানার চেষ্টা করিনি, যা প্রতিটি পৃথক ক্লায়েন্টের জন্য করা উচিত এবং মাল্টি-ম্যাক বিকল্পটি হ'ল) ঘরের সমস্ত পোর্টেবলের জন্য একটি সমাধান)
আমি লুচি ইন্টারফেসটি ছড়িয়ে দিয়েছি এবং নীচের লাইনে সরাসরি /etc/dnsmasq.conf এ যুক্ত করেছি:
DHCP-hostsfile = জন্য / etc / dnsmasq-dhcphosts.conf
এবং /etc/dnsmasq-dhcphosts.conf এ নিম্নলিখিত বিন্যাসের লাইন রয়েছে:
mac1, mac2, আইপি
(পরের আপডেটে এটির ওভাররাইট হওয়া যাতে না ঘটে সেজন্য আমি এই কনফিগারটিকে একটি পৃথক ফাইলে রাখি))
ঠিকভাবে কাজ করে.