আমি জানি যে আমরা আইই (অ্যাক্টিভএক্স অবজেক্ট) এর মাধ্যমে কোনও ব্যবহারকারীর ম্যাক ঠিকানা পেতে পারি।
জাভাস্ক্রিপ্ট ব্যবহার করে কোনও ব্যবহারকারীর ম্যাক ঠিকানা পাওয়ার কোনও উপায় আছে?
আমি জানি যে আমরা আইই (অ্যাক্টিভএক্স অবজেক্ট) এর মাধ্যমে কোনও ব্যবহারকারীর ম্যাক ঠিকানা পেতে পারি।
জাভাস্ক্রিপ্ট ব্যবহার করে কোনও ব্যবহারকারীর ম্যাক ঠিকানা পাওয়ার কোনও উপায় আছে?
উত্তর:
আমি পূর্ববর্তী সমস্ত উত্তরগুলির সাথে একমত হয়েছি যে আপনি যদি জাভাস্ক্রিপ্ট থেকে সরাসরি এটি করতে সক্ষম হন তবে এটি একটি গোপনীয়তা / সুরক্ষা দুর্বলতা হবে। আমি ভাবতে পারি এমন দুটি জিনিস রয়েছে:
দ্রুত এবং সহজ উত্তরটি হ'ল না is
জাভাস্ক্রিপ্ট বেশ উচ্চ স্তরের ভাষা এবং এই ধরণের তথ্যের অ্যাক্সেস নেই।
না আপনি জাভাস্ক্রিপ্টে ম্যাক ঠিকানা পেতে পারেন না, মূলত কারণ ম্যাক ঠিকানাটি চলমান কম্পিউটারকে স্বতন্ত্রভাবে সনাক্ত করে তাই এটি একটি সুরক্ষিত দুর্বলতা হতে পারে।
এখন আপনার যদি প্রয়োজন সমস্ত একটি অনন্য শনাক্তকারী হয় তবে আমি আপনাকে কিছু ক্রিপ্টোগ্রাফিক অ্যালগরিদম ব্যবহার করে নিজেকে তৈরি করতে এবং এটি একটি কুকিতে সংরক্ষণ করার পরামর্শ দিই।
আপনার যদি কম্পিউটারের ম্যাক ঠিকানাটি সত্যই জানতে এবং আপনার অভ্যন্তরীণ অ্যাপ্লিকেশনগুলির জন্য বিকাশ করা দরকার, তবে আমি আপনাকে এটির জন্য একটি বাহ্যিক উপাদান ব্যবহার করার পরামর্শ দিই: আইআইয়ের জন্য অ্যাক্টিভেক্স, ফায়ারফক্সের জন্য এক্সপিকম (এক্সটেনশন হিসাবে ইনস্টল))
এটি যদি কোনও ইন্ট্রানেট অ্যাপ্লিকেশনের জন্য হয় এবং সমস্ত ক্লায়েন্টরা ডিএইচসিপি ব্যবহার করে থাকে তবে আপনি প্রদত্ত আইপি ঠিকানার জন্য ম্যাক ঠিকানার জন্য ডিএইচসিপি সার্ভারটি জিজ্ঞাসা করতে পারেন।
আমি একই সমস্যাটি খুঁজছিলাম এবং নীচের কোডে হোঁচট খেয়েছি।
ক্লায়েন্ট ম্যাকের ঠিকানা (ওয়েব) কীভাবে পাবেন:
ক্লায়েন্টের MAC ঠিকানাটি পেতে কেবলমাত্র আমরা জাভাস্ক্রিপ্ট এবং মাইক্রোসফ্টের অ্যাক্টিভ এক্স নিয়ন্ত্রণের উপর নির্ভর করতে পারি I এটি কেবলমাত্র আইইতে কাজ করে যদি অ্যাক্টিভ এক্স আইই সক্ষম করে। অ্যাক্টিভএক্সবজেক্ট ফায়ারফক্সের সাথে উপলভ্য না হওয়ায় এটি ফায়ারফক্সের সাথে কাজ করছে না এবং আইইতে কাজ করছে।
এই স্ক্রিপ্টটি কেবল আই.ই.
function showMacAddress() {
var obj = new ActiveXObject("WbemScripting.SWbemLocator");
var s = obj.ConnectServer(".");
var properties = s.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration");
var e = new Enumerator(properties);
var output;
output = '<table border="0" cellPadding="5px" cellSpacing="1px" bgColor="#CCCCCC">';
output = output + '<tr bgColor="#EAEAEA"><td>Caption</td><td>MACAddress</td></tr>';
while (!e.atEnd()) {
e.moveNext();
var p = e.item();
if (!p) continue;
output = output + '<tr bgColor="#FFFFFF">';
output = output + '<td>' + p.Caption; +'</td>';
output = output + '<td>' + p.MACAddress + '</td>';
output = output + '</tr>';
}
output = output + '</table>';
document.getElementById("box").innerHTML = output;
}
showMacAddress();
<div id='box'></div>