डीएचसीपी द्वारा सौंपा गया आईपी एड्रेस उर्फ


17

मैं eth0 पर कई उपनाम बनाना चाहूंगा, लेकिन स्थिर IP के सेट होने के बजाय DHCP द्वारा निर्दिष्ट पते हैं। क्या यह भी संभव है?

सभी उदाहरण मैंने देखे हैं कि कमांड का उपयोग करके एक स्थिर IP असाइन करें:

ifconfig eth0:0 192.168.1.11 up

जवाबों:


17

यह तभी संभव है जब दो डीएचसीपी ग्राहक अलग-अलग मैक पते का उपयोग करें। जिसका अर्थ है कि वे दोनों एक ही भौतिक नेटवर्क इंटरफेस पर नहीं चल सकते, जिसमें एक ही मैक एड्रेस है।

समाधान लिनक्स का वर्चुअल मैक-वीएलएएन नेटवर्क इंटरफेस है। मैक-वीएलएएन इंटरफेस एक भौतिक इंटरफ़ेस द्वारा समर्थित वर्चुअल नेटवर्क इंटरफेस हैं, लेकिन एक अलग मैक पते के साथ उपयोग करते हुए, जो मैक-वीएलएएन डिवाइस बनाने पर यादृच्छिक रूप से उत्पन्न होता है।

एक बार जब आप एक भौतिक इंटरफ़ेस का उपयोग करके मैक-वीएलएएन इंटरफ़ेस बनाते हैं, तो आप इसे उसी तरह से उपयोग करते हैं जैसे आप भौतिक रूप से करते हैं। आपके विशेष मामले में, आप भौतिक इंटरफ़ेस पर एक डीएचसीपी ग्राहक चला सकते हैं, और मैक-वीएलएएन डिवाइस पर एक और। प्रत्येक डिवाइस (भौतिक और मैक-वीएलएएन) का अपना आईपी पता हो सकता है।

दौड़ने macvlan0से एक नया MAC-VLAN डिवाइस बनाया जा सकता हैeth0

ip link add dev macvlan0 link eth0 type macvlan

इसे चलाकर नष्ट किया जा सकता है

ip link delete dev macvlan0

एनसीडी, मेरे नेटवर्क कॉन्फ़िगरेशन सॉफ़्टवेयर ( http://code.google.com/p/badvpn/wiki/NCD ) का उपयोग करते हुए, निम्नलिखित एनसीडी प्रोग्राम दो मैक-वीएलएएन डिवाइस eth0( macvlan0और macvlan1) से बनाएगा , उनमें से प्रत्येक पर डीएचसीपी चलाएगा, और उन्हें प्राप्त आईपी पते निर्दिष्ट करें। आप आसानी से अन्य चीजें जोड़ सकते हैं जैसे ऐड रूट और डीएनएस सर्वर; यदि आप रुचि रखते हैं तो एनसीडी पृष्ठ पढ़ें।

process lan {
    # Set device.
    var("eth0") dev;

    # Wait for device to appear, set it up, and wait for cable to be plugged in.
    net.backend.waitdevice(dev);
    net.up(dev);
    net.backend.waitlink(dev);

    # Start DHCP's.
    provide("lan-link");
}

process lan_dhcp1 {
    # Wait for link.
    depend("lan-link") linkdep;

    # Choose virtual device name.
    var("macvlan0") vdev;

    # Create virtual MAC-VLAN device.
    list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
    list("/sbin/ip", "link", "delete", "dev", vdev) undo;
    run(do, undo);

    # Set virtual device up.
    net.up(vdev);

    # DHCP configuration on virtual device.
    net.ipv4.dhcp(vdev) dhcp;
    ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
    ifnot(test_local);

    println(vdev, ": got address ", dhcp.addr);

    # Assign address to virtual device.
    net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}

# This differs from above only in interface name (macvlan1).
process lan_dhcp2 {
    # Wait for link.
    depend("lan-link") linkdep;

    # Choose virtual device name.
    var("macvlan1") vdev;

    # Create virtual MAC-VLAN device.
    list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
    list("/sbin/ip", "link", "delete", "dev", vdev) undo;
    run(do, undo);

    # Set virtual device up.
    net.up(vdev);

    # DHCP configuration on virtual device.
    net.ipv4.dhcp(vdev) dhcp;
    ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
    ifnot(test_local);

    println(vdev, ": got address ", dhcp.addr);

    # Assign address to virtual device.
    net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}

आप अपने स्वयं के डीएचसीपी-प्राप्त आईपी पते के साथ macvlan0और macvlan1प्रत्येक को समाप्त करेंगे , और eth0जो ऊपर है, लेकिन एक आईपी पता नहीं है। वैकल्पिक रूप से, आप केवल एक मैक-वीएलएएन इंटरफ़ेस बना सकते हैं, और eth0स्वयं पर एक डीएचसीपी उदाहरण चला सकते हैं ।


1
मृतकों से इसे उठाने के लिए माफी, लेकिन यह कथन "यह केवल तभी संभव है जब दो डीएचसीपी ग्राहक अलग-अलग मैक पते का उपयोग करते हैं" डीएचसीपी प्रोटोकॉल के दृष्टिकोण से गलत है। यहां तक ​​कि 2011 में डीएचसीपी अभी भी एक क्लाइंट आईडी पर आधारित था, जिसे डिवाइस के मैक पते से मेल नहीं खाता है। (RFC 2131, '97 में प्रकाशित)
आंद्रे कोस्तूर

0

स्थिर या डीएचसीपी निर्दिष्ट आईपी पते का उपयोग करना आपके कंप्यूटर के लिए एक विकल्प है।

यहाँ एक अच्छा ट्यूटोरियल है

इसमें बहुत अधिक विवरण हैं, और यदि आप डीएचसीपी असाइन किए गए पते के बजाय स्थिर का उपयोग करते हैं, तो आप उन समस्याओं से बचने में मदद कर सकते हैं, जैसे कि डीएनएस सर्वर और गेटवे से कैसे जुड़ें।


0

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

कुछ डीएचसीपी ग्राहक एक पते की आपूर्ति होने पर स्थिर पते को असाइन करने की अनुमति देते हैं। मुझे विश्वास नहीं है कि विंडोज आपको एक से अधिक जोड़ने की अनुमति देगा।

सुनिश्चित करें कि आपके सभी स्थिर पते DCHP पता सीमा के बाहर हैं।


-1

मैं निश्चित रूप से नहीं जानता, लेकिन मेरा मानना ​​है कि जब तक आपके पास एक खुला स्रोत राउटर नहीं है, तब आपको स्थिर आईपी का उपयोग करना होगा जो आप चाहते हैं। IMO जब तक आपके पास वास्तव में कोई अच्छा कारण नहीं है कि आप ऐसा क्यों करना चाहते हैं, जो आप चाहते हैं कि मैं सिर्फ witrh DHCP चिपका दूं। आपके सवाल से मुझे लगता है कि आप क्या चाहते हैं, जब तक कि कोई यह नहीं जानता कि यह कैसे करना है तो मैं इंतजार करूंगा और डीएचसीपी के साथ रहूंगा जब तक कि कोई बेहतर जवाब नहीं देता। यद्यपि यदि आपके पास 1-2 पीसी से अधिक नहीं है और नेटवर्क (प्रिंटर मीडिया एक्सटेंडर आदि) पर कुछ भी नहीं है, तो मैं स्टेटिक आईपी का उपयोग आईडीके के रूप में नहीं करूंगा या अगर इन वस्तुओं को स्थिर आईपी के साथ सेट करना संभव है। हो सकता है कि यदि आप एक ओपन सोर्स राउटर प्राप्त करते हैं, तो आप क्या कर सकते हैं और आप इसे बनाने में सक्षम हो सकते हैं, जैसे आप अपनी मशीन के लिए एक स्थैतिक आईपी का उपयोग करते हैं, मैक एड्रेस का उपयोग करके इसे पहचानने और इसके आईपी सेट करने के तरीके के रूप में। बाकी नेटवर्क डीएचसीपी को प्रभावित कर सकता है। IDK जैसा कि मैंने कभी नहीं किया है मैं सिर्फ विचारों को निकाल रहा हूं ताकि आपके लिए जवाब न होने के लिए क्षमा करें। हालांकि ब्रायन द्वारा प्रस्तुत लिंक DHCP ans Static IP मुद्दों पर एक अच्छे संसाधन की तरह दिखता है। इसके अलावा ओपन सोर्स राउटर के लिए मेरा मानना ​​है कि नेटगियर और डी-लिंक उन्हें सुनिश्चित करते हैं कि मैं अधिक निश्चित हूं, लेकिन आईएमओ ये दो ब्रांड हैं जिन्हें मैं चुनूंगा। मैं व्यक्तिगत रूप से Linksys को पसंद नहीं करता क्योंकि वे उपन्यास द्वारा खरीदे गए थे (आपको लगता है कि वे बेहतर होंगे लेकिन IMO नहीं हैं। व्यक्तिगत रूप से मैं D-लिंक पसंद करता हूं क्योंकि वे सबसे अधिक कस्टमाइज़ किए गए राउटर हैं जो मैंने पाया है।) इसके अलावा ओपन सोर्स राउटर के लिए मेरा मानना ​​है कि नेटगियर और डी-लिंक उन्हें सुनिश्चित करते हैं कि मैं अधिक निश्चित हूं, लेकिन आईएमओ ये दो ब्रांड हैं जिन्हें मैं चुनूंगा। मैं व्यक्तिगत रूप से Linksys को पसंद नहीं करता क्योंकि वे उपन्यास द्वारा खरीदे गए थे (आपको लगता है कि वे बेहतर होंगे लेकिन IMO नहीं हैं। व्यक्तिगत रूप से मैं D-लिंक पसंद करता हूं क्योंकि वे सबसे अधिक कस्टमाइज़ किए गए राउटर हैं जो मैंने पाया है।) इसके अलावा ओपन सोर्स राउटर के लिए मेरा मानना ​​है कि नेटगियर और डी-लिंक उन्हें सुनिश्चित करते हैं कि मैं अधिक निश्चित हूं, लेकिन आईएमओ ये दो ब्रांड हैं जिन्हें मैं चुनूंगा। मैं व्यक्तिगत रूप से Linksys को पसंद नहीं करता क्योंकि वे उपन्यास द्वारा खरीदे गए थे (आपको लगता है कि वे बेहतर होंगे लेकिन IMO नहीं हैं। व्यक्तिगत रूप से मैं D-लिंक पसंद करता हूं क्योंकि वे सबसे अधिक कस्टमाइज़ किए गए राउटर हैं जो मैंने पाया है।)

इस लिंक को भी देखें और यदि यह समर्थित है तो आप अपने राउटर के साथ और अधिक करने में सक्षम हो सकते हैं

इस साइट में राउटर फर्मवेयर है


-1

नहीं, आप ऐसा नहीं कर सकते। डीएचसीपी आपके हार्डवेयर पते के आधार पर एक आईपी प्रदान करता है। प्रत्येक भौतिक इंटरफ़ेस में केवल उनमें से एक है, इस प्रकार डीएचसीपी केवल एक आईपी को एक भौतिक इंटरफ़ेस में असाइन करेगा।

मैं आपको सलाह दूंगा कि आप केवल इंटरफेस आईपी को स्टैटिकली सेट करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.