Tcpdump - लिनक्स कमांड - यूनिक्स कमान्ड

NAME

tcpdump - नेटवर्कमा डम्प ट्राफिक

SYNOPSIS

tcpdump [ -रेफ्लाएनएनओपीकआरस्टुभीएक्स ] [ -सी गिनती ]

[ -C file_size ] [ -F फाइल ]

[ -i इन्टरफेस ] [ -मेड मोड्युल ] [ -r फाइल ]

[ -s snaplen ] [ -टी प्रकार ] [ -U प्रयोगकर्ता ] [ -w फाइल ]

[ -ए अल्गो: गोपनीय ] [ अभिव्यक्ति ]

वर्णन

Tcpdump ले सञ्जाल हेडरहरू सञ्जाल इन्टरफेसमा प्रिन्ट गर्दछ जुन ब्युलेन अभिव्यक्तिसँग मेल खान्छ। यो पनि -w झण्डा संग चलाउन सकिन्छ, जसले प्याकेट डेटालाई पछिल्ला विश्लेषणको लागि फाइलमा बचत गर्न सक्छ, र / वा -आर फ्ल्यागको साथ, जुन प्याकेटहरू पढ्नुको सट्टा सुरक्षित गरिएको प्याकेट फाइलबाट पढ्न सकिन्छ। नेटवर्क इन्टरफेसबाट। सबै अवस्थाहरूमा, अभिव्यक्तिसँग मेल खाने प्याकेटहरू मात्र tcpdump द्वारा प्रशोधन गरिनेछ।

Tcpdump , यदि सी - फ्ल्यागसँग चलिरहेको छैन भने प्याकेटहरू कैप्चर गर्न जारी राख्नेछ जब सम्म सिग्रेन्ट सिग्नलद्वारा बाधा नगर्ने सम्म (उत्पन्न गरिएको, उदाहरणका लागि, तपाइँको अवरोध चरित्र टाइप गरेर, सामान्यतया नियन्त्रण-सी टाइप गरेर) वा SIGTERM सिग्नल (विशेष रूपमा उत्पन्न मारिएको (1) आदेश); यदि -c फ्ल्यागसँग चलिरहेको छ भने, यो प्याकेटहरू सिग्नल वा सिग्रेन्ट सिग्रेसनबाट बाधा नभएसम्म यसले प्याकेटहरू खिच्दछ वा निर्दिष्ट प्याकेटहरू प्रशोधन गरिएका छन्।

जब tcpdump प्याकेटहरू कैप्चर गर्न समाप्त हुन्छ, यसले गणना गर्दछ:

प्याकेट `` फिल्टरद्वारा प्राप्त भयो '(यो ओएसमा निर्भर छ जसमा तपाईँले tcpdump चलाइरहनुभएको छ, र सम्भवतः ओएस कन्फिगर गरिएको थियो - यदि फिल्टर आदेश रेखामा निर्दिष्ट गरिएको थियो, केहि OSES मा यो गणना गर्दछ। प्याकेटहरू चाहे कि फिल्टर फिल्टर अभिव्यक्तिले मेल खाएन भने, र अन्य ओएसईहरूमा यो प्याकेट जुन फिल्टर अभिव्यक्तिले मेल खाएको थियो र tcpdump द्वारा प्रशोधन गरिएका गणना गर्दछ);

प्याकेट `` द्वारा कर्नेल '' (यो प्याकेटको संख्या हो जुन, बफर स्पेसको कमीको कारणले, ओएसमा प्याकेट क्याप्चर तंत्र द्वारा, जसमा tcpdump चलिरहेको छ, यदि ओएसले सूचनाहरू अनुप्रयोगहरूलाई रिपोर्ट गर्दछ; यदि होइन भने, यो 0 को रूपमा रिपोर्ट गरिनेछ)।

प्लेटफर्महरू जसले SIGINFO सिग्नललाई समर्थन गर्दछ, जस्तै धेरै BSD हरू, यसले ती गणनाहरू रिपोर्ट गर्दछ जब यसले एक SIGINFO सिग्नल प्राप्त गर्दछ (उदाहरणका लागि, तपाईंको `` स्थिति '' क्यारेक्टर टाइप गरेर, सामान्यतया नियन्त्रण-T टाइप गरेर) र प्याकेटहरू कैप्चर गर्न जारी राख्छ। ।

सञ्जाल इन्टरफेसबाट प्याकेटहरू पढ्नका लागि आवश्यक हुन सक्छ कि तपाइँसँग विशेष विशेषाधिकारहरू छन्:

SunOS 3.x वा 4.x अन्तर्गत NIT वा BPF सँग:

तपाईंले / dev / nit वा / dev / bpf * को पहुँच पढ्नै पर्छ।

डीएलपीआई संग सोलारिस को तहत:

तपाईंले सञ्जाल छद्म यन्त्रमा पढ्न / लेख्न पाउनु पर्छ, उदाहरणको लागि / dev / le । कमसेकम सोलिसिसका केहि संस्करणहरू, तथापि, टीसीपीम्प कम्पाइड मोडमा कब्जा गर्न अनुमति दिन पर्याप्त छैन; सोलारिसका ती संस्करणहरूमा, तपाईं रूट हुनुपर्दछ, वा tcpdump जगेडा गर्न सेटअप गर्न अनिवार्य मोडमा कैद गर्न। ध्यान दिनुहोस् कि, धेरै (सम्भव सबै) इन्टरफेसहरूमा, यदि आपदा मोडमा कैद गर्नुहुन्न भने, तपाइँ कुनै पनि बहिर्गमन प्याकेटहरू देख्न सक्नुहुन्न, त्यसोभए जुनसुकै मोडमा राखिएको क्याप्चर धेरै उपयोगी नहुन सक्छ।

डीएलपीआईको साथ HP-UX अन्तर्गत:

तपाईं रूट हुनुपर्छ वा tcpdump लाई सेटअप गर्न रूटमा स्थापित हुनुपर्छ।

आईआरआईसी भित्र स्नुपको साथ:

तपाईं रूट हुनुपर्छ वा tcpdump लाई सेटअप गर्न रूटमा स्थापित हुनुपर्छ।

लिनक्स अन्तर्गत:

तपाईं रूट हुनुपर्छ वा tcpdump लाई सेटअप गर्न रूटमा स्थापित हुनुपर्छ।

अल्टिक्स र डिजिटल युनिक्स / Tru64 UNIX अन्तर्गत:

कुनै पनि प्रयोगकर्ताले tcpdump सँग नेटवर्क ट्राफिक खिच्न सक्छ। तथापि, कुनै प्रयोगकर्ता (पनि सुपर-प्रयोगकर्ता पनि) इन्टरफेसमा प्रचलित मोडमा कैद गर्न सक्नुहुन्न जबसम्म सुपर-प्रयोगकर्ताले pfconfig (8) प्रयोग गरेर इन्टरफेसमा मोड-मोड अपरेसन सक्षम गरेको छैन र कुनै पनि प्रयोगकर्ता (अति प्रयोगकर्ता पनि होइन। ) असफष्ट ट्राफिकले इन्टरनेटमा प्राप्त गर्न वा इन्टरफेसमा पठाइयो जुन जब सुपर प्रयोगकर्ताले pfconfig प्रयोग गरी त्यो इन्टरफेसमा प्रतिलिपि-सबै-मोड अपरेसन सक्षम गर्दछ, त्यसो गर्दा उपयोगी प्याकेट एक इन्टरफेसमा खिच्न सक्छ जुन सम्भावना मोड वा प्रतिलिपि चाहिन्छ। -अफ-मोड अपरेसन, वा अपरेसनको मोडहरू, त्यो इन्टरफेसमा सक्षम हुनुहोस्।

बीएसडी अन्तर्गत:

तपाईंले / dev / bpf * को पहुँच पढ्न पाउनु पर्छ।

बचत गरिएको प्याकेट फाइल पढ्न विशेष विशेषाधिकार आवश्यक छैन।

विकल्पहरू

-a

नामहरूमा सञ्जाल र प्रसारण ठेगानाहरू कन्वर्ट गर्न प्रयास गर्नुहोस्।

-c

गणना प्याकेट प्राप्त गरेपछि निस्कनुहोस्।

-C

बचतफाइलमा एक कच्चा प्याकेट लेख्नु अघि, फाइल फाइल फाइल भन्दा ठूलो फाइल हो कि भनेर जाँच गर्नुहोस् र यदि, त्यसो भए, हालको बचतफाइल बन्द गर्नुहोस् र एउटा नयाँ खोल्नुहोस्। बचतफाइलको पहिलो बचतफाइल पछिको नाममा -W झण्डाको साथ निर्दिष्ट हुनेछ, यसपछि एउटा नम्बरको साथ, 2 मा सुरू हुँदै र माथिल्लो जारी राख्नुहोस्। File_size को एकाइहरू लाखौं बाइट्स (1,000,000 बाइटहरू, 1,048,576 बाइटहरू छैनन्)।

-d

संकलित प्याकेट-मिलान कोडलाई मानव पठनीय फारममा मानक आउटपुटमा डम्प गर्नुहोस् र रोक्नुहोस्।

-dd

डम्प पैकेट-मिल्दो कोड एक सी कार्यक्रम अंश को रूपमा।

-ddd

डम्प प्याकेट-मिल्दो कोड दशमलव संख्याको रूपमा (गणनाको साथमा)।

-e

प्रत्येक डम्प लाइनमा लिंक-तह हेडर प्रिन्ट गर्नुहोस्।

-ई

अल्गो प्रयोग गर्नुहोस् : डिकोप्टिंग IPsec ESP प्याकेटका लागि गोप्य । एल्गोरिदमहरू des-cbc , 3des-cbc , blowfish-cbc , rc3-cbc , cast128-cbc , or none । पूर्वनिर्धारित des-cbc हो । प्याकेट गुप्तिकरण गर्न क्षमता मात्र हो भने tcpdump क्रिप्टोग्राफी सक्षम संग सक्षम गरिएको थियो। ESP गुप्त कुञ्जीको लागि एस्सीई पाठ लुकाउनुहोस्। हामी यस पलमा मनोनयन बाइनरी मान लिन सक्दैनौं। विकल्पले RFC2406 ESP मान्दछ, RFC1827 ESP। विकल्प डिबगिङ प्रयोजनका लागी मात्र हो, र यो विकल्पको प्रयोग साँच्चिकै 'गोप्य' कुञ्जीसँग हतोत्साहित छ। IPsec गोप्य कुञ्जीलाई आदेश लाइनमा प्रस्तुत गरेर तपाईँले यसलाई ps (1) र अन्य अवसरहरूद्वारा अरूलाई देख्न सक्नुहुन्छ।

-f

`विदेशी 'इन्टरनेट ठेगाना सङ्ख्यात्मक रूपमा सङ्ख्यात्मक रूपमा छाप्नुहोस् (यो विकल्प सूर्यको YP सर्भरमा गम्भीर मस्तिष्क क्षतिको वरिपरि प्राप्त गर्ने उद्देश्य हो --- सामान्यतया यसले सधैँ सधैँ सधैँ अनुवाद गर्न गैर-स्थानीय इन्टरनेट नम्बरहरू राख्दछ)।

-F

फिल्टर अभिव्यक्तिका लागि फाइलको रूपमा इनपुट प्रयोग गर्नुहोस् । आदेश लाइनमा दिइएको अतिरिक्त अभिव्यक्ति बेवास्ता गरिएको छ।

-i

इन्टरफेस सुन्नुहोस्। यदि निर्दिष्ट नगरिएको छ भने, tcpdump प्रणालीको इन्टरफेस इन्टरफेस सूची खोजी गर्न को लागी तल्लो तह, कन्फिगर गरिएको इन्टरफेस (लूपब्याक बाहेक) को लागि। सबैभन्दा पुरानो म्याच छान्नुहोस्।

लिनक्स प्रणालीहरू 2.2 वा पछिको कर्नेलहरूमा, `` कुनै '' को एक इन्टरफेस तर्क सबै इन्टरफेसबाट प्याकेटहरू खिच्न प्रयोग गर्न सकिन्छ। ध्यान दिनुहोस् कि `` कुनै '' उपकरणमा प्रचण्ड मोडमा हुने छैन।

-l

स्टडआउट लाइन बफर गरियो। उपयोगी यदि तपाइँ यसलाई क्याप्चर गर्दा डाटा हेर्न चाहनुहुन्छ भने। Eg,
`` tcpdump -l | te dat '' or `` tcpdump -l> dat & tail -f dat ''।

-m

फाइल मोड्युलबाट SMI MIB मोड्युल परिभाषाहरू लोड गर्नुहोस्। यो विकल्प धेरै पटक प्रयोग गर्न सकिन्छ धेरै एमबीबी मोड्युल tcpdump मा लोड गर्न।

-n

नामहरूमा होस्ट ठेगानाहरू कन्वर्ट नगर्नुहोस्। यो DNS लुकअपहरू जोगाउन प्रयोग गर्न सकिन्छ।

-nn

प्रोटोकॉल र पोर्टल नम्बरहरू आदिलाई पनि नामकरण नगर्नुहोस्।

-N

होस्ट नामहरूको डोमेन नाम योग्यता छाप्नुहोस्। उदाहरणका लागि, यदि तपाइँ यो झण्डा दिनुहुन्छ त tcpdump `` nic.ddn.mil '' को सट्टा `` nic '' छाप्नेछ।

-ओ

प्याकेट-मिल्ने कोड अनुकूलक चलाउनुहोस्। यो उपयोगी छ यदि तपाईंलाई अनुकूलकमा बग को लागी संदिग्ध हुन्छ।

-p

इन्टरफेस मोडमा इन्टरफेस नराख्नुहोस् । ध्यान दिनुहोस् कि इन्टरफेस केही अन्य कारणका लागि भ्रामक मोडमा हुन सक्छ; यसैले, `-p 'प्रयोग गरिन सक्छ' ईथर होस्ट {स्थानीय-hw-addr} वा ईथर प्रसारण 'को लागि संक्षिप्त नामको रूपमा।

-q

द्रुत (शान्त?) आउटपुट। कम प्रोटोकल सूचना प्रिन्ट गर्नुहोस् ताकि उत्पादन लाइन छोटो हो।

-आर

ESP / AH packets लाई पुरानो विवरणमा आधारित हुन मान्नुहोस् (RFC1825 मा RFC182 9 सम्म)। यदि निर्दिष्ट भएमा, tcpdump पुन: प्लेब्याक रोकिएको क्षेत्र छाप्ने छैन। चूंकि त्यहाँ ESP / AH विनिर्देशमा कुनै प्रोटोकल संस्करण फिल्ड छैन, tcpdump ESP / AH प्रोटोकलको संस्करण कटौती गर्न सक्दैन।

-r

फाईलबाट प्याकेट पढ्नुहोस् (जसलाई -w विकल्पको साथ सिर्जना गरिएको थियो)। यदि मानक `` - '' हो भने मानक इनपुट प्रयोग गरिन्छ।

-एस

रिट्युट, सापेक्ष, टीसीपी अनुक्रम नम्बरहरूको सट्टा।

-s

68 को डिफल्ट भन्दा प्रत्येक प्याकेटबाट डेटाको स्नारफ स्नैपलन बाइट्स (SunOS को एनआईटीको साथ, न्यूनतम वास्तवमा 96 हो)। 68 बाइट्स आईपी, आईसीएमपी, टीसीपी र यूपीडीका लागि उपयुक्त छ तर प्रोटोकल जानकारी नाम सर्भर र एनएफएस प्याकेटबाट तल निस्कन सक्छ (तल हेर्नुहोस्)। प्याकेटहरू ट्रंकले गर्दा सीमित स्न्यापसटको कारण उत्पादनमा संकेत गरिएको छ `` [| proto ] '', जहां प्रोटो प्रोटोकॉल स्तरको नाम हो जहाँ ट्रनकेसन भएको छ। ध्यान दिनुहोस् कि ठूला स्न्यापशट लिँदै दुवै प्याकेटहरू प्रशोधन गर्ने समय बढाउँदछ र, प्रभावकारी रूपमा, प्याकेट बफरिङ रकम घटाउँदछ। यसले प्याकेट गुमाउन सक्छ। तपाईंले सानो नम्बरमा स्न्यापिनलाई सीमित गर्नु पर्दछ जुन तपाइँलाई रुचि राख्ने प्रोटोकॉल जानकारी लिन्छ । 0 लाई स्न्यापले सेटिङ गर्दै सम्पूर्ण प्याकेटहरू समात्न आवश्यक लम्बाइ प्रयोग गर्नुहोस्।

-T

" अभिव्यक्ति " द्वारा चयन गरिएको प्याकेटहरूलाई निर्दिष्ट प्रकार व्याख्या गर्न बलियो गर्नुहोस् । हालका ज्ञात प्रकारहरू cnfp (सिस्को नेटफ्लो प्रोटोकल), rpc (रिमोट प्रोसेसर कल), rtp (रियल-टाइम अनुप्रयोग प्रोटोकॉल), rtcp (रियल-टाइम अनुप्रयोग नियन्त्रण प्रोटोकॉल), snmp (सरल सञ्जाल व्यवस्थापन प्रोटोकॉल), vat (भिजुअल अडियो उपकरण) ), र wb (सेतो बोर्ड वितरित)।

-t

प्रत्येक डम्प लाइनमा टाइमस्ट्याम्प छाप नगर्नुहोस्

-tt

प्रत्येक डम्प लाइनमा एक अनपेक्षित टाईस्ट्याम्प छाप्नुहोस्।

-U

रूट विशेषाधिकार छोड्छ र प्रयोगकर्ताको समूह आइडी प्रयोगकर्ताको प्राथमिक समूहमा परिवर्तन गर्दछ।

नोट! Red Hat Linux ले विशेषाधिकार स्वचालित रूपमा प्रयोगकर्ता `` pcap '' लाई छोड्दछ भने कुनै अन्य कुनै निर्दिष्ट गरिएको छैन।

-ttt

प्रत्येक डम्प लाइनमा हाल र अघिल्लो रेखा बीच डेल्टा (माइक्रो-सेकेन्डमा) प्रिन्ट गर्नुहोस्।

-tttt

पूर्वनिर्धारित ढाँचामा टाइमस्ट्याम्पमा छाप्नुहोस् प्रत्येक डम्प लाइनमा मिति जारी छ।

-u

अज्ञात एनएफएस ह्यान्डलहरू प्रिन्ट गर्नुहोस्।

-v

(थोरै बढी) verbose उत्पादन। उदाहरणको लागि, आईपी प्याकेटमा प्रत्यक्ष जीवन, पहिचान, कुल लम्बाइ र विकल्पहरू प्रिन्ट गरिएका छन्। अतिरिक्त पैकेट अखंडता जाँचहरू जस्ता आईपी र आईसीएमपी हेडर जाँच को रूपमा प्रमाणित गर्दछ।

-vv

अझ अधिक verbose उत्पादन। उदाहरणको लागि, एनएफएस जवाफ प्याकेटबाट अतिरिक्त फिल्डहरू प्रिन्ट गरिएको छ, र SMB प्याकेटहरू पुरा तरिकाले डिकोड गरिएका छन्।

-vvv

अझ अधिक verbose उत्पादन। उदाहरणको लागि, टेलिनेट एसबी ... एसई विकल्पहरू पूर्ण छापिएको छ। एक्स- एक्स टेलिनेट विकल्पहरू साथ हेक्समा पनि मुद्रण गरिन्छ।

-w

टाँस्नु र मुद्रण गर्न सट्टा फाइलमा कच्चा प्याकेटहरू लेख्नुहोस्। तिनीहरू पछि -आर विकल्पसँग प्रिन्ट गर्न सकिन्छ। मानक आउटपुट प्रयोग गरिन्छ यदि फाइल हो `` - ''।

-x

हेक्समा प्रत्येक प्याकेट (खण्डको लिङ्क स्तर हेडर) प्रिन्ट गर्नुहोस्। सम्पूर्ण प्याकेट वा स्न्याप्लेन्स बाइटहरू प्रिन्ट गरिनेछ। ध्यान दिनुहोस् कि यो सम्पूर्ण लिङ्क-प्याकेट हो, त्यसैले लिङ्क परतहरूका लागि प्याड (उदाहरणार्थ इथरनेट), प्याडिङ बाइटहरू पनि मुद्रण गरिनेछ जब उच्च तह प्याकेट आवश्यक प्याडिंग भन्दा छोटो हुन्छ।

-X

हेक्स मुद्रण गर्दा, ascii पनि मुद्रण। यस प्रकार यदि -x पनि सेट गरिएको छ भने, प्याकेट हेक्स / ascii मा प्रिन्ट गरिएको छ। यो नयाँ प्रोटोकॉलको विश्लेषणको लागि धेरै सजिलो छ। यदि पनि-x पनि सेट छैन भने, केही प्याकेटका केही भागहरू हेक्स / एस्सीईमा प्रिन्ट हुन सक्छ।

अभिव्यक्ति

कुन प्याकेटहरू डम्प गरिनेछ छनौट गर्दछ। यदि कुनै अभिव्यक्ति दिइएन भने, नेटमा सबै प्याकेटहरू डम्प गरिनेछ। अन्यथा, केवल प्याकेट मात्र अभिव्यक्ति हो 'सत्य' डम्प गरिनेछ।

अभिव्यक्तिमा एक वा बढी प्राणीहरू हुन्छन्। प्राथमिकतहरू सामान्यतया एक वा बढी क्लिफायरहरू भन्दा पहिले आईडी (नाम वा नम्बर) समावेश हुन्छन्। त्यहाँ तीन प्रकारका योग्यताहरू छन्:

टाइप गर्नुहोस्

क्लिफायरहरूले कस्तो प्रकारको आईडी नाम वा नम्बरलाई बुझाउँछ। सम्भावित प्रकार होस्ट , नेटपोर्ट हो । इग, `होस्ट फू ',` नेट 128.3', `पोर्ट 20 '। यदि कुनै प्रकार योग्यता छैन भने, होस्ट माना छ।

dir

क्लिफायरले एक विशेष ट्राफिक दिशालाई आईडी र / वा आईडीमा निर्दिष्ट गर्दछ। संभावित दिशाहरू src , dst , src वा dstsrc र dst हुन् । Eg, `src foo ',` dst net 128.3', `src or dst portfolio ftp-data '। यदि कुनै डाई क्वालिफायर छैन भने, src वा dst ग्रहण गरिएको छ। `खाली 'लिङ्क तहहरूको लागि (जस्तै बिन्दु प्रोटोकॉलहरू जस्तै पर्चीमा चिन्ह लगाउनुहोस्) इनबाउण्डआउटबाउन्ड क्वालिफायरहरू वात्न दिशा निर्दिष्ट गर्न प्रयोग गर्न सकिन्छ।

proto

क्वालिफायरले एक विशेष प्रोटोकॉलमा प्रतिबन्धलाई सीमित गर्दछ। सम्भावित प्रिटोहरू हुन्: ईथर , एफडीआई , ट्र , आईपी , आईपी ​​6 , आरआर , rarp , डेनेट , टीसीपीudp । Eg, `et src src foo,` arp net 128.3 ', `tcp port 21'। यदि कुनै प्रोटो क्वालिफायर छैन भने सबै प्रकारका प्रोटोकलहरू प्रकारको अनुरूप हुन्छ। इग, `src foo 'को अर्थ` (आईपी वा आरआरपी वा rarp) स्रोत फू' (बाहेक पछि कानूनी सिंक्याक्स होइन), `नेट पट्टी 'को अर्थ` (आईपी वा आरआरपी वा rarp) नेट पट्टी' र `पोर्ट 53 ' `(टीसीपी या udp) पोर्ट 53 '।

[`fddi 'वास्तवमा' ईथर 'को लागि एक उपनाम हो; पार्सर तिनीहरूलाई समान रूपमा मानिन्छ। `डेटा लिंक स्तर निर्दिष्ट नेटवर्क इन्टरफेसमा प्रयोग गरिएको छ। '' FDDI हेडरले ईथरनेट जस्तै स्रोत र गन्तव्य ठेगानाहरू समावेश गर्दछ, र प्रायः ईथरनेट-जस्तै प्याकेट प्रकारहरू समावेश गर्दछ, त्यसैले तपाईँले यी FDDI फिल्डहरूमा फिल्टर गर्न सक्नुहुनेछ। जस्तै एनालॉग ईथरनेट फिल्डहरूसँग। FDDI हेडरले अन्य क्षेत्रहरू पनि समावेश गर्दछ, तर तपाईले तिनीहरूलाई स्पष्ट रूपमा फिल्टर अभिव्यक्तिमा नामकरण गर्न सक्नुहुन्न।

त्यसै गरी, 'tr' एक 'उपनाम' को उपनाम हो; FDDI हेडरको बारेमा अघिल्लो अनुच्छेदको बयान पनि टोकन रङ हेडरहरूमा लागू हुन्छ।]

माथिको अतिरिक्त, त्यहाँ केही विशेष `आदिम 'शब्दहरू छन् जुन ढाँचा पछ्याउँदैन: गेटवे , प्रसारण , कम , अधिक र गणित अभिव्यक्तिहरू। यी सबै तल वर्णन गरिएको छ।

अधिक जटिल फिल्टर अभिव्यक्तिहरू शब्दहरू प्रयोग गरेर बनाइएका छन्, र वा वा मुख्यतया संयोजन गर्न मिल्दैन। इग, `होस्ट फू र पोर्ट पोर्ट र पोर्ट अफ फ्याट डाटा छैन। टाइपिङ सुरक्षित गर्न, समान योग्यता सूचीहरू हटाउन सकिन्छ। Eg, `tcp dst पोर्ट ftp वा ftp- डेटा वा डोमेन 'वास्तवमा' tcp dst पोर्ट ftp वा tcp dst पोर्ट ftp-data वा tcp dst पोर्ट डोमेन 'जस्तै हो।

अनुमति दिन योग्य प्राथमिकहरू निम्न हुन्:

dst होस्ट होस्ट

सही यदि प्याकेट को IPv4 / v6 गन्तव्य फील्ड होस्ट हो , जुन पनि एक ठेगाना या नाम हुन सक्छ।

स्रोत होस्ट होस्ट

सही यदि प्याकेट को IPv4 / v6 स्रोत फील्ड होस्ट हो

होस्ट होस्ट

ठीक छ भने यदि प्याकेटको IPv4 / v6 स्रोत वा गन्तव्य होस्ट हो । माथिको होस्ट अभिव्यक्ति मध्ये कुनै पनि किवर्ड, आईपी , आरआरपी , rarp , वा ip6 को साथ prepended गर्न सक्छन्:

आईपी ​​होस्ट होस्ट

जो बराबर छ:

एथर प्रोटो \ आईपी र होस्ट होस्ट

यदि होस्टले धेरै आईपी ठेगानाहरूसँग एक नाम हो भने, प्रत्येक ठेगानालाई मेलको लागि जाँच गरिनेछ।

ईथर dst ehost

ठीक छ भने ईथरनेट गन्तव्य ठेगाना ईहोस्ट होइहोस्स्ट या त / etc / ethers बाट एक नाम हुन सक्छ वा संख्या (संख्यात्मक ढाँचाको लागि ईथर (3 एन) हेर्नुहोस्।

ether src ehost

सही छ भने इथरनेट स्रोत ठेगाना ईहोस्ट हो

ईथर होस्टल

ठीक छ भने यदि ईथरनेट स्रोत वा गन्तव्य ठेगाना हो भने ईहोस्ट हो

गेटवे होस्ट

सही यदि प्याकेट गेटवेको रूपमा होस्ट प्रयोग गर्दछ। Ie, ईथरनेट स्रोत वा गन्तव्य ठेगाना होस्ट थियो तर न त IP स्रोत हो र आईपी गन्तव्य होस्ट थियोहोस्ट नाम हुनु पर्छ र दुवै मेशिन होस्ट-नाम-देखि-आईपी ठेगाना रिजोल्युसन तंत्र (होस्ट नाम फाईल, डीएनएस, एनआईएस, आदि) द्वारा भेट्टाउन अनि मिसिनको होस्ट-नाम-देखि-ईथरनेट ठेगाना रिजोल्युसन द्वारा भेट्टाउन अनिवार्य छ। तंत्र (/ आदि / एथर्सहरू, आदि)। (एक समकक्ष अभिव्यक्ति हो

ईथर होस्टल होस्ट होस्ट होस्ट होस्ट होईन

जुन होस्ट / ईहोस्टको लागि नाम वा संख्याहरूसँग प्रयोग गर्न सकिन्छ।) यो सिंक्याक्सले यस प्वाइन्टमा IPv6-सक्षम कन्फिगुरेसनमा काम गर्दैन।

dst net net

सही यदि प्याकेट को IPv4 / v6 गन्तव्य ठेगाना नेटवर्क को एक नेट नम्बर छ। नेट या तो नाम / आदि / सञ्जालहरू वा नेटवर्क नम्बर (विवरणका लागि सञ्जाल (4) हेर्नुहोस्।

स्रोत नेट नेट

सही यदि प्याकेट को IPv4 / v6 स्रोत ठेगाना नेटवर्क को एक नेट नम्बर छ।

नेट नेट

सही यदि प्याकेट को आईपीवी 4 / v6 स्रोत वा गन्तव्य ठेगाना नेटवर्क को नेट नम्बर छ।

नेट नेट मुखौटा नेटमास्क

सही यदि आईपी ठेगाना विशिष्ट नेटमस्क संग नेट मेल खाता छ। Src वा dst सँग योग्य हुन सक्छ। नोट गर्नुहोस् कि यो वाक्यविन्यास आईपीवी 6 नेटको लागि मान्य छैन।

नेट नेट / लेन

सही यदि IPv4 / v6 ठेगाना नेटमास्क लुने बिटको साथ नेटसँग मेल खान्छ। Src वा dst सँग योग्य हुन सक्छ।

dst पोर्ट पोर्ट

साँचो यदि पैकेट ip / tcp, ip / udp, ip6 / tcp वा ip6 / udp छ र पोर्टको गन्तव्य पोर्ट मूल्य छ। पोर्ट एक संख्या वा एक नाम / etc / services मा प्रयोग गरिएको नाम हुन सक्छ ( tcp (4P) र udp (4P) हेर्नुहोस्। यदि नाम प्रयोग गरिन्छ भने, पोर्ट नम्बर र प्रोटोकल जाँच गरिन्छ। यदि अङ्क वा अस्पष्ट नाम प्रयोग गरिन्छ, केवल पोर्ट नम्बर जाँच गरिएको छ (उदाहरणको लागि, dst पोर्ट 513 दुवै tcp / लग इन ट्राफिक र udp / जसले ट्राफिक, र पोर्ट डोमेनले TCP / डोमेन र udp / domain ट्राफिक दुवै मुद्रण गर्नेछ।

स्रोत पोर्ट पोर्ट

सच छ यदि पैकेट मा पोर्ट को स्रोत पोर्ट मूल्य छ।

पोर्ट पोर्ट

सही यदि प्याकेटको स्रोत वा गन्तव्य पोर्ट पोर्ट हो । माथिको बंदरगाह अभिव्यक्ति मध्ये कुनै पनि कीवर्ड, tcp वा udp संग prepended गर्न सक्छन्, जस्तै:

tcp src port port

जसले केवल tcp प्याकेटहरूसँग मेल खान्छ जसको स्रोत पोर्ट पोर्ट छ

कम लम्बाइ

सच छ यदि प्याकेट लम्बाइ भन्दा कम वा बराबरको छ। यो बराबर छ:

len <= लम्बाई

ठूलो लम्बाइ

ठीक छ भने प्याकेटले लम्बाई भन्दा बढी वा बराबरको लम्बाइ छ । यो बराबर छ:

len> = लम्बाइ

आईपी ​​प्रोटो प्रोटोकल

सही यदि प्याकेट प्रोटोकल प्रकार प्रोटोकॉल को IP प्याकेट ( आईपी (4 पी) हेर्नुहोस्। प्रोटोकल एक आईपीएमएम , icmp6 , igmp , igrp , pim , आह , esp , vrrp , udp , वा tcp को एक संख्या हुन सक्छ। पहिचान गर्नुहोस् कि पहिचानकर्ता tcp , udp , and icmp पनि कीवर्डहरू हुन् र ब्याकस्ल्याश (\) मार्फत बचाइनु पर्दछ, जुन \ शलमा \\ मा छ। ध्यान दिनुहोस् कि यो आदिमले प्रोटोकॉल हेडर चेन फ्याँक्दैन।

ip6 प्रोटोकल

सही यदि प्याकेट प्रोटोकॉल प्रकारको IPv6 प्याकेट हो। ध्यान दिनुहोस् कि यो आदिमले प्रोटोकॉल हेडर चेन फ्याँक्दैन।

ip6 प्रोटोचेन प्रोटोकल

ठीक छ यदि प्याकेट IPv6 प्याकेट हो, र प्रोटोकल हेडरसँग टाइप प्रोटोकलसँग यसको प्रोटोकल हेडर चेन्जमा हुन्छ। उदाहरणका लागि,

ip6 protochain 6

प्रोटोकल हेडर चेनमा कुनै पनि IPv6 प्याकेट TCP प्रोटोकल हेडरसँग मेल खान्छ। प्याकेट समावेश हुन सक्छ, उदाहरणको लागि, प्रमाणीकरण हेडर, राइट हेडर, वा हप-बाइ-हप विकल्प हेडर, आईभीभ 6 हेडर र TCP हेडर बीच। यस आदिम द्वारा उत्सर्जन बीपीएफ कोड जटिल छ र tcpdump मा BPF अनुकूलक कोड द्वारा अनुकूलित गर्न सकिदैन, यसैले यो केहि साढे हुन सक्छ।

ip protochain प्रोटोकल

Ip6 प्रोटोक्रेन प्रोटोकल जस्तै , तर यो IPv4 को लागि हो।

ईथर प्रसारण

सही यदि पैकेट ईथरनेट प्रसारण प्याकेट हो। ईथर शब्दकुञ्जी वैकल्पिक छ।

आईपी ​​प्रसारण

सही यदि प्याकेट एक आईपी प्रसारण प्याकेट हो। यो सबै zeroes र सबै प्रसारण कन्वेंशनहरू प्रसारण को लागि जाँच गर्दछ, र स्थानीय सबनेट मास्क देख्छ।

ईथर मल्टीस्टास्ट

सही यदि पैकेट ईथरनेट बहुविध प्याकेट हो। ईथर शब्दकुञ्जी वैकल्पिक छ। यो ` एथर [0] र 1! = 0 'को लागि आशुस्त छ।

ip multicast

सही यदि प्याकेट आईपी मल्टीस्टा प्याकेट हो।

ip6 मल्टीस्टास्ट

सही यदि प्याकेट आईभीवी 6 मल्टीस्टा प्याकेट हो।

एथर प्रोटो प्रोटोकल

सही यदि प्याकेट ईथर टाइप प्रोटोकॉल होप्रोटोकल नाम वा आईपी , आईप 6 , आरआरपी , rarp , एटेल , एरप , डेनेट , स्क्यान , ल्याट , एमओपीडीएल , एमओपीआरसी , आईओओ , स्टप , आईपीएक्स , वा netbeui मध्ये एक हुन सक्छ। यी पहिचानकर्ताहरूलाई पनि नोटहरू किवर्डहरू हुन् र ब्याकस्ल्याश (\) मार्फत भाग्नु पर्छ।

[FDDI (जस्तै, ` एफडीआई प्रोटोकल आरपी ') र टोकन रिंग (जस्तै,` ट्र प्रोटोकॉल आरपी ') को अधिकांश प्रोटोकल को लागी, प्रोटोकल पहिचान 802.2 बाट तार्किक लिङ्क नियन्त्रण (LLC) हेडर छ, जुन सामान्यतया FDDI वा टोकन रङ हेडरको तहमा तहमा राखिएको छ।

जब FDDI वा टोकन रङमा अधिक प्रोटोकॉल पहिचानकर्ताहरूको लागि फिल्टर गर्दै, tcpdump एथरनेटको लागि, 0x000000 को संगठनात्मक इकाई पहिचानकर्ता (OUI) को नाममा SNAP ढाँचामा LLC शीर्षकको मात्र प्रोटोकल ID फिल्ड जाँच गर्दछ; यो जाँच गर्दैन कि प्याकेट 0 x000000 को OUI संग SNAP ढाँचामा छ कि छैन।

अपवादहरू आईओओ हुन् , जसको लागि यो LLC हेडर (गन्तव्य सेवा पहुँच प्वाइन्ट) र एसएसएपी (स्रोत सेवा पहुँच प्वाइन्ट) फिल्ड्स को LLC हेडर, stpnetbeui को जाँच गर्दछ, जहाँ यसलाई LLC हेडरको DSAP जाँच गर्दछ र 0x080007 को OUI को साथ एक SNAP-format प्याकेट को लागि जाँच गर्दछ र Appletalk एटाइप।

इथरनेटको अवस्थामा, tcpdump ती प्रोटोकलहरूको धेरै ईथरनेट प्रकार फिल्ड जाँच गर्दछ; यसका लागि यो एप , एसपी , र netbeui हो , जसको लागि यो एक 802.3 फ्रेम को लागी जाँच गर्दछ र त्यसपछि LLC हेडर को जाँच गर्दछ किनभने यसले एफडीआईडी ​​र टोकन रिंग, एटलको लागि गर्छ , जहाँ यो एक ईथरनेट फ्रेममा Appletalk etype को लागी जाँच गर्दछ र यो एफडीआईडी ​​र टोकन अँग्रेजीको लागि यो SNAP-format प्याकेट हो, जहाँ यो एप्पलटल्क एआरपी एटप्राइपको लागि पनि इथरनेट फ्रेममा वा 802.2 एसएनएपी फ्रेममा 0x000000, र आईआईपीको साथ जाँच गर्दछ, जहाँ यो आईपीएक्स ईन्प्रिपको लागि जाँच गर्दछ। एक ईथरनेट फ्रेम, LLC हेडर मा आईपीएक्स DSAP, आईपीएक्स को LLC हेडर एन्कोप्स्युल, र एक SNAP फ्रेम मा IPX एटाइप संग 802.3।]

decnet src होस्ट

ठीक छ यदि DECNET स्रोत ठेगाना होस्ट हो , जुन फारम `` 10.123 '', वा DECNET होस्ट नामको ठेगाना हो। [डेकनेट होस्ट नाम समर्थन केवल अट्रिक्स प्रणालीहरूमा उपलब्ध छ जुन DECNET चलाउन कन्फिगर गरिएको छ।]

डेनेटनेट डस्ट होस्ट

सही यदि DECNET गन्तव्य ठेगाना होस्ट हो

डेकनेट होस्ट होस्ट

ठीक छ भने यदि DECNET स्रोत वा गन्तव्य ठेगाना होस्ट हो

ip , ip6 , arp , rarp , atalk , aarp , decnet , iso , stp , ipx , netbeui

का लागि संक्षिप्त:

ईथर प्रोटो पी

जहाँ पी माथिको प्रोटोकॉल मध्ये एक हो।

लैटिन , एमओपीआरसी , एमओपीडीएल

का लागि संक्षिप्त:

ईथर प्रोटो पी

जहाँ पी माथिको प्रोटोकॉल मध्ये एक हो। ध्यान दिनुहोस् कि tcpdump ले अहिले यी प्रोटोकलहरू कसरी पार्स गर्ने भनेर थाहा छैन।

vlan [vlan_id]

सही यदि पैकेट IEEE 802.1Q VLAN प्याकेट हो। यदि [vlan_id] तोकिएको छ, केवल साँचो छ प्याकेट निर्दिष्ट vlan_id छ । ध्यान दिनुहोस् कि पहिलो vlan खोजशब्द मा अभिव्यक्ति को सामना गर्दछ कि धारणा मा शेष अभिव्यक्ति को लागि decoding offsets परिवर्तन छ कि पैकेट एक VLAN पैकेट हो।

tcp , udp , icmp

का लागि संक्षिप्त:

ip proto p or ip6 proto p

जहाँ पी माथिको प्रोटोकॉल मध्ये एक हो।

आईओओ प्रोटो प्रोटोकल

सही यदि प्याकेट प्रोटोकल प्रकार प्रोटोकॉल को ओएसआई प्याकेट हो। प्रोटोकल एक संख्या वा एक नाम clnp , esis , or isis हुन सक्छ।

clnp , esis , isis

का लागि संक्षिप्त:

iso proto p

जहाँ पी माथिको प्रोटोकॉल मध्ये एक हो। ध्यान दिनुहोस् कि tcpdump ले यी प्रोटोकॉल पार्सिङको अपूर्ण कार्य गर्दछ।

expr relop expr

सही यदि सम्बन्ध छ भने, जहाँ सम्बन्धित एक छ, <,> =, <=, = ,! =, र expr एक गणित अभिव्यक्ति हो जसमा पूर्णांक constants (मानक सी सिंकमा व्यक्त गरिएको) बाट बनाइएको हो, सामान्य बाइनरी अपरेटरहरू + + , -, *, /, र, |], लम्बाइ अपरेटर, र विशेष प्याकेट डाटा पहुँचकर्ताहरू। प्याकेट भित्र डेटा पहुँच गर्न, निम्न वाक्य रचनाको प्रयोग गर्नुहोस्:

proto [ expr : आकार ]

प्रोटो ईथर, एफडीआई, ट्र, पीपीपी, पर्ची, लिङ्क, आईपी, आरआर, rarp, tcp, udp, icmp वा ip6 मध्ये एक हो, र सूचकांक अपरेसनको लागि प्रोटोकल लेयरलाई संकेत गर्दछ। ( ईथर, fddi, tr, ppp, slip र सबै लिङ्क लिङ्कमा उल्लेख गर्नुहोस्।) नोट गर्नुहोस् कि tcp, udp र अन्य माथिल्लो परत प्रोटोकल प्रकारहरू IPv4 मा मात्र लागू हुन्छ IPv6 (यो भविष्यमा निश्चित गरिनेछ)। बाइट अफसेट, संकेत गरिएको प्रोटोकल तहको सम्बन्धमा, expr द्वारा दिइएको छ। आकार वैकल्पिक छ र ब्याज को क्षेत्र मा बाइट्स को संख्या इंगित गर्दछ; यो या तो एक, दुई, वा चार हुन सक्छ, र एक को लागि डिफल्ट। लम्बाइ अपरेटर, जोशब्द लीन द्वारा संकेत गरिएको, प्याकेट को लम्बाइ दिन्छ।

उदाहरणको लागि, ` ईथर [0] र 1! = 0 'सबै मल्टीसेस्ट ट्राफिक छ। अभिव्यक्ति ` आईपी ​​[0] र 0xf! = 5 'विकल्पहरूसँग सबै आईपी प्याकेटहरू समाविष्ट गर्दछ। अभिव्यक्ति ` आईपी ​​[6: 2] र 0x1fff = 0 'केवल अनरेखाग्रामित डेटाट्यागहरू र टुक्रिएको डेटाग्रामको शून्य कोच गर्दछ। यो जाँच स्पष्ट रूपमा Tcpudp सूचकांक अपरेसनमा लागू हुन्छ। उदाहरणका लागि, tcp [0] सधैँ टीकेसी हेडरको पहिलो बाइटको मतलब छ, र कहिलेकाहीं हस्तक्षेप टुक्राको पहिलो बाइटको मतलब छैन।

केहि offsets र क्षेत्र मानहरू संख्यात्मक मानहरूको रूपमा नामहरूको रूपमा व्यक्त गर्न सकिन्छ। निम्न प्रोटोकल हेडर फिल्ड अफसेटहरू उपलब्ध छन्: icmptype (आईसीएमपी टाइप फिल्ड), icmpcode (ICMP कोड फिल्ड), र tcpflags (TCP झण्डा क्षेत्र)।

निम्न आईसीएमपी प्रकार फिल्ड मानहरू उपलब्ध छन्: icmp-echoreply , icmp-unreach , icmp-redirect , icmp-echo , icmp-routeradvert , icmp-routersolicit , icmp-timxceed , icmp-paramprob , icmp-tstamp , icmp -स्टस्टैम्प्रेक , आईपीएमएम-आईरक , आईपीएमएम-आईरखाई , आईपीएमपी-मास्करेक , आईपीएमएम-मास्क्रेकर

निम्न TCP झण्डा क्षेत्र मानहरू उपलब्ध छन्: tcp-fin , tcp-syn , tcp-rst , tcp-push , tcp-push , tcp-ack , tcp-urg

Primitives को उपयोग गर्न को लागी संयुक्त हुन सक्छ:

प्रीमेटिभ र अपरेटरहरूको पेरिसमेन्टस्टेड समूह (पेन्डिङहरू शेलको लागि विशेष हुन्छन् र भाग्नै पर्दछ)।

निमन्त्रणा (` ! 'वा` होइन ')।

अभिलेख (` && 'वा` ')।

वैकल्पिक (` || 'वा` वा ')।

निमन्त्रणामा उच्च प्राथमिकता छ। वैकल्पिक र कन्टेन्टमेसनसँग समान पूर्वनिर्धारित छ र दाँयासँग बाँया सम्बद्ध। ध्यान दिनुहोस् कि स्पष्ट टोकनहरू, जक्सटपरेसन छैन, अब कन्टेनरेशनको लागि आवश्यक छ।

यदि एक पहिचानकर्ता बिना कीवर्ड बिना दिइएको छ, सबै भन्दा हाल को खोजशब्द को लागी गरिन्छ। उदाहरणका लागि,

बनाम होस्ट र इक्का छैन

छोटो छ

बनाम होस्ट र होस्ट इस

जसको साथ भ्रमित हुनु हुँदैन

होइन (होस्ट बनाम वा इक्का)

अभिव्यक्ति आर्गुमेन्टहरू tcpdump मा एक बहस वा बहु तर्कको रूपमा जुनसुकै सुविधाजनक छ। सामान्यतया, यदि अभिव्यक्तिले शेल मेटाचुमेन्टहरू समावेश गर्दछ भने, यो एकल, उद्धृत तर्कको रूपमा यसलाई पारित गर्न सजिलो छ। बहु तर्कहरू पार्स हुनु अघि रिक्त स्थानहरूसँग समेटिएको छ।

उदाहरणहरू

आइपुगेको आइपुग्दा सबै प्याकेटहरू छाप्न वा छाप्नको लागि:

tcpdump होस्ट सन्डाउन

हलिओस बीचमा ट्राफिक प्रिन्ट गर्न वा गरम वा अक :

tcpdump होस्ट हेलिओस र \ (हट वा असे \)

हेइसीस को छोडेर एसी र कुनै होस्ट बीच सबै आईप प्याकेटहरू प्रिन्ट गर्नको लागि:

tcpdump ip होस्ट ace र हेलोस छैन

बर्कले मा स्थानीय होस्टहरू र होस्टहरू बीच सबै ट्राफिक प्रिन्ट गर्न:

tcpdump net ucb-ether

इन्टरनेट गेटवे स्नअप मार्फत सबै फाईप ट्राफिक प्रिन्ट गर्नको लागी: (ध्यान दिनुहोस् कि अभिव्यक्ति उद्धृत गर्न को लागी (mis-) पर्दाहरु को व्याख्या गर्न को लागी):

tcpdump 'गेटवे स्नअप र (पोर्ट ftp वा ftp-data)'

ट्राफिक प्रिन्ट गर्नको लागी न त स्थानीय स्थानीय होस्टहरूको लागि उपयुक्त हुन्छ (यदि तपाइँ एक अर्को नेटमा गेटवे गर्नुहुन्छ, यो सामानले यसलाई तपाईंको स्थानीय नेटमा कहिल्यै बनाउदैन)।

tcpdump आईपी र net localnet net

प्रत्येक TCP कुराकानीको सुरु र अन्त्य प्याकेटहरू (SYN र FIN प्याकेट) प्रिन्ट गर्नको लागि जुन गैर-स्थानीय होस्ट समावेश गर्दछ।

tcpdump 'tcp [tcpflags] & (tcp-syn | tcp-fin)! = 0 र n src and dst net localnet '

576 बाइट्स भन्दा लामो आईपी प्याकेट प्रिन्ट गर्न गेटवे स्नअप मा पठाइयो:

tcpdump 'गेटवे स्नअप र आईपी [2: 2]> 576'

आईपी ​​प्रसारण वा बहुविध प्याकेट प्रिन्ट गर्न ईथरनेट प्रसारण वा मल्टीसेस्ट मार्फत पठाइएको थिएन :

tcpdump 'ether [0] र 1 = 0 रआईपी [16]> = 224'

सबै आईसीएमपी प्याकेटहरू मुद्रित गर्ने अनुरोधहरू जुनसुकै अनुरोधहरू / जवाफहरू होइनन् (जस्तै, पिंग प्याकेटहरू होइन):

tcpdump 'icmp [icmptype]! = icmp-echo and icmp [icmptype]! = icmp-echoreply'

आउटपुट

Tcpdump को उत्पादन प्रोटोकल निर्भर छ। निम्नले छोटो विवरण र अधिकांश स्वरूपहरूको उदाहरण दिन्छ।

लिंक स्तर हेडरहरू

यदि '-e' विकल्प दिइएको छ भने, लिङ्क स्तर हेडर मुद्रित गरिएको छ। ईथरनेटहरूमा, स्रोत र गन्तव्य ठेगानाहरू, प्रोटोकल र प्याकेट लम्बाइ प्रिन्ट गरिएको छ।

FDDI सञ्जालमा, '-e' विकल्पले tcpdump `फ्रेम नियन्त्रण 'फील्ड, स्रोत र गन्तव्य ठेगानाहरू र प्याकेट लम्बाइ प्रिन्ट गर्नको कारणले गर्दा। (`फ्रेम नियन्त्रण 'क्षेत्र बाँकी प्याकेटको व्याख्या नियन्त्रण गर्दछ। सामान्य प्याकेटहरू (जस्तै आईपी डेटाग्रामहरू)` async' प्याकेट हो जुन 0 र 7 बीच प्राथमिकता मानको साथ; उदाहरणका लागि ` async4 '। प्याकेटहरु लाई एक 802.2 तार्किक लिंक कंट्रोल (LLC) पैकेट शामिल गरिन्छ; LLC हेडर छ कि यदि यो एक आईएसओ डेटाट्राम या एक तथाकथित SNAP पैकेट छैन।

टोकन रङ सञ्जालहरूमा, 'ए' विकल्पले tcpdump `पहुँच नियन्त्रण 'र` फ्रेम नियन्त्रण' फिल्डहरू, स्रोत र गन्तव्य ठेगानाहरू र प्याकेट लम्बाइ प्रिन्ट गर्न अनुमति दिन्छ। FDDI नेटवर्कको रूपमा, प्याकेटहरूलाई LLC प्याकेट समावेश गर्न लगाईन्छ। चाहे पनि 'ई' विकल्प निर्दिष्ट गरिएको छैन वा होइन, स्रोत मार्गनिर्धारित प्याकेटका लागि स्रोत मार्ग जानकारी छापिएको छ।

(एनबी: निम्न विवरण RFC-1144 मा वर्णन गरिएको SLIP संपीडन एल्गोरिदम संग पहिचान को लागी मानिन्छ।)

SLIP लिङ्कहरूमा, एक दिशा सूचक (`` I '' इनबाउन्डको लागि, `` ओ '' आउटबाउन्डको लागि), प्याकेट प्रकार र सङ्कुचन जानकारी प्रिन्ट गरिएको छ। प्याकेट प्रकार पहिलो छ छापिएको छ। तीन प्रकार आईप , utcp , र ctcp होआईप प्याकेटहरूको लागि थप लिंक जानकारी मुद्रित गरिएको छैन। TCP प्याकेटहरूको लागि, जडान पहिचानकर्ता प्रकार पछि मुद्रण गरिन्छ। यदि प्याकेट संकुचित हुन्छ भने यसको यसको एन्कोड गरिएको हेडर मुद्रित गरिएको छ। विशेष मामलाहरु * S + n* SA + n को रूप मा मुद्रित गरिन्छ, जहाँ n हो जसको अनुक्रम अनुक्रम संख्या (वा अनुक्रम संख्या र डेक) बदल्यो। यदि यो एक विशेष मामला होइन, शून्य वा थप परिवर्तनहरू मुद्रण गरिएका छन्। यू (तत्काल सूचक), डब्ल्यू (सञ्झ्याल), ए (एक), एस (अनुक्रम नम्बर), र म (पैकेट आईडी) द्वारा एक संकेत संकेत संकेत गरिएको छ, पछि एक डेल्टा (+ n वा - एन), वा नयाँ मान (= n)। अन्तमा, प्याकेट र संकुचित हेडर लम्बाइमा डेटाको मात्रा छापिएको छ।

उदाहरणका लागि, निम्न रेखाले एक आउटबाउन्ड संकुचित टीसीसी प्याकेट देखाउँछ, एक निस्क्रिय जडान पहिचानकर्तासँग; डेक 6 द्वारा बदल्यो, 4 9 द्वारा अनुक्रम संख्या, र पैकेट आईडी 6 द्वारा; त्यहाँ डाटाको 3 बाइट्स र संकुचित हेडरको 6 बाइट्स छन्:

O ctcp * A + 6 S + 49 I + 6 3 (6)

ARP / RARP प्याकेटहरू

Arp / rarp आउटपुट अनुरोध र यसको तर्क प्रकार देखाउँछ। ढाँचा आत्म व्याख्यात्मक हुनुको उद्देश्य हो। यहाँ सीएसम होस्ट गर्न होस्ट rtsg बाट `rlogin 'सुरुबाट लिइएको एउटा छोटो नमूना हो:

त्यसो भए उनीहरुसँगको सम्बन्धको बारेमा जानकारी गराउन सक्नु हुन्छ

पहिलो रेखा भन्छिन् कि आरटीएसले इन्टरनेट होस्ट सीएसमको ईथरनेट ठेगानाको लागि सोध्नु भएको एक आरआर प्याकेट पठायो। सीएसम यसको एथरनेट ठेगानाको साथ जवाफहरू (यस उदाहरणमा, ईथरनेट ठेगानाहरू कम बिन्दुमा केप्स र इन्टरनेट ठेगानाहरूमा छन्)।

यदि हामीले tcpdump - n :

arp who-128.3.254.6 128.3.254.68 बताउनुहोस् arp जवाफ 128.3.254.6 मा 02: 07: 01: 00: 01: c4

यदि हामीले tcpdump -e गरेको छ भने, पहिलो तथ्य प्याकेट प्रसारण गरिएको छ र दोस्रो हो बिन्दुमा देखिनेछ:

आरटीएसजी प्रसारण 0806 64: arp who-has csam भन्छन् rtsg CSAM RTSG 0806 64: arp answer csam is at at CSAM

पहिलो प्याकेट को लागि यो यसो भन्छ कि ईथरनेट स्रोत ठेगाना RTSG हो, गन्तव्य ईथरनेट प्रसारण ठेगाना हो, टाइप फिल्ड हेक्स 0806 (प्रकार ETHER_ARP टाइप) र कुल लम्बाइ 64 बाइट्स थियो।

टीसीपी प्याकेटहरू

(एनबी: निम्न विवरण RFC-793 मा वर्णित TCP प्रोटोकल संग पहिचान को लागी मानिन्छ। यदि तपाईंलाई प्रोटोकॉल संग परिचित छैन, न त यस विवरण को न त tcpdump तपाईं को धेरै प्रयोग को लागि हुनेछ।)

टीसीपी प्रोटोकल लाइनको सामान्य ढाँचा हो:

स्रोत> dst: झण्डा डेटा-seqno ack विन्डो तत्काल विकल्पहरू

Srcdst स्रोत र गन्तव्य आईपी ठेगानाहरू र पोर्टहरू हुन्। झण्डा एस (SYN), एफ (फिन), P (PUSH) वा R (RST) को एक संयोजन हो या एक `। ' (झण्डाहरू छैनन्)। डेटा-seqno यस प्याकेट मा डेटा द्वारा कवर अनुक्रम स्पेस को भाग को वर्णन गर्दछ (तल उदाहरण को देखें)। Ack यस जडानमा अन्य दिशाको अपेक्षा गरेको अर्को डेटाको क्रम संख्या हो। सञ्झ्याल प्राप्त बफर स्पेसको बाइटको संख्या यस जडानमा अर्को दिशा उपलब्ध छ। Urg इंगित गर्दछ कि प्याकेट मा `जरूरी 'डेटा छ। विकल्पहरू टीकेपी विकल्पहरू कोण कोष्ठकमा संलग्न छन् (जस्तै, )।

एसआरसी, डीएसटीझण्डाहरू सधैं प्रस्तुत छन्। अन्य क्षेत्र प्याकेट को टीसीपी प्रोटोकॉल हेडर को सामाग्री मा निर्भर गर्दछ र केवल उपयुक्त हो आउटपुट हो।

यहाँ सीएसएस होस्ट गर्न होस्टिंग rtsg बाट एक rlogin को खुल्ला भाग हो।

rtsg.1023> csam.login: S 768512: 768512 (0) win 4096 csam.login> rtsg.1023: s 947648: 947648 (0) ack 768513 win 4096 rtsg.1023> csam। लग - इन: । Ack 1 win 4096 rtsg.1023> csam.login: p 1: 2 (1) ack 1 win 4096 csam.login> rtsg.1023:। Ack 2 win 4096 rtsg.1023> csam.login: p 2:21 (1 9) ack 1 win 4096 csam.login> rtsg.1023: p 1: 2 (1) ack 21 win 4077 csam.login> rtsg.1023: P 2: 3 (1) ack 21 win 4077 urgent 1 csam.login> rtsg.1023: p 3: 4 (1) ack 21 win 4077 urgent 1

पहिलो रेखा भन्छिन् कि tcp पोर्ट 1023 rtsg मा एक प्याकेट सीएसएसमा पोर्ट लगइनमा पठाइयो। एस संकेत गर्दछ कि SYN झण्डा सेट गरिएको थियो। प्याकेट अनुक्रम नम्बर 768512 थियो र यसमा कुनै डाटा छैन। (नोटिस पहिलो हो: अन्तिम (nbytes) 'जसको अर्थ `अनुक्रम नम्बरहरू पहिला माथि तर अन्तिम अन्त जुन प्रयोगकर्ता डेटाको nbytes बाइट छ।') त्यहाँ सुँगुर समर्थित ब्याक थिएन, उपलब्ध प्राप्त सञ्झ्याल 40 9 9 बाइट्स थियो र त्यहाँ 1024 बाइट्स को एमएसएस अनुरोध गर्ने अधिकतम-खण्ड-आकार विकल्प थियो।

सीएसएम एक समान प्याकेट संग जवाफहरू बाहेक अरूले Rtsg को SYN को लागि सुर्खेत-समर्थित ब्याक समावेश गर्दछ। त्यसो भए उनीहरुसँगको कुराकानी The `। ' मतलब कुनै झण्डा सेट गरिएको थिएन। प्याकेटले कुनै डेटा समावेश गर्दैन त्यसैले त्यहाँ कुनै डेटा अनुक्रम नम्बर छैन। ध्यान दिनुहोस् कि डेक अनुक्रम नम्बर एउटा सानो पूर्णांक हो (1)। पहिलो पटक tcpdump ले tcp `कुराकानी 'देख्छ, यसले प्याकेटबाट अनुक्रम नम्बर प्रिन्ट गर्दछ। कुराकानीको पछिल्ला प्याकेटहरूमा, हालको प्याकेटको अनुक्रम नम्बर र यस प्रारम्भिक क्रम नम्बरको बीचमा फरक छ। यसको अर्थ छ कि पहिलो पछाडि क्रम अनुक्रमणिकाले कुराकानीको डेटा स्ट्रीममा सापेक्ष बाइट स्थानहरूको रूपमा व्याख्या गर्न सकिन्छ (पहिलो डेटा प्रत्येक `` 'हुनुको दिशा बाइट)। `-S 'यस सुविधालाई ओभरराइड गर्नेछ, जुन मूल अनुक्रम नम्बरहरू आउटपुट हुन सक्छ।

6 औं मा, Rtsg डेटा को बोस 1 9 बाइट्स (बाइट्स 2 देखि 20 rtsg -> सीएसएस पक्ष को बातचीत) पठाउँछ। PUSH झण्डा प्याकेटमा सेट गरिएको छ। सातौं लाइनमा, सीएसएस भन्छन् कि यो आरएसएस द्वारा पठाएको डेटा प्राप्त भएको छ तर बाइट सहित 21. यस डाटा को अधिकांश जाहिरा तौर देखि गर्तिका बफर मा बैठे पछि देखि सीएसएस को प्राप्त खिडकी 1 9 बाइट्स सानो छ। सीएसम यस प्याकेट मा rtsg मा डेटा को एक बाइट पनि पठाउँछ। 8 औं र 9 औं रेखाहरूमा, सीएसएसले तुरुन्त, धक्का लगाइएको डेटा को दुई बाइटहरू rtsg लाई पठाउँछ।

यदि स्न्यापशट सानो थियो कि tcpdump पूर्ण TCP हेडर समात्न सकेन, यो हेडरको धेरै व्याख्या गर्दछ र यो रिपोर्ट गर्दछ `` [| tcp ] '' बाँकी संकेत गर्नका लागि व्याख्या गर्न सकिँदैन। यदि हेडरले बोगु विकल्प समावेश गर्दछ (जुन धेरै सानो वा हेडरको अन्त्य भन्दा बाहिर छ), tcpdump ले यसलाई `` [ बिजुली अप्ट ] '' को रूपमा रिपोर्ट गर्दछ र कुनै विकल्पहरू बुझ्दैन (किनभने यो असम्भव छ भन्न सकिन्छ उनी कहाँ सुरु गर्छन्)। यदि हेडर लम्बाई विकल्पहरू संकेत गर्दछ भने आईपी डेटा रेखा लम्बाई वास्तवमा त्यहाँ विकल्पहरूको लागि पर्याप्त लामो छैन, tcpdump यसलाई `` [ खराब HDR लम्बाई ] '' को रूपमा रिपोर्ट गर्दछ।

विशेष ध्वज संयोजनको साथ टीसीपी प्याकेट क्याप्चर गर्दै (सिएन-एसीके, यूआरजी-एसीके, आदि)

त्यहाँ TCP हेडरको नियन्त्रण बिट्स सेक्शनमा 8 बिटहरू छन्:

CWR | ECE | URG | ACK | PSH | आरएसटी | SYN | FIN

मानौं कि हामी TCP जडान स्थापनामा प्रयोग गरिएका प्याकेटहरू हेर्न चाहन्छौं। याद गर्नुहोस् कि TCP ले 3-बाटो ह्याण्डशेक प्रोटोकल प्रयोग गर्दछ जब नयाँ जडान सुरु गर्छ; TCP नियन्त्रण बिट्सको सम्बन्धमा जडान अनुक्रम हो

1) कलरले सिएन पठाउँदछ

2) प्राप्तकर्ता SYN, ACK संग प्रतिक्रिया

3) कलर ACK पठाउँदछ

अब हामी प्याकेटहरू कब्जा गर्न चाहन्छौं जुन केवल SYN बिट सेट (चरण 1) छ। ध्यान दिनुहोस् कि हामी चरण 2 (SYN-ACK) बाट प्याकेटहरू चाहँदैनौं, केवल एक सादा सुरुवात SYN। हामीलाई के आवश्यकता छ tcpdump को लागि एक सही फिल्टर अभिव्यक्ति।

कुनै विकल्प बिना TCP हेडरको संरचना सम्झनुहोस्:

0 15 31 ----------------------------------------------- ------------------ | स्रोत पोर्ट | गन्तव्य पोर्ट | -------------------------------------------------- --------------- | अनुक्रम संख्या | -------------------------------------------------- --------------- | स्वीकृति संख्या | -------------------------------------------------- --------------- | HL | rsvd | C | E | U | A | P | R | S | F | सञ्झ्याल आकार | -------------------------------------------------- --------------- | टीसीपी चेकसम | तत्काल सूचक | -------------------------------------------------- ---------------

एक टीसीपी हेडर सामान्यतया 20 अक्टोट डेटा राख्छ, जब सम्म विकल्पहरू उपस्थित छैनन्। ग्राफको पहिलो रेखा ओपेट्स 0 - 3 समावेश गर्दछ, दोस्रो रेखा ओक्टेट 4 - 7 लाई देखाउँछ।

0 को साथ गणना गर्न सुरु, प्रासंगिक TCP नियन्त्रण बिट ओक्ट 13 मा निहित छन्:

0 7 | 15 | 23 | 31 ---------------- | --------------- | --------------- | ---------------- | HL | rsvd | C | E | U | A | P | R | S | F | सञ्झ्याल आकार | ---------------- | --------------- | --------------- | - --------------- | | 13 औं ओक्टेट | | |

चिसो ओकेटमा नजिकको नजर राख्नुहोस्। 13:

| | | --------------- | | C | E | U | A | P | R | S | F | | --------------- | | 7 5 3 0 |

यी TCP नियन्त्रण बिट्स हामी रुचि राख्दछौं। हामी यस ओक्टेटमा 0 देखि 7 सम्म दाँया बायाँबाट बायाँ बायाँ छौँ, त्यसैले PSH बिट बिहि संख्या 3 छ, जबकि यूआरजी बिट नम्बर 5 हो।

याद गर्नुहोस् कि हामी केवल SYN सेटसँग प्याकेटहरू खिच्न चाहन्छौं। आउनुहोस् हेर्नुहोस् ओक्टेट 13 को के हुन्छ यदि एक टीसीसी डेटाग्राम SYN बिट यसको हेडरमा सेट संग आउँछ:

| C | E | U | A | P | R | S | F | | --------------- | | 0 0 0 0 1 0 | | --------------- | | 7 6 5 4 3 2 1 0 |

नियन्त्रण बिट्स सेक्शनमा हेर्दै हामी हेर्छौं कि केवल बिट नम्बर 1 (SYN) सेट गरिएको छ।

मानिन्छ कि ओक्टेट नम्बर 13 नेटवर्क बाइट अर्डरमा 8-बिट अज्ञात अज्ञात पूर्णाङ्क हो, यस ओक्टेटको बाइनरी मान हो।

00000010

र यसको दशमलव प्रतिनिधित्व हो

7 6 5 4 3 2 1 0 0 * 2 + 0 * 2 + 0 * 2 + 0 * 2 + 0 * 2 + 0 * 2 + 1 * 2 + 0 * 2 = 2

हामी लगभग सकिए पछि, किनकि हामी जान्दछौं कि यदि मात्र SYN सेट गरिएको छ भने, TCP हेडरमा 13 औं ओक्टेटको मान, जब सञ्जाल बाइट अर्डरमा 8-बिट अकस्माग इनटेजरको रूपमा व्याख्या गरिएको छ भने, अवश्य 2 हुनुपर्छ।

यो सम्बन्धको रूपमा व्यक्त गर्न सकिन्छ

tcp [13] == 2

हामी यो अभिव्यक्ति प्रयोग गर्न सक्नुहुनेछ tcpdump को लागि फिल्टरको रूपमा प्याकेटहरू हेर्न को लागी केवल SYN सेट छ:

tcpdump -i xl0 tcp [13] == 2

अभिव्यक्तिले भन्छ "" एक टीसीपी डेटाग्रामको 13 औं ओक्टेट दशमलव मान 2 "लाई, जुन वास्तवमा हामी चाहन्छौं।

अब, मानौं कि हामी SYN प्याकेटहरू खिच्न आवश्यक छ, तर हामी ध्यान गर्दैनौं कि ACK वा कुनै अन्य TCP नियन्त्रण बिट एकै समयमा सेट गरिएको छ भने। आउनुहोस् हेर्नुहोस् ओक्टेट 13 सम्म के हुन्छ जब SYN-ACK सेटको साथ TCP डेटाट आउछ:

| C | E | U | A | P | R | S | F | | --------------- | | 0 0 0 1 0 0 1 0 | | --------------- | | 7 6 5 4 3 2 1 0 |

अहिले बिट्स 1 र 4 13 औं ओक्टेटमा सेट गरिएका छन्। ओक्टेट 13 को बाइनरी मान हो


00010010

जसले दशमलवमा अनुवाद गर्छ

7 6 5 4 3 2 1 0 0 * 2 + 0 * 2 + 0 * 2 + 1 * 2 + 0 * 2 + 0 * 2 + 1 * 2 + 0 * 2 = 18

अब हामी केवल 'tcp [13] == 18' tcpdump फिल्टर अभिव्यक्तिमा मात्र प्रयोग गर्न सक्दैनौं, किनभने यसले केवल ती प्याकेटहरू चयन गर्नेछ जुन सिङ्क-एसीके सेट छ, तर तिनीहरू सिने सेट मात्र होइनन्। सम्झनुहोस् कि हामी कुनै परवाह गर्दैनौं कि ACK वा कुनै अन्य नियन्त्रण बिट सेट भएको छ जब सम्म SYN सेट छ।

हाम्रो लक्ष्य प्राप्त गर्न, हामीलाई तार्किक र आवश्यक छ SYct bit को संरक्षण को लागि केहि अन्य मूल्य संग ओक्टरी 13 को बाइनरी मान। हामी जान्दछौं कि हामी SYN लाई कुनै पनि अवस्थामा सेट गर्न चाहन्छौं, त्यसैले हामी तार्किक हुनेछौं र 13 औं ओकेटमा मान SYN को बाइनरी मानको साथ मान गर्दछौं:

00010010 SYN-ACK 00000010 SYN र 00000010 (हामी SYN चाहनुहुन्छ र 00000010 (हामी SYN चाहनुहुन्छ) -------- -------- = 00000010 = 00000010

हामी देख्छौं कि यो र अपरेसनले परिणामलाई उद्धार गर्दछ जुन चाहे ACK वा अर्को TCP नियन्त्रण बिट सेट छ। AND मानको दशमलव प्रतिनिधित्व र यस अपरेसनको नतीजा 2 (बाइनरी 00000010) हो, त्यसैले हामी जान्दछौं कि SYN सँग प्याकेटहरूका लागि निम्न सम्बन्ध सेट गरिएको छ:

((ओक्टेट 13 को मूल्य) र (2)) == (2)

यसले हामीलाई tcpdump फिल्टर अभिव्यक्तिमा बताउँछ

tcpdump -i xl0 'tcp [13] र 2 == 2'

ध्यान दिनुहोस् कि तपाईँले शिलबाट AND ('&') विशेष क्यारेक्टर लुकाउन अभिव्यक्तिमा एकल उद्धरण वा ब्याकस्ल्याश प्रयोग गर्नुपर्छ।

UDP प्याकेटहरू

UDP ढाँचा यस rwho प्याकेट द्वारा चित्रित गरिएको छ:

actinide.who> broadcast.who: udp 84

यो भन्नुहुन्छ कि होस्ट एन्टीनाइडमा होस्ट पोर्टमा होड डेटग्राम पठाइएको छ जसले होस्ट प्रसारणमा , इन्टरनेट प्रसारण ठेगाना। प्याकेटले प्रयोगकर्ता डेटाको 84 बाइट समावेश गर्दछ।

केहि UDP सेवाहरू (स्रोत वा गन्तव्य पोर्ट नम्बर) द्वारा मान्यता प्राप्त छ र उच्च स्तरको प्रोटोकल जानकारी प्रिन्ट गरिएको छ। विशेष रूपमा, डोमेन नाम सेवा अनुरोधहरू (RFC-1034/1035) र Sun RPC कलहरू (RFC-1050) NFS लाई।

UDP नाम सर्भर अनुरोधहरू

(एनबी: निम्न विवरण RFC-1035 मा वर्णित डोमेन सेवा प्रोटोकॉल संग पहिचान को लागी मानिन्छ। यदि तपाईं प्रोटोकॉल संग परिचित नहीं हो, तो निम्न वर्णन ग्रीक मा लिखित प्रतीत हुनेछ।)

नाम सर्भर अनुरोधहरू स्वरूप ढाँचा छन्

स्रोत> dst: id op? झण्डा qtype qclass नाम (लेन) h2opolo.1538> helios.domain: 3+ ए? ucbvax.berkeley.edu। (37)

होस्ट h2opolo ucbvax.berkeley.edu नाम संग सम्बद्ध ठेगाना रेकर्ड (qtype = ए) को लागि हेलोसोस मा डोमेन सर्भर ले भन्यो। क्वेरी आईडी `3 'थियो। `+ 'ले प्रतिकृत झण्डा सेट गरिएको थियो पुनरावर्ती संकेत गर्दछ। क्वेरी लम्बाई 37 बाइट्स थियो, UDP र IP प्रोटोकल हेडरहरू सहित छैन। क्वेरी अपरेशन सामान्य एक थियो, प्रश्न , त्यसैले ओपन फील्ड हटाइयो। यदि ओशन केहि र थियो भने, यो `3 'र` +' को बीच मुद्रित भएको थियो। त्यसै गरी, qclass सामान्य एक थियो, C_IN र हटाइयो। कुनै अन्य qclass `A 'पछि तुरुन्तै प्रिन्ट गरिएको थियो।

केहि विसंगति जाँच गरीएको छ र हुन सक्छ स्क्वायरहरूमा थप क्षेत्रहरू संलग्न छन्: यदि प्रश्नमा जवाफ, प्राधिकरणका रेकर्डहरू वा अतिरिक्त रेकर्ड सेक्सन, गणना , एनस्काउन्ट , वा आर्सेन्ट मुद्रित गरिन्छ `[ n a] ',` [ n n ] 'वा `[au]' जहाँ n उपयुक्त गणना हो। यदि कुनै प्रतिक्रिया बिट्स सेट गरिएको हो (एए, आरए र रडको) वा `शून्य 'बिट्सहरू मध्ये बाइट दुई र तीनमा सेट गरिएका छन्,` [b2 & 3 = x ]' प्रिन्ट गरिएको छ, जहाँ एक्स को हेक्स मान हो। हेडर बाइट दुई र तीन।

UDP नाम सर्भर प्रतिक्रियाहरू

नाम सर्भर प्रतिक्रियाहरू ढाँचाका रूपमा ढाँचा छन्

src> dst: id op rcode झण्डा a / n / au प्रकार वर्ग डेटा (लेन) हेलियो.domain> h2opolo.1538: 3 3/3/7 ए 128.32.137.3 (273) helios.domain> h2opolo.1537: 2 एनएक्सडीएमएन * 0/1/0 (97)

पहिलो उदाहरणमा, हलिओमा h2opolo बाट क्वेरी id 3 लाई 3 जवाफ रेकर्डहरू, 3 नाम सर्भर रेकर्डहरू र 7 अतिरिक्त रेकर्डहरूसँग प्रतिक्रिया दिन्छन्। पहिलो उत्तर रेकर्ड टाइप ए (ठेगाना) र यसको डेटा इन्टरनेट ठेगाना 128.32.137.3 हो। प्रतिक्रियाको कुल साइज 273 बाइट थियो, यूडीपी र आईपी हेडरहरू बाहेक। ओप (क्वेरी) र प्रतिक्रिया कोड (NoError) छोडेका थिए, जस्तै ए रेकर्डको क्लास (C_IN) थियो।

दोस्रो उदाहरणमा, हलिओसले कुनै जवाफको साथ एक अज्ञात डोमेन (एनएक्सडोमेन) को प्रतिक्रिया कोडको साथ क्वेरी 2 को जवाफ दिन्छ, एक नाम सर्भर र कुनै प्राधिकरण रेकर्ड। `* 'ले प्रमाणित गर्दछ कि प्राधिकृत उत्तर बिट सेट गरिएको थियो। किनकी कुनै जवाफ थिएन, कुनै प्रकार, वर्ग वा डेटा छापिएको थिएन।

अन्य झण्डा वर्णहरू जुन हुन सक्दछन् `- '(पुनरावृत्ति उपलब्ध, RA, सेट छैन ) र` |' (ट्रंक गरिएको सन्देश, टीसी, सेट)। यदि `प्रश्न 'सेक्सनमा बिल्कुल एक प्रविष्टि समावेश छैन भने,` [ n q]' छापिएको छ।

नोट गर्नुहोस् कि सर्भर अनुरोध र प्रतिक्रियाहरू ठूला हुन्छन् र 68 बाइटहरूको पूर्वनिर्धारित स्न्यापलिन हुन सकेन प्याकेट पर्याप्त प्याकेट प्रिन्ट गर्नको लागी। स्न्यापेल बढाउनको लागि -स- फ्ल्याग प्रयोग गर्नुहोस् यदि तपाईंलाई गम्भीर नाम सर्भर ट्राफिकको खोजी गर्न आवश्यक छ। ` -s 128 'मेरो लागि राम्रो काम गरेको छ।

SMB / CIFS डिकोडिङ

tcpdump अब UDP / 137, UDP / 138 र TCP / 139 मा डेटाको लागि व्यापक विस्तृत SMB / CIFS / NBT डिकोडिङ समावेश गर्दछ। आईपीएक्स र नेटबीईयू एसएमबी डाटाको केहि आदिम डिकोडिङ पनि गरिन्छ।

पूर्वनिर्धारित रूपमा एकदम कम से कम डिकोड गरिन्छ, यदि प्रयोग गरिन्छ भने अधिक विस्तृत डिकोड संग। चेतावनी दिनुहोस् कि साथ-साथ SMB प्याकेट एक पृष्ठ वा बढी लाग्न सक्छ, त्यसैले मात्र प्रयोग गर्नुहोस् - v यदि तपाई साँच्चिकै सबै गौरी विवरण चाहानुहुन्छ।

यदि तपाईं एसबीएम सत्रहरू युनिकोड स्ट्राइकहरू डिकोडिङ गर्दै हुनुहुन्छ भने तपाई पर्यावरण चर USE_UNICODE लाई 1 मा सेट गर्न चाहानुहुन्छ। युनिकोड सेटिङ्हरू स्वत: पहिचान गर्न प्याच स्वागत हुनेछ।

SMB प्याकेट ढाँचामा जानकारीको लागि र तपाइँका सबै क्षेत्रहरू कुन कुराले www.cifs.org वा पब / साम्बा / चश्मा / तपाईंको मनपर्ने samba.org आईना साइटमा डाइरेक्टरी हेर्नुहोस्। एसएमएम प्याचहरू एन्ड्रयू ट्रिडिगेल (tridge@samba.org) द्वारा लेखिएका थिए।

एनएफएस अनुरोध र जवाफ

सूर्य एनएफएस (सञ्जालफाइलप्रणाली) अनुरोधहरू र जवाफहरू प्रिन्ट गरिएका छन्:

src.xid> dst.nfs: len op args src.nfs> dst.xid: उत्तर stat len ​​op results sushi.6709> wrl.nfs: 112 readlink fh 21,24 / 10.73165 wrl.nfs> sushi.6709: ok ok 40 पढ्ने लिङ्क "../var" सुब्बत .2011: wrl.nfs: 144 खोज्नुहोस् fh 9, 74/40 9 9.6878 "xcolors" wrl.nfs> सुशी.201 .b: जवाफ दिनुहोस् 128 128 खोज्नुहोस् fh 9,74 / 4134.3150

पहिलो लाइनमा होस्ट सुशीले आईडी 670 9 को साथमा घुमाउने लेनदेन पठाउँदछ (नोट गर्नुहोस् कि स्रोत स्रोत हो भने निम्न स्रोत होस्टको स्रोत हो, स्रोत पोर्ट होइन )। अनुरोध 112 बाइट्स थियो, यूडीपी र आईपी हेडर को छोडेर। आपरेशन फाइल ह्यान्डल (एफएच) 21,24 / 10.73165711 9 मा पढ्ने लिंक (प्रतीकात्मक लिंक पढ्नुहोस्)। (यदि एक भाग्यमानी छ भने, यस अवस्थाको रूपमा, फाईल ह्यान्डललाई ठूलो, सानो यन्त्र नम्बर जोडाको रूपमा व्याख्या गर्न सकिन्छ, पछि इनकोड नम्बर र जेनेरेसन नम्बर।) जवाफहरू जवाफ दिनुहोस् `ठीक 'लिङ्कको सामग्रीको साथ।

तेस्रो लाइनमा सुशीले नामको ' xcolors ' डाइरेक्टरी 9 .74 / 40 9 9.6878 फाइलमा हेर्नको लागि wrl लाई सोध्छ। ध्यान दिनुहोस् कि छापिएको डेटाले सञ्चालन प्रकारमा निर्भर गर्दछ। यदि एनएफएस प्रोटोकल नमूको साथ पढ्नका लागि ढाँचा आत्म व्याख्यात्मक हुनुको उद्देश्य हो।

यदि the -v (verbose) झण्डा दिइएको छ भने, थप जानकारी छापिएको छ। उदाहरणका लागि:

सुशी.1372a> wrl.nfs: 148 पढें 21,11 / 12.195 8192 बाइट्स @ 24576 wrl.nfs> सुशी.1372a: उत्तर ठीक 1472 पढें आरईजी 100664 एड 417/0 एसजी 29388

(-v ले आईपी हेडर TTL, आईडी, लम्बाइ र विच्छेद क्षेत्रहरू पनि प्रिन्ट गर्दछ जुन यस उदाहरणबाट हटाइएको छ।) पहिलो लाइनमा सुशीले 8192 बाइट्स पढ्नका लागी 21,11 / 12.1 9 9 फाइलबाट बाइट अफसेट 24576. गलत जवाब `ok '; दोस्रो रेखामा देखाईएको प्याकेट जवाफको पहिलो भाग हो, र यसैले केवल 1472 बाइट लामो हुन्छ (अर्को बाइटहरू पछिल्लो टुक्राहरूमा पछ्याउनेछ, तर यी टुक्राहरूसँग NFS वा UDP शीर्षकहरू छैनन् र त्यसो गर्न सकिँदैन, फिल्टर अभिव्यक्ति प्रयोगमा निर्भर गर्दछ)। किनभने -v फ्ल्याग दिइएको छ, केही फाईल विशेषताहरू (जुन फाईल डेटाको साथमा फर्केका हुन्छन्) प्रिन्ट गरिएको छ: फाइल प्रकार (`` REG '', नियमित फाइलको लागि), फाइल मोड (अक्टोटलमा) यूआईडी र ग्रिड, र फाईल आकार।

यदि -v फ्ल्याग एक पटक भन्दा बढी दिइएको छ भने, अझ थप विवरण छापिएको छ।

नोट गर्नुहोस् कि एनएफएस अनुरोधहरू धेरै ठूला छन् र विस्तारको विस्तार मुद्रित गरिने छैन जब सम्म स्नैपलेन्स बढेको छैन। NFS ट्राफिक हेर्नको लागि ` -18 'को प्रयोग गरेर प्रयास गर्नुहोस्।

NFS जवाफ प्याकेट स्पष्ट रूपमा आरपीसी अपरेसन पहिचान गर्न सक्दैन। यसको सट्टा, tcpdump `हालको 'अनुरोधहरूको ट्रयाक राख्छ, र लेनदेन ID को प्रयोग गरेर जवाफहरूमा मेल खान्छ। यदि जवाफले सम्बन्धित अनुरोधलाई पछ्याउँदैन भने, यसले parsable हुन सक्दैन।

AFS अनुरोध र जवाफहरू

ट्रांसारिक AFS (एन्ड्रयू फाईल सिस्टम) अनुरोधहरू र जवाफहरू मुद्रित गरीन्छन्:

त्यसो भए उनीहरुसँगको सम्बन्धको बारेमा जानकारी गराउन सक्नु हुन्छ । 7001> pike.afsfs: rx डेटा एफएस कल पुरानो फिड 536876 964/1/1 ".newsrc.new" नयाँ फिड 536876 964/1/1 ".newsrc" pike.afsfs> elvis7001: rx डेटा fs जवाफ पुन: नामाकरण

पहिलो लाइनमा होस्ट एल्विसले पिकमा RX प्याकेट पठाउँदछ। यो fs (फाइलवेयर) सेवामा RX डेटा प्याकेट थियो, र RPC कलको सुरुवात हो। RPC कल एक नाम परिवर्तन गरिएको थियो, पुरानो डाइरेक्टरी फाइल आईडी 536876 964/1/1 को पुरानो फाइलनाम ``newsrc.new ', र 536876 964/1/1 को नयाँ डाइरेक्टरी फाइल र नयाँ फाइल नाम`। newsrc '। होस्ट पिकले पुन: नामाकरण कलमा RPC जवाफको साथ जवाफ दिन्छ (जुन सफल भयो, किनभने यो डेटा प्याकेट थियो र अविरूद्ध प्याकेट थिएन)।

सामान्यतया, सबै AFS RPCs कम्तिमा आरपीसी कल नाम द्वारा डिकोड गरिएको छ। प्रायः AFS RPCs कम्तीमा केही तर्कहरू (सामान्यतया केवल 'रोचक' तर्कहरू छन्, केही रोचक परिभाषाको लागि)।

ढाँचा स्वयं को वर्णन गर्न को लागी छ, तर यो सम्भवतः AFS र RX को कार्यकार्य देखि परिचित मान्छे को लागि उपयोगी छैन।

यदि the -v (verbose) झण्डा दुई पटक दिइएको छ, स्वीकृति प्याकेटहरू र थप हेडरको जानकारी प्रिन्ट गरिएको छ, जस्तै RX कल आईडी, कल नम्बर, अनुक्रम नम्बर, सीरियल नम्बर, र RX प्याकेट झण्डाहरू।

यदि -v फ्ल्याग दुई पटक दिइएको छ भने, थप जानकारी प्रिन्ट गरिएको छ, जस्तै RX कल आईडी, सीरियल नम्बर, र RX प्याकेट झण्डाहरू। एमटीयू वार्ता जानकारी पनि आरएक्सएक प्याकेटबाट छापिएको छ।

यदि -v फ्ल्यागलाई तीन चोटि दिइएको छ भने, सुरक्षा सूचकांक र सेवा आईडी प्रिन्ट गरिएको छ।

त्रुटि कोडहरू abort प्याकेटहरूका लागि मुद्रण गरिन्छ, Ubik बीकन प्याकेटहरूको अपवादको साथ (किनभने abort प्याकेटहरू Ubik प्रोटोकॉलका लागि हाँ मत सङ्केत गर्न प्रयोग गरिन्छ)।

ध्यान दिनुहोस् कि AFS अनुरोधहरू धेरै ठूला छन् र धेरै तर्कहरू मुद्रित नहुने छैनन् जब स्नैपलेन बढेको छैन। AFS ट्राफिक हेर्नको लागि ` -s 256 'को प्रयोग गरी हेर्नुहोस्।

AFS जवाफ प्याकेट स्पष्ट रूपमा RPC अपरेसन पहिचान गर्न सक्दैन। यसको सट्टा, tcpdump `हालैका 'अनुरोधहरूको ट्रयाक राख्छ, र कल नम्बर र सेवा आइडी प्रयोग गरी जवाफहरूमा मेल खान्छ। यदि जवाफले सम्बन्धित अनुरोधलाई पछ्याउँदैन भने, यसले parsable हुन सक्दैन।

केपी एप्लेट (डीडीपी यूडीपी)

UDP डेटाग्राममा encapsulated Appletalk डीडीपी प्याकेटहरू de-encapsulated र डीडीपी प्याकेट (जस्तै, सबै UDP हेडर जानकारी खारेज गरिएको छ) को रूपमा डम्प गरिएको हो। फाइल /etc/atalk.names नामहरू appletalk नेट र नोड नम्बरहरू अनुवाद गर्न प्रयोग गरिन्छ। यस फाइलमा लाइनहरू फारम छन्

नम्बर नाम 1.254 ईथर 16.1 आईडिया-नेट 1.254.110 ace

पहिलो दुई रेखाहरू appletalk सञ्जालहरूको नाम दिनुहोस्। तेस्रो रेखाले एक विशेष होस्टको नाम दिन्छ (होस्टमा नेटमा तेस्रो ओक्टेटमा गणना गरिएको छ - नेट नम्बरमा हुनुपर्छ दुई अक्टोटहरू र होस्ट नम्बरमा तीन ओक्टहरू हुनुपर्छ ।) नम्बर र नाम अलग हुनुपर्छ सेतोस्पेस (खाली वा ट्याबहरू) द्वारा। /etc/atalk.names फाइलमा खाली रेखाहरू वा टिप्पणी लाइनहरू (`# 'सँग सुरु हुने लाइनहरू) समावेश हुन सक्छ।

Appletalk ठेगानाहरू फारममा छापिएका छन्:

net.host.port 144.1.209.2> icsd-net.112.220 office.2> icsd-net.112.220 jssmag.149.235> icsd-net.2

(यदि /etc/atalk.names अवस्थितछैन वा केही appletalk होस्ट / नेट नम्बरका लागि प्रविष्टि समावेश गर्दैन, ठेगानाहरू अंकत्मक रूपमा छापिएको छ।) पहिलो उदाहरणमा, एनबीपी (डीडीपी पोर्ट 2) नेट 144.1 मा नोड 20 9 जो पोर्टमा सुन्नु भएको छ को लागी पठाइएको छ 220 को नेट आईडिया नोड 112 को। दोस्रो रेखा एउटै हो जुन स्रोत नोडको पूरा नाम ज्ञात छ (`कार्यालय ')। तेस्रो लाइन पोर्ट 235 बाट नेट jssmag नोड 149 मा पठाईएको छ कि आईआईडीडी-नेट एनबीपी पोर्टमा प्रसारण गर्न (नोट गर्नुहोस् कि होस्ट नाम (255) कुनै होस्ट नम्बरको साथ नै नेट नाम द्वारा संकेत गरिएको छैन - यसका लागि यो राम्रो विचार हो। नोड नामहरू र नेट नामहरू /etc/atalk.names मा फरक राख्नुहोस्)।

एनबीपी (नाम बाइन्डिंग प्रोटोकॉल) र एटीपी (Appletalk लेनदेन प्रोटोकॉल) पैकेटहरूले तिनीहरूको सामग्रीको व्याख्या गरेका छन्। अन्य प्रोटोकलले प्रोटोकॉल नामलाई मात्र डुप्लिकेट गर्दछ (वा नम्बर यदि प्रोटोकलको लागि कुनै नाम दर्ता गरिएको छैन) र प्याकेट साइज।

निम्न उदाहरणहरू जस्तै एनबीपी प्याकेटहरू ढाँचामा छन्:

icsd-net.112.220> jssmag.2: nbp-lkup 190: "=: लेजरराइटर @ *" jssmag.209.2> icsd-net.112.220: nbp-reply 190: "RM1140: लेजरराइटर @ *" 250 techpit.2> icsd -net.112.220: nbp-reply 190: "techpit: लेजरराइटर @ *" 186

पहिलो रेखा नेट icsd होस्ट 112 द्वारा पठाएको लेजरराइटरहरूको लागि नाम लिपअप अनुरोध हो र नेट जेम्सम्यागमा प्रसारण गर्दछ। लुकअपको लागि एनबीपी आईडी 190 हो। दोस्रो लाइनले यस अनुरोधको लागि जवाफ देखाउँछ (होस्ट गर्नुहोस् जुन यो होस्ट jssmag.209 बाट हो।) यो भन्नाले यसमा पोर्टफोलरको स्रोत हो "RM1140" को पोर्ट 250 मा दर्ता गरिएको छ। तेस्रो रेखाले अर्को अनुरोध भनेको अर्को अनुरोध हो भने होस्ट टेकपिटले पोर्ट 186 मा दर्ता गरिएको लेजरराइट्ट "टेकपिट" छ।

निम्न उदाहरणद्वारा ATP प्याकेट ढाँचा प्रदर्शन गरिएको छ:

jssmag.209.165> helios.132: atp-req 12266 <0-7> 0 xae030001 helios.132> jssmag.209.165: atp-resp 12266: 0 (512) 0xae040000 helios.132> jssmag.209.165: atp-resp 12266: 1 (512) 0xae040000 helios.132> jssmag.209.165: atp-resp 12266: 2 (512) 0xae040000 helios.132> jssmag.209.165: atp-resp 12266: 3 (512) 0xae040000 helios.132> jssmag.209.165: atp- resp 12266: 4 (512) 0xae040000 helios.132> jssmag.209.165: atp-resp 12266: 5 (512) 0xae040000 helios.132> jssmag.209.165: atp-resp 12266: 6 (512) 0xae040000 helios.132> jssmag। 20 9.165: atp-resp * 12266: 7 (512) 0xae040000 jssmag.209.165> helios.132: atp-req 12266 <3,5> 0xae030001 helios.132> jssmag.209.165: atp-resp 12266: 3 (512) 0xae040000 helios .132> jssmag.209.165: atp-resp 12266: 5 (512) 0xae040000 jssmag.209.165> helios.132: atp-rel 12266 <0-7> 0xae030001 jssmag.209.133> helios.132: atp-req * 12267 <0 -7> 0xae030002

Jssmag.209 8 पैकेट (`` 0 0>>) को अनुरोध गरेर होस्ट हेलोस संग लेनदेन आईडी 12266 शुरू गर्दछ। रेखाको अन्तमा हेक्स नम्बर अनुरोधमा `userdata 'फील्डको मान हो।

Helios 8 512-बाइट पैकेटहरूसँग जवाफ दिन्छ। `: अंक 'लेनदेन आईडी पछि प्याकेट अनुक्रम नम्बर लेनदेन मा प्रदान गर्दछ र parens मा संख्या पैकेट मा डेटा को मात्रा हो, एपीपी हेडर को छोडेर। प्याकेट 7 मा `* 'संकेत गर्दछ कि EOM बिट सेट गरियो।

Jssmag.209 त्यसपछि त्यसपछि प्याकेटहरू 3 र 5 पुन: हस्तान्तरण गर्न अनुरोध गर्दछ। हेलिओसले उनलाई रिजर्व गरे। Jssmag.209 लेनदेन रिलीज गर्दछ। अन्तमा, jssmag.209 अर्को अनुरोध सुरु गर्दछ। अनुरोधमा `* 'इंगित गर्दछ कि XO (` एकदम एक पटक') सेट गरिएको थिएन

आईपी ​​फ्रेगर्मेशन

फ्रगमेन्ट गरिएको इन्टरनेट डाटाट्रामहरू प्रिन्ट गरिएको छ

(frag id : size @ offset +) (frag id : size @ offset )

(पहिलो फारमले त्यहाँ धेरै टुक्राहरू संकेत गर्दछ। दोस्रोले यो अन्तिम टुक्रालाई संकेत गर्दछ।)

आईडी टुक्रा आईडी हो। साइज टुकडा आकार (बाइट्समा) IP हेडर को छोडेर हो। अफसेट यो टुक्राको अफसेट हो (बाइट्समा) मूल डेटाग्राममा।

टुक्रा जानकारी प्रत्येक टुक्राको लागि उत्पादन हो। पहिलो अंशमा उच्च तह प्रोटोकॉल हेडर समावेश छ र फ्रिक जानकारी प्रोटोकल जानकारी पछि मुद्रित हुन्छ। पहिला फ्रेग्रेन्टहरूमा उच्च स्तरको प्रोटोकॉल हेडर छैन र फ्रिक जानकारी स्रोत र गन्तव्य ठेगाना पछि मुद्रित हुन्छ। उदाहरणका लागि, यहाँ CSN जडानमा lbl-rtsg.arpa बाट arizona.edu बाट ftp को भाग हो जुन 576 बाइट डाटाट्यागहरू संभाल्न सकिँदैन:

arizona.ftp-data> rtsg.1170:। 1024: 1332 (308) 1 अंक 1 9 40 (5,5 5-5 मा लागी फ्रिज आर्योजोना> आरटीएस: (5 9 5 ए: 204 @ 328) rtsg.1170> arizona.ftp-data:। डेक 1536 जीत 2560

यहाँ नोट गर्न केहि चीजहरू छन्: पहिलो, दोस्रो लाइनमा ठेगाना पोर्ट पोर्ट समावेश गर्दैन। यो किनभने किनभने पहिलो टुक्रामा TCP प्रोटोकॉल जानकारी सबै छ र हामीलाई थाहा छैन कि क्या पोर्ट वा अनुक्रम नम्बरहरू पछि हामी टुक्राहरू प्रिन्ट गर्छौं। दोस्रो, पहिलो रेखामा टीसीपी अनुक्रम सूचना मुद्रित गरिएको छ भने त्यहाँ प्रयोगकर्ता डाटाको 308 बाइटहरू जब त्यहाँ, त्यहाँ 512 बाइटहरू छन् (पहिलो टुक्रामा 308 र दोस्रोमा 204)। यदि तपाइँ अनुक्रम स्पेसमा छेदहरू वा प्याकेटहरूसँग बक्स मिलाउने प्रयास गर्दै हुनुहुन्छ भने, यसले तपाईंलाई मूर्ख बनाउन सक्छ।

आईपीको साथमा एक प्याकेट टुक्रा झण्डा चिन्ह लगाइएको छ (डीएफ)

टाइमस्ट्याम्पहरू

पूर्वनिर्धारित रूपमा, सबै आउटपुट रेखाहरू पहिले टाइमस्ट्याम्प द्वारा पूर्वनिर्धारित हुन्छन्। टाइमस्ट्याम्प वर्तमान घडीको समय हो

hh: mm: ss.frac

र कर्नेलको घडीको रूपमा सही रूपमा छ। टाइमस्ट्याम्पले कर्नेललाई पहिलो पटक प्याकेट देखाउँदा समयलाई प्रतिबिम्बित गर्छ। समय अंतरालको लागि खातामा कुनै प्रयास गरिएको छैन जब इथरनेट इन्टरफेस तारबाट प्याकेट हटाइयो र कर्नेलले 'नयाँ प्याकेट' सर्भर गर्दा बीचमा अवरोध गर्दछ।

पनि हेर्नुहोस्

यातायात (1C), नाइट (4 पी), बीपीएफ (4), पीसीपी (3)

महत्वपूर्ण: तपाईको विशेष कम्प्युटरमा आदेश कसरी प्रयोग गरिन्छ भनेर हेर्नको लागि मानिसको आदेश ( % मानिस ) प्रयोग गर्नुहोस्।