Ubuntu bridge कमांड गाइड: नेटवर्क ब्रिज स्थिति व विश्लेषण

परिचय एवं तकनीकी पृष्ठभूमि

Ubuntu लिनक्स में सॉफ्टवेयर-आधारित नेटवर्क स्विचिंग को मॉनिटर और नियंत्रित करने के लिए iproute2 सुइट का bridge टूल सबसे महत्वपूर्ण माध्यम माना जाता है। इस व्यावहारिक ट्यूटोरियल में हम एक वर्चुअल ब्रिज इंटरफ़ेस स्थापित करने से लेकर उससे जुड़े पोर्ट्स की स्थिति, FDB (फॉरवर्डिंग टेबल) के रिकॉर्ड्स तथा VLAN फ़िल्टरिंग कॉन्फ़िगरेशन के आउटपुट को स्टेप-बाय-स्टेप डीकोड करना सीखेंगे।

ब्रिज नेटवर्क की कार्यप्रणाली का परीक्षण करने से पहले, आधुनिक लिनक्स नेटवर्किंग यूटिलिटीज की उपलब्धता सुनिश्चित करने हेतु iproute2 पैकेज इंस्टॉल कर लेते हैं।

apt-get update -qq && apt-get install -y iproute2

सिस्टम पर br0 नाम से एक नया वर्चुअल नेटवर्क ब्रिज तैयार करने और उसे चालू (UP) अवस्था में लाने के लिए ip link add br0 type bridge && ip link set br0 up कमांड चलाएँ।

ip link add br0 type bridge && ip link set br0 up

अब ब्रिज के साथ ट्रैफिक आदान-प्रदान का अनुकरण करने हेतु वर्चुअल ईथरनेट केबल पेयर (veth0 एवं veth1) तैयार करेंगे, जिसे ip link add veth0 type veth peer name veth1 कमांड से जनरेट किया जाता है।

ip link add veth0 type veth peer name veth1

निर्मित पेयर में से veth0 इंटरफ़ेस को ब्रिज br0 के स्लेव पोर्ट के रूप में असाइन करके चालू करने के लिए ip link set veth0 master br0 && ip link set veth0 up निष्पादित किया जाता है।

ip link set veth0 master br0 && ip link set veth0 up

ब्रिज से संबद्ध सभी नेटवर्क पोर्ट्स की बाइंडिंग और वर्तमान इंटरफ़ेस पैरामीटर्स का निरीक्षण bridge link show कमांड से किया जाता है।
इसके आउटपुट में संबंधित मास्टर डिवाइस (master br0), Spanning Tree Protocol की स्थिति (state disabled), पोर्ट प्राथमिकता स्तर (priority), तथा पाथ कॉस्ट (cost) जैसे तकनीकी विवरण परिलक्षित होते हैं।

⚙️ [प्रमुख कमांड विकल्प]

-s (-stats) : प्रत्येक पोर्ट के थ्रूपुट, पैकेट ट्रांसफर काउंट और ट्रांसमिशन त्रुटियों के संपूर्ण आँकड़े प्रदर्शित करता है।
-d (-details) : STP टाइमर्स, स्टेट फ्लैग्स और डीप पोर्ट एट्रिब्यूट्स की पूरी जानकारी देता है।
-c (-color) : टर्मिनल रीडेबिलिटी सुधारने के लिए आउटपुट को रंगीन बनाता है।
-j (-json) : ऑटोमेशन और पार्सिंग स्क्रिप्ट्स के अनुकूल स्ट्रक्चर्ड JSON फॉर्मेट में डेटा देता है।
-p (-pretty) : -j विकल्प के साथ इस्तेमाल करने पर JSON डेटा को इंडेंटेड और सुव्यवस्थित रूप में प्रस्तुत करता है।

bridge link show

2. फॉरवर्डिंग डेटाबेस (bridge fdb) और MAC एड्रेस टेबल का विश्लेषण

ब्रिज br0 के मुख्य इंटरफ़ेस से जुड़े आंतरिक फॉरवर्डिंग डेटाबेस (FDB) रिकॉर्ड्स को एक्सप्लोर करने के लिए bridge fdb show dev br0 का उपयोग किया जाता है।
कंसोल पर डिवाइस के अपने हार्डवेयर पते, मल्टीकास्ट एड्रेस समूह और ऑपरेटिंग सिस्टम द्वारा सुरक्षित रखे गए स्थायी रिकॉर्ड्स (self permanent) स्पष्ट रूप से दिखाई देते हैं।

bridge fdb show dev br0

यदि किसी पोर्ट के पीछे स्थित होस्ट का पता पहले से ज्ञात हो, तो bridge fdb add 02:01:02:03:04:05 dev veth0 master static निष्पादित करके उस MAC एड्रेस को मैन्युअली ब्रिज में इंजेक्ट किया जा सकता है।
यहाँ master फ्लैग यह निर्देशित करता है कि एंट्री पैरेंट ब्रिज स्विचिंग टेबल में दर्ज हो, जबकि static पैरामीटर समय बीतने पर भी एंट्री को एज-आउट (Aging out) होकर स्वतः हटने से रोकता है।

bridge fdb add 02:01:02:03:04:05 dev veth0 master static

veth0 से संबंधित फॉरवर्डिंग प्रविष्टियों को सत्यापित करने हेतु bridge fdb show dev veth0 रन करें।
परिणाम में स्वतः निर्मित स्थायी एंट्री (permanent) के साथ-साथ हमारे द्वारा डिफाइन किया गया स्थिर MAC पता (static), दोनों मास्टर ब्रिज (master br0) के अंतर्गत सफलतापूर्वक सूचीबद्ध नज़र आते हैं।

bridge fdb show dev veth0

3. ब्रिज VLAN फ़िल्टरिंग सक्रियण और पोर्ट असाइनमेंट (bridge vlan)

सॉफ्टवेयर ब्रिज पर 802.1Q टैगिंग को लागू करने हेतु ip link set dev br0 type bridge vlan_filtering 1 कमांड द्वारा VLAN फ़िल्टरिंग इनेबल की जाती है।
इस सेटिंग के बाद ब्रिज इंटरफ़ेस पैकेट हेडर में उपस्थित VLAN टैग की वैधता परखता है और केवल प्राधिकृत VLAN ID वाले फ्रेम को ही आगे अग्रेषित (forward) करता है।

ip link set dev br0 type bridge vlan_filtering 1

veth0 पोर्ट को किसी विशेष वर्चुअल लैन का सदस्य बनाने के लिए bridge vlan add dev veth0 vid 10 कमांड दी जाती है, जिससे इस इंटरफ़ेस पर VLAN ID 10 जुड़ जाती है।
इससे मौजूदा डिफ़ॉल्ट कॉन्फ़िगरेशन को प्रभावित किए बिना पोर्ट पर VLAN 10 के ट्रैफ़िक का संचार संभव हो जाता है।

bridge vlan add dev veth0 vid 10

वर्तमान ब्रिज टोपोलॉजी में सक्रिय समस्त VLAN मैपिंग की स्थिति देखने के लिए bridge vlan show चलाया जाता है।
टर्मिनल आउटपुट में डिफ़ॉल्ट पोर्ट VLAN पहचानकर्ता (1 PVID Egress Untagged) के साथ ही veth0 पर संबद्ध किया गया नया VLAN 10 एक टैग्ड सदस्य के रूप में पुष्ट होता है।

bridge vlan show

4. विस्तृत आँकड़े (-s, -d) देखना और नेटवर्क संसाधनों की सफ़ाई

bridge -s link show कमांड निष्पादित करने पर पोर्ट की परिचालन स्थिति के साथ-साथ आने-जाने वाले बाइट्स और पैकेट्स की रीयल-टाइम ट्रैफिक मेट्रिक्स प्राप्त होती हैं।
स्क्रीन पर veth0 का सक्रिय लिंक स्टेटस, STP निष्क्रियता (state disabled), पोर्ट प्राथमिकता (priority 32) एवं रूट कॉस्ट (cost 2) के तकनीकी पैरामीटर्स स्पष्ट होते हैं।

bridge -s link show

यदि फॉरवर्डिंग टेबल में प्रविष्ट प्रत्येक MAC एड्रेस के विस्तृत फ़्लैग्स और उनसे जुड़े VLANs का सटीक मिलान देखना हो, तो bridge -d fdb show का उपयोग किया जाता है।
यहाँ मैनुअल रूप से जोड़ा गया static पता और सिस्टम का permanent रिकॉर्ड दोनों संबंधित VLANs (vlan 1, vlan 10) और ब्रिज मास्टर (master br0) के साथ सुव्यवस्थित ढंग से मैप हुए दिखाई देते हैं।

bridge -d fdb show

लैब परीक्षण पूरा होने के पश्चात सिस्टम नेटवर्किंग को पूर्ववत करने के लिए ip link set veth0 nomaster && ip link delete br0 && ip link delete veth0 कमांड से बनाए गए सभी वर्चुअल इंटरफ़ेस हटा दिए जाते हैं।

ip link set veth0 nomaster && ip link delete br0 && ip link delete veth0

इस ट्यूटोरियल के माध्यम से हमने उबंटू में bridge यूटिलिटी का उपयोग करके लिनक्स नेटवर्क ब्रिज की स्थिति जाँचने और विभिन्न आउटपुट्स का तकनीकी विश्लेषण करने की प्रक्रिया समझी।
वर्चुअलाइजेशन, कंटेनर नेटवर्किंग या सर्वर स्तर पर नेटवर्क संबंधी विसंगतियों के निवारण (troubleshooting) में यह प्रक्रिया अत्यंत उपयोगी सिद्ध होगी।