VPN पॅकेट नेमके दोन चेकसम वाहून नेते हा दावा नीटनेटका वाटतो आणि उलगडून पाहण्यासारखा पुरेसा वेळा चुकीचा असतो. कोणत्या IP आवृत्त्या दिसतात, कोणता वाहतूक प्रोटोकॉल वाहून नेला जातो आणि बोगदा कोणते संरक्षण स्वरूप वापरतो यावर संख्या अवलंबून असते. हेडर चेकसम, वरच्या स्तराचा चेकसम आणि क्रिप्टोग्राफिक अखंडता टॅग या तीन वेगवेगळ्या व्याप्ती असलेल्या तीन यंत्रणा आहेत. त्या मोजण्याची सुरुवात प्रत्येकजण काय व्यापतो हे चिन्हांकित करण्यापासून होते.

तारेवर प्रत्यक्षात कोणत्या IP आवृत्त्या आहेत ते तपासा

IPv4 हेडर 16-बिट हेडर चेकसम वाहून नेतात, आणि IPv6 हेडर असे काहीही वाहून नेत नाहीत. ही एकच गोष्ट प्रत्येक बोगद्यासाठी संख्या बदलते, कारण IPv4 ला IPv6 मध्ये आणि IPv6 ला IPv4 मध्ये गुंडाळल्यास वेगळी दस्तऐवज तयार होतात. बोगदा दोन्ही कुटुंबे एकत्र वाहून नेऊ शकतो, आणि तेव्हा एका दिशेत असे क्षेत्र असू शकते जे दुसऱ्या दिशेत नाही. काहीही मोजण्यापूर्वी आवृत्त्या निश्चित करा.

मांडणी चित्र म्हणून नाही तर हेडरची यादी म्हणून लिहा. कॅप्चर वाचताना क्रम महत्त्वाचा असतो, आणि चेकसम क्षेत्राची उपस्थिती किंवा अनुपस्थिती ही पहिली चिन्हांकित करण्याची गोष्ट आहे.

outer IPv6 | ESP | inner IPv6 | UDP | application data
outer IPv4 | ESP | inner IPv4 | TCP | application data

पहिल्या ओळीत तिच्या IP हेडरमध्ये कुठेही IP हेडर चेकसम नाही, तर दुसऱ्या ओळीत दोन्ही हेडर IPv4 असताना दोन आहेत. तीच बोगदा तंत्रज्ञान, वेगळी संख्या, आणि दोन्ही ओळींपैकी कोणतीही पूर्ण तार स्वरूप नाही.

प्रत्येक चेकसम काय व्यापतो ते तपासा

व्याप्ती हा लोक वगळतात तो भाग आहे, आणि संख्येला अर्थ देणारी तीच आहे. IPv4 हेडर चेकसम फक्त हेडरचे रक्षण करतो, म्हणून त्याच्या मागील पेलोडबद्दल तो काहीही सांगत नाही. IPv6 वरचा UDP चेकसम स्यूडो-हेडरसह UDP हेडर आणि पेलोड व्यापतो, म्हणजे डेटाग्राम बोगद्यात असताना तो वाहून नेल्या जाणाऱ्या पॅकेटच्या आतपर्यंत पोहोचतो. TCP कडे स्यूडो-हेडरवर तत्सम अवलंबून असलेला स्वतःचा चेकसम आहे. तिन्हींना चेकसम म्हटले तरी ह्या तीन वेगळ्या व्याप्ती आहेत.

RFC 791 IPv4 हेडर तपासणी आणि प्रत्येक हॉपवर तिची पुनर्गणना परिभाषित करते, आणि RFC 8200 स्यूडो-हेडरसह IPv6 वरील वरच्या स्तराची हाताळणी परिभाषित करते. कोणतेही दस्तऐवज VPN पॅकेटमध्ये ठराविक संख्येने चेकसम असतात असे म्हणत नाही, कारण कोणतेही बोगद्याचे वर्णन करत नाही.

tshark -r capture.pcap -Y "ip.proto == 50" -V | grep -i checksum

अखंडता संरक्षण स्वतंत्रपणे तपासा

ESP अखंडता हे स्वतःची व्याप्ती आणि अल्गोरिदम-अवलंबित मांडणी असलेले क्रिप्टोग्राफिक संरक्षण आहे. हे दुसऱ्या नावाने IP किंवा UDP चेकसम नाही, आणि त्याची लांबी निवडलेल्या रचनेनुसार बदलते. अखंडता तपासणी पॅकेटचा निर्धारित भाग व्यापते, जी वापरल्या जाणाऱ्या मोडनुसार ESP हेडर आणि पेलोडचा काही भाग समाविष्ट करू शकते. त्याला ज्ञात रुंदीचे चेकसम क्षेत्र म्हणून मोजणे हेच या स्पष्टीकरणांपैकी बहुतेक जिथे कोसळतात ते ठिकाण.

बाइट मोजण्यापूर्वी निवडलेली रचना वाचा, आणि निकालाचे वर्णन दुसऱ्या लेबलाचा चेकसम असा नाही तर अखंडता संरक्षण असा करा. विचारल्यास डिकोडर क्षेत्राचे नाव सांगेल.

tshark -r capture.pcap -Y esp -V | grep -iE "integrity|icv"

मोजण्यापूर्वी निरीक्षण बिंदू तपासा

आतील इंटरफेसवरील कॅप्चर आणि तारेवरील कॅप्चर पूर्णपणे वेगळे स्तर दाखवू शकतात. आतील इंटरफेसवर बोगदा आधीच काढलेला असतो, त्यामुळे वाहून नेले जाणारे पॅकेट दिसते आणि बाहेरील हेडरपैकी एकही दिसत नाही. तारेवर बाहेरील हेडर आणि वाचता न येणारा एन्क्रिप्टेड पेलोड दिसतो. कोणतेही दृश्य चुकीचे नाही, आणि ती एकाच वस्तूची दृश्ये नाहीत. कोणतीही संख्या उद्धृत करण्यापूर्वी कॅप्चर कुठे घेतले गेले ते सांगा.

sudo tcpdump -ni eth0 -vv -c 5 esp
sudo tcpdump -ni tun0 -vv -c 5

पहिला आदेश बाहेरील पॅकेट त्याच्या अखंडता ट्रेलरसह दाखवतो, आणि दुसरा वाहून नेले जाणारे पॅकेट त्याच्या स्वतःच्या वाहतूक चेकसमसह दाखवतो. दोन्ही कॅप्चरमधील संख्या जोडल्याने काहीही दोनदा मोजले जात नाही, पण तेच पॅकेट दोनदा स्पष्ट होते.

संख्येची खऱ्या कॅप्चरशी तुलना करा

एक पॅकेट पूर्णपणे डिकोड करा आणि डिकोडर चेकसम किंवा अखंडता मूल्य म्हणून ओळखतो ते प्रत्येक क्षेत्र चिन्हांकित करा. नंतर प्रत्येक खुणेची तुम्ही लिहिलेल्या मांडणीशी तुलना करा, आणि तुम्ही प्रत्यक्षात मोजत नसलेल्या स्तरातील खुणा काढून टाका. त्या सरावातून टिकून राहणारी संख्या समर्थनीय असते, आणि स्मरणातून सांगितलेली संख्या नाही.

उत्तरेच्या दिशेसाठीही तेच पुन्हा करा, कारण दोन्ही कुटुंबे वाहून नेणारा बोगदा दिशेनुसार आणि प्रवाहानुसार वेगळा असू शकतो. नंतर संख्या तिच्या व्याप्तीसह सांगा, उदाहरणार्थ या निरीक्षण बिंदूवर या आतील पॅकेटसाठी तीन चेकसम, सर्वसाधारणपणे VPN पॅकेटचे गुणधर्म म्हणून नाही.

tshark -r capture.pcap -T fields -e ip.checksum -e udp.checksum -e tcp.checksum

संबंधित लेख