2010-07-22 10 views
23

क्या कोई मुझे HTTP अनुरोध से उपयोगकर्ता के मैक पते को चुनने पर कुछ पॉइंटर्स दे सकता है?मैं HTTP अनुरोध से मैक पता कैसे प्राप्त कर सकता हूं?

उपयोगकर्ताओं से मेरी नेटवर्क से बाहर हो जाएगा।

+0

हाय, क्षमा करें, यह भूलना भूल गया कि यह एक एएसपीनेट साइट है। चीयर्स –

+0

संभावित डुप्लिकेट [एएसपी.नेट वेबसाइट उपयोगकर्ता का मैक प्राप्त करें]] (http://stackoverflow.com/questions/1342738/get-the-mac-of-asp-net-website-user) – Oded

+0

- 1 रिचर्ड से पिछले प्रश्न में पहले ही उत्तर दिया गया है (http://stackoverflow.com/questions/3308258/iis7-restrict-website-access-by-mac-address)। –

उत्तर

37

यह आपके नेटवर्क सेटअप पर निर्भर करता है। लेकिन शायद नहीं।

यहां ईथरनेट और आईपी पर एक छोटा रिफ्रेशर है। मैक पता नेटवर्क कार्ड का एक अनूठा पता है। इसका उपयोग यह पता लगाने के लिए किया जाता है कि नेटवर्क सेगमेंट पर कौन सा उपयोगकर्ता एक पैकेट है। आप एक आईपी पते के लिए एक मैक पता पाने के लिए एआरपी का उपयोग कर सकते हैं। लेकिन यह केवल तभी काम करता है जब आप एक ही नेटवर्क सेगमेंट पर हों।

तो सवाल यह है कि नेटवर्क सेगमेंट क्या है? यह आपके द्वारा उपयोग की जाने वाली तकनीक पर निर्भर करता है, लेकिन यहां सामान्य मामले हैं। एक संपूर्ण वायरलेस नेटवर्क एक नेटवर्क सेगमेंट है। नेटवर्क पर प्रत्येक उपयोगकर्ता से दूसरे उपयोगकर्ता को ईथरनेट के माध्यम से बात कर सकता है। तार आधारित नेटवर्क पर, यह हार्डवेयर पर निर्भर करता है। यदि आपके पास पुराना बीएनसी या हब है तो आपके पास सभी उपयोगों के साथ एक नेटवर्क सेगमेंट है। फिर प्रत्येक उपयोगकर्ता किसी अन्य से बात कर सकता है। नेटवर्क में स्विच के साथ एक नेटवर्क सेगमेंट केवल केबल है जो आपको स्विच से जोड़ता है। यहां आप केवल ईथरनेट के माध्यम से स्विच से बात कर सकते हैं। हर दूसरे उपयोगकर्ता को कम से कम आईपी की आवश्यकता होती है।

बहुत बुरा है कि HTTP, टीसीपी/आईपी पर बनाता है जिसके साथ ज्यादातर स्थितियों, आप 99.99% अपने उपयोगकर्ता के रूप में एक ही नेटवर्क सेगमेंट में कभी नहीं कर रहे हैं। आप एआरपी का उपयोग कर सकते हैं, लेकिन केवल पहली हॉप का मैक पता ही प्राप्त होगा। यह आपके हार्डवेयर के आधार पर बेहतर हो जाता है, आप ईथरनेट पर आधारित आईपी नेटवर्क पर भी नहीं हो सकते हैं; उदाहरण के लिए एटीएम ...

+6

हाय सीन, स्थिति को भ्रमित करने के लिए धन्यवाद! लॉल, कोई गंभीरता से, अच्छी जानकारीपूर्ण पोस्ट, चीयर्स –

+0

हू? Wha? जब तक आप ऐसी तकनीक का उपयोग नहीं करते हैं जिसे उपयोगकर्ताओं की मूल गोपनीयता का उल्लंघन करने पर विचार किया जा सकता है, जैसे कि उपयोगकर्ता के सिस्टम पर प्लगइन/सक्रिय-एक्स/टोजन स्थापित करना उत्तर है: ** नहीं, तकनीकी रूप से असंभव **। मैंने केवल यह बताने की कोशिश की कि क्यों ... शायद आप या कोई और सीख और समझ सके ... – rioki

+1

मुझे लगता है कि यह पूरी तरह से सही नहीं है: स्विच के बंदरगाह एक ही सेगमेंट नहीं हैं, हालांकि कोई अलग स्विच के बीच ईथरनेट के माध्यम से बात कर सकता है बंदरगाहों। इसके लिए एक स्विच पर एक एआरपी कैश है। – EFraim

0

यह संभव है जब तक आप एक ActiveX घटक है, जो मामले में यह केवल IE पर काम करेंगे बनाने का इरादा नहीं है।

+0

एक सक्रिय एक्स घटक सवाल से बाहर नहीं होगा, लेकिन क्या मैक पता उपयोग योग्य होगा? –

+0

क्या के लिए उपयोग योग्य? – nos

+0

डेटाबेस में आयोजित मूल्य बनाम मान्य? –

1

मुझे नहीं लगता कि ASP.NET में यह करने के लिए एक रास्ता है है।
मैक एक टीसीपी पैकेट की संपत्ति है, और HTTP स्तर पर कोई पैकेट या मैक नहीं हैं (उदाहरण के लिए, एक ही HTTP अनुरोध कई टीसीपी पैकेटों से इकट्ठा किया जा सकता है)।

आप एक पैकेट स्निफर (WireShark की तरह) का उपयोग कर टीसीपी पैकेट पर कब्जा करने की कोशिश कर सकते हैं और फिर उन्हें विश्लेषण MACs निकालें और उन्हें HTTP अनुरोध को मैप करने के।

वैसे भी, आप किसी भी उपयोगी डेटा जब तक कि उपयोगकर्ता अपने सर्वर के रूप में एक ही नेटवर्क सेगमेंट में है नहीं मिलेगा।

यूपीडी। जैसा कि टिप्पणियों में बताया गया था, मैंने नेटवर्क परतों को मिश्रित किया। मैक पता Ethernet frame की एक संपत्ति है, न कि एक टीसीपी पैकेट।
निष्कर्ष अभी भी सही है, हालांकि।

+4

मैक पता एक टीसीपी पैकेट में है? कब से? मैक पते बहुत कम परिवहन परत से हैं और आईपी पैकेट हेडर में भी नहीं। –

+0

हां, मैक पते बहुत कम स्तर –

+0

क्या उनका मतलब सामान्य रूप से एक पैकेट था। टीसीपी के मामले में आपके पास पैकेट नहीं हैं, इसकी एक धारा है। आईपी ​​के मामले में आपके पास फ्रेम हैं ... और आम तौर पर आप इनमें से किसी भी उपयोगकर्ता मोड कोड में नहीं पहुंच सकते हैं। – rioki

संबंधित मुद्दे

 संबंधित मुद्दे