क्या एक स्थिर IP के अंतिम 3 अंकों को केवल लिनक्स में सेट करने का एक तरीका है?


0

मुझे कई ubuntu सिस्टम स्थापित करने की आवश्यकता है जो अलग-अलग आईपी पते के साथ राउटर में प्लग किए जाएंगे। उदाहरण के लिए, 192.168.1.x या 192.168.0.x, आदि। किसी भी राउटर के पते के आधार पर एक स्थिर आईपी पता निर्दिष्ट करने का एक तरीका है? कहते हैं, कि मैं चाहता हूं कि अंतिम अंक (x) राउटर पते की परवाह किए बिना 77 हो। यदि बॉक्स 192.168.0.x राउटर पर है, तो यह अपने स्थिर आईपी को 192.168.0.77 के रूप में सेट करेगा। यदि बॉक्स 192.168.1.x राउटर पर है, तो यह अपने स्थिर आईपी को 192.168.1.77 के रूप में सेट करेगा। और इतने पर ... वहाँ या तो इंटरफेस फ़ाइल या wpa_supplicant में ऐसा करने का एक तरीका है?


अंतिम ऑक्टेट (चौथी संख्या) महत्वपूर्ण क्यों है? dhcp से अपडेट किया गया dns आपका मित्र है। हालांकि आपको उस डिवाइस के लिए प्रत्येक राउटर पर एक स्थिर आरक्षण देना होगा।
सेरेक्स

1
यह पूरी तरह से डीएचसीपी को तोड़ देगा। पूरे पते को लैन पर अद्वितीय होना चाहिए, इसका हिस्सा नहीं। यदि यह भी संभव था, तो झड़पें आम होंगी। हालाँकि, आप कुछ राउटर को हमेशा विशिष्ट मैक पतों के लिए एक ही आईपी देने के लिए सेट कर सकते हैं, जो आपके द्वारा पूछे जा रहे कुछ को प्राप्त कर सकते हैं।
मैट एच

यह अभी भी अद्वितीय होगा क्योंकि प्रत्येक रोटार एक अलग सबनेट में होता है और आरक्षण का तीसरा ऑक्टेट सबनेट के अनुसार dhcp दृश्य पर आधारित होता है। हालांकि यह एक बुरा विचार है, यह जटिल है, और चौथे ऑक्टेट के मूल्य पर एक अजीब महत्व रखता है, जो अतार्किक लगता है।
Sirex

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

मुझे लगता है कि हम एक गलतफहमी है क्योंकि हम एक ही बात को अलग-अलग तरीके से कह रहे हैं। आपको एक ही मैक के लिए प्रत्येक सबनेट में आरक्षण की आवश्यकता है, हाँ। यह संभव होना चाहिए कि प्रति सबनेट dhcp स्कोप के माध्यम से dhcp के साथ, लेकिन यह निश्चित रूप से एक बुरा विचार है।
सेरेक्स डे

जवाबों:


1

मैंने वर्तमान असाइन किए गए आईपी की जांच के लिए एक स्क्रिप्ट लिखी और फिर इसे बदल दिया ताकि यह 100 के साथ समाप्त हो जाए।

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

#!/bin/bash

#set interface
interface="eth0"

#read current IP address on interface
current_ip=`ifconfig $interface 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'`
IP=`cut -f1,2,3 -d"." <<< $current_ip`
IP=$IP".100"

#check if IP is taken using ping
count=`ping -c 1 $IP | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }'`

if [ $count -eq 0 ]; then
        #change IP if available
        ifconfig $interface down
        ifconfig $interface $IP up
        ifconfig $interface
else
        #IP change not possible
        echo "IP not available"
fi

यह जांच में सुरक्षित होना चाहिए कि आईपी नेटवर्क में लिया गया है या नहीं।

यह मत भूलो कि इसे चलाने के लिए आपको विशेषाधिकारों की आवश्यकता है।

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