Tcpdump - Linux ကိုစစ်ဌာနချုပ် - Unix စစ်ဌာနချုပ်

က NAME

tcpdump - ကွန်ယက်ပေါ်တွင်ယာဉ်အသွားအလာအရေးပေါ်သိမ်းထား

အနှစ်ချုပ်

[-adeflnNOpqRStuvxX] [-c ရေတွက်] tcpdump

[-C FILE_SIZE] [-F ဖိုင်]

[-i ကို interface] [-m module] [ဖိုင် -r]

[-s snaplen] [-T အမျိုးအစား] [-U အသုံးပြုသူ] [-w ဖိုင်]

[-e algo: လျှို့ဝှက်ချက်] [စကားရပ်]

DESCRIPTION

Tcpdump အဆိုပါ boolean စကားရပ်ကိုက်ညီသောကွန်ရက်တစ်ခု interface ပေါ်မှာ packets တွေကို၏ခေါင်းစီးများထွက်နေရိုက်ထုတ်။ ဒါဟာအစနှင့် / သို့မဟုတ်ပါကတစ်ဦးသည်ကယ်တင်ခြင်းသို့ရောက် packet ကိုဖိုင်ကနေဖတ်ရှုဖို့ထက် packets တွေကိုဖတ်ရှုဖို့ဖြစ်ပေါ်စေသည့် -r အလံနှင့်အတူကြောင့်နောက်ပိုင်းမှာခွဲခြမ်းစိတ်ဖြာများအတွက်ဖိုင်တစ်ဖိုင်မှ packet ကိုဒေတာသိမ်းဆည်းဖို့ကိုဖြစ်ပေါ်စေသည်သော -w အလံတွေနဲ့ run နိုင်ပါတယ် ကွန်ယက် interface ကိုမှသည်။ အားလုံးကိစ္စများတွင်စကားရပ်ကိုက်ညီသောသာ packets တွေကို tcpdump အားဖြင့်လုပ်ငန်းများ၌ပါလိမ့်မည်။

အဆိုပါ -c အလံတွေနဲ့ run မရလျှင်တစ်ဦး SIGINT signal ကို (နေထုတ်လုပ်လိုက်တဲ့, ဥပမာ, သင့် Interrupt ဇာတ်ကောင်စာရိုက်အသုံးပြုပုံပုံမှန်အားဖြင့်ထိန်းချုပ်-C) သို့မဟုတ် (ပုံမှန်အားဖြင့်အဆိုပါ kill နှင့်အတူနေထုတ်လုပ်လိုက်တဲ့တစ် SIGTERM signal ကိုအားဖြင့်ကြားဖြတ်သည်အထိ Tcpdump, packets တွေကိုဖမ်းယူဆက်လက်ပါလိမ့်မယ် (1) command ကို); အဆိုပါ -c အလံနှင့်အတူပြေးလျှင်တစ်ဦး SIGINT သို့မဟုတ် SIGTERM signal ကိုအားဖြင့်ကြားဖြတ်သို့မဟုတ် packets တွေကို၏သတ်မှတ်ထားသောအရေအတွက်ကလုပ်ငန်းများ၌ပြီသည်အထိပြုလုပ် packets တွေကိုဖမ်းယူပါလိမျ့မယျ။

tcpdump ဖမ်းယူ packets တွေကိုပြီးသွားတဲ့အခါ, ထိုသို့ရေတွက်သတင်းပို့ပါလိမ့်မယ်:

`filter ကိုလက်ခံရရှိသော packets တွေကို` '' (ဒီရဲ့အဓိပ္ပာယ်ကိုသင် tcpdump ပြေးနေတဲ့အရာပေါ် OS ကိုပေါ်မူတည်နှင့်ဖြစ်နိုင်သည်လမ်းပေါ်တွင် OS ကို configure လုပ်ခဲ့ - တဲ့ filter ကိုကရေတွက်အချို့ OSes ရက်နေ့တွင်, command line ကိုအပေါ်သတ်မှတ်ထားသောခံခဲ့ရလျှင် မသက်ဆိုင်သူတို့က filter ကိုစကားရပ်အားဖြင့်လိုက်ဖက်နှင့်အခြား OSes အပေါ်က filter ကိုစကားရပ်အားဖြင့်ကိုက်ညီခဲ့ကြခြင်းနှင့်) tcpdump အားဖြင့်လုပ်ငန်းများ၌ခဲ့ကြသည်သာ packets တွေကိုရေတွက်ခဲ့ကြခြင်းရှိမရှိ၏ packets တွေကို;

kernel ကိုအားဖြင့်ကျဆင်းသွား packets တွေကို `` '' (ဒီ OS ကို applications များမှသတင်းအချက်အလက်သတင်းပေးပို့လိုလျှင်, tcpdump ပြေးသောပေါ်တွင် OS ကိုအတွက် packet ကိုဖမ်းယူယန္တရားအားဖြင့်, ကြားခံနေရာမရှိခြင်းကြောင့်ကျဆင်းသွားခဲ့ packets တွေကိုများ၏အရေအတွက်ပင်ဖြစ်သည်; မရလျှင်,) 0 အဖြစ်အစီရင်ခံပါလိမ့်မယ်။

ဒါကြောင့် (ဥပမာ, ပုံမှန်အားဖြင့်ထိန်းချုပ်-T က, ဇာတ်ကောင် '' သင့်ရဲ့ `` status ကို '' စာရိုက်အသုံးပြုပုံနေထုတ်လုပ်လိုက်တဲ့) တစ်ဦး SIGINFO signal ကိုလက်ခံရရှိခြင်းနှင့် packets တွေကိုဖမ်းယူဆက်လက်လိမ့်မည်သည့်အခါထိုကဲ့သို့သောအများဆုံး BSDs အဖြစ် SIGINFO signal ကိုထောက်ပံ့သောပလက်ဖောင်း, တွင်ပြုလုပ်သူတွေကိုရေတွက်သတင်းပို့ပါလိမ့်မယ် ။

ကွန်ယက် interface ကိုထံမှ packets တွေကို Reading သငျသညျအထူးအခွင့်အရေးရှိသည်လိုအပ်နိုင်ပါသည်:

NIT သို့မဟုတ် bpf နှင့်အတူ SunOS 3.x သို့မဟုတ် 4.x လက်အောက်တွင်:

သငျသညျ * dev / nit သို့မဟုတ် / dev / bpf မှ / မှဝင်ရောက်ခွင့်ကိုဖတ်ပြီးကြပါပြီရပါမည်။

DLPI နှင့်အတူ Solaris လက်အောက်တွင်:

သင်, / Write ဥပမာ / dev / le ကွန်ယက်ကြားဖြတ် device ကိုမှဝင်ရောက်ခွင့်ကိုဖတ်ပြီးကြပါပြီရပါမည်။ Solaris အနည်းဆုံးအချို့မူကွဲတွင်, သို့သော်ဒီ tcpdump ကရာ mode မှာဖမ်းခွင့်ပြုပါရန်လုံလောက်သောမျှမက, Solaris အဲဒီဗားရှင်းအပေါ်ကိုသင်အမြစ်ဖြစ်ရပါမည်, ဒါမှမဟုတ် tcpdump ကရာ mode မှာဖမ်းယူနိုင်ဖို့အတွက်အမြစ်မှ setuid installed ရမည်ဖြစ်သည်။ သငျသညျကရာ mode မှာဖမ်းမရကြပါလျှင်များစွာသော (ဖြစ်ကောင်းအားလုံး) interfaces အပေါ်, သင်သည်မည်သည့်အထွက် packets တွေကိုမမြင်ရပါလိမ့်မယ်, ဒါကြောင့်ကရာ mode မှာပြုတော်မတစ်ဦးဖမ်းမိအလွန်အသုံးဝင်မဖြစ်စေခြင်းငှါ, သတိပြုပါ။

DLPI နှင့်အတူ HP က-UX လက်အောက်တွင်:

သငျသညျအမြစ်သို့မဟုတ် tcpdump အမြစ်မှ setuid installed ရမည်ဖြစ်သည်ရမည်ဖြစ်သည်။

snoop နှင့်အတူ IRIX လက်အောက်တွင်:

သငျသညျအမြစ်သို့မဟုတ် tcpdump အမြစ်မှ setuid installed ရမည်ဖြစ်သည်ရမည်ဖြစ်သည်။

Linux ကိုလက်အောက်တွင်:

သငျသညျအမြစ်သို့မဟုတ် tcpdump အမြစ်မှ setuid installed ရမည်ဖြစ်သည်ရမည်ဖြစ်သည်။

Ultrix နှင့်ဒစ်ဂျစ်တယ် UNIX / Tru64 UNIX တွင်လက်အောက်တွင်:

မဆိုအသုံးပြုသူ tcpdump နှင့်အတူကွန်ရက်အသွားအလာကိုဖမ်းယူလိမ့်မည်။ super-အသုံးပြုသူများ (8) pfconfig သုံးပြီးကြောင်း interface ပေါ်မှာကရာ-mode ကိုစစ်ဆင်ရေး enabled နှင့်အသုံးပြုသူ (မပင် super-အသုံးပြုသူမျှလိုက်ပါတယ်မဟုတ်လျှင်သို့သော်အဘယ်သူမျှမအသုံးပြုသူ (မပင် super-အသုံးပြုသူ) တစ်ဦး interface ပေါ်မှာကရာ mode မှာဖမ်းယူနိုင်ပါတယ် super-အသုံးပြုသူဒါတစ်ခု interface ပေါ်မှာအသုံးဝင်သော packet ကိုဖမ်းယူဖြစ်ကောင်းကြောင်းကရာ-mode ကိုသို့မဟုတ်မိတ္တူဖြစ်စေလိုအပ် pfconfig သုံးပြီးကြောင်း interface ပေါ်မှာမိတ္တူ-All-mode ကိုစစ်ဆင်ရေး enabled ထားပါတယ်မဟုတ်လျှင်) ကလက်ခံရရှိသို့မဟုတ် interface ပေါ်မှာစက်ကစေလွှတ် unicast အသွားအလာကိုဖမ်းယူနိုင်ပါတယ် အကုန်အ-mode ကိုစစ်ဆင်ရေး, ဒါမှမဟုတ်စစ်ဆင်ရေး၏နှစ်ဦးစလုံးသည် modes, ထို interface ပေါ်မှာ enabled လိမ့်မည်။

BSD လက်အောက်တွင်:

သငျသညျ dev / bpf မှ / မှဝင်ရောက်ခွင့် * ဖတ်ရှုပြီးရမည်ဖြစ်သည်။

တစ်ဦးသည်ကယ်တင်ခြင်းသို့ရောက် packet ကိုဖိုင်ကို Reading အထူးအခွင့်ထူးမလိုအပ်ပါဘူး။

ရွေးချယ်စရာများ

-a

အမည်များကိုမှကွန်ယက်နှင့်ထုတ်လွှင့်လိပ်စာများကိုပြောင်းလဲကြိုးစား။

-c

ရေတွက် packets တွေကိုလက်ခံရရှိပြီးနောက်ထွက်ပေါက်။

-C

တစ်ဦး savefile တစ်ကုန်ကြမ်း packet ကိုရေးသားခြင်းမပြုမီ, ဖိုင်ကိုလက်ရှိ FILE_SIZE ထက်ပိုကြီးတဲ့သည်နှင့်, ဒါသည်မှန်လျှင်, လက်ရှိ savefile ပိတ်ဖို့အသစ်တစ်ခုတဦးတည်းဖွင့်လှစ်ခြင်းရှိမရှိစစ်ဆေးပါ။ ပထမဦးဆုံး savefile ပြီးနောက် Savefiles 2 မှာစတင်နှင့်အထက်သို့ဆက်လက်ပြုလုပ်ပြီးနောက်နံပါတ်နှင့်တကွ, -w အလံနှင့်အတူသတ်မှတ်ထားသောနာမတော်ကိုအမှီ ပြု. ရပါလိမ့်မယ်။ FILE_SIZE ၏ယူနစ် bytes သန်းပေါင်းများစွာ (1,000,000 bytes မဟုတ်ဘဲ 1.048.576 bytes) ဖြစ်ကြသည်။

-D

စံထုတ်လုပ်မှုနှင့်ရပ်တန့်ဖို့လူ့ဖတ်လို့ရအောင်ပုံစံအတွက်ပြုစု packet ကို-တိုက်ဆိုင်သည့်ကုဒ်ပစ်သိမ်းရန်။

-dd

တစ်ဦးကို C program ကိုအပိုင်းအစအဖြစ် packet ကို-တိုက်ဆိုင်သည့်ကုဒ်ပစ်သိမ်းရန်။

-ddd

ဒဿမဂဏန်း (ကရေတွက်နှင့်အတူရှေ့ပြေး) အဖြစ် packet ကို-တိုက်ဆိုင်သည့်ကုဒ်ပစ်သိမ်းရန်။

-e

တစ်ဦးချင်းစီအမှိုက်ပုံလိုင်းပေါ်တွင် link ကို-Level header ကို print ထုတ်။

-e

IPsec ESP packets တွေကိုစာဝှက်ဖေါ်အဘို့လျှို့ဝှက်: algo ကိုသုံးပါ။ algorithms des-CBC, 3des-CBC, blowfish-CBC, rc3-CBC, cast128-CBC, ဒါမှမဟုတ်အဘယ်သူမျှမဖြစ်နိုင်သည်။ ကို default des-CBC ဖြစ်ပါတယ်။ tcpdump cryptography ကို enabled နှင့်အတူပြုစုခဲ့သည်ဆိုပါက packets တွေကို decrypt လုပ်နိုင်စွမ်းရှိသောပစ္စုပ္ပန်ဖြစ်ပါတယ်။ ESP လျှို့ဝှက် key ကိုများအတွက်လျှို့ဝှက်ချက် ASCII စာသားကို။ ငါတို့သည်ဤယခုအချိန်တွင်မင်းထက် binary value ကိုမယူနိုင်ပါတယ်။ ထို option RFC2406 ESP မဟုတ်ဘဲ RFC1827 ESP ယူဆတယ်။ အဆိုပါ option ကိုသာရည်ရွယ်ချက်နှင့် '' key ကိုစိတျဓာတျဖြစ်ပါတယ်အမှန်တကယ် `လျှို့ဝှက်နှင့်အတူဤ option ကိုအသုံးပြုခြင်း debugging အဘို့ဖြစ်၏။ command line ကိုပေါ်သို့ IPsec လျှို့ဝှက် key ကိုတင်ဆက်ထားပါတယ်အားဖြင့်သင်တို့ကို ps (1) နှင့်အခြားအခါသမယမှတဆင့်အခြားသူများကမြင်နိုင်ပါစေ။

-f

ပုံနှိပ်ပါ `နိုင်ငံခြား '' အင်တာနက်လိပ်စာများအရအေတှကျအားဖွငျ့ထက်ပုံဆောင်သဘောအရ (ဒီ option ကို Sun ၏ yp server ကိုခန့်အလေးအနက်ဦးနှောက်ပျက်စီးမှုကိုရရှိရန်ရည်ရွယ် --- များသောအားဖြင့်ကအစဉ်အမြဲ Non-ဒေသခံအင်တာနက်နံပါတ်များကိုဘာသာပြန်ဆိုဆွဲထားတဲ့) ။

-F

အဆိုပါ filter ကိုစကားရပ်များအတွက် input အဖြစ်ဖိုင်ကိုအသုံးပြုပါ။ က command line ပေါ်ပေးထားသောတစ်ဦးအပိုဆောင်းစကားရပ်ကိုလျစ်လျူရှုနေပါတယ်။

-i

interface ပေါ်မှာနားထောင်ပါ။ သတ်မှတ်ပါက, tcpdump (loopback ဖယ်ထုတ်ပြီး) အနိမ့်ဆုံးရေတွက်တက် configured ကို interface များအတွက်စနစ် interface ကိုစာရင်းရှာတတ်၏။ ဆက်ဆံရေးအစောဆုံးပွဲစဉ်ရွေးချယ်ရာတွင်နားမှာကျိုးပဲ့နေကြသည်။

2.2 သို့မဟုတ်နောက်ပိုင်းအဆန်နှင့်အတူ Linux ကိုစနစ်များတွင်, `` မဆို '' တစ်ဦး interface ကိုငြင်းခုံ '' အားလုံး interfaces ထံမှ packets တွေကိုဖမ်းယူဖို့အသုံးပြုနိုင်ပါသည်။ အဆိုပါ `` မဆို '' device ကိုကရာ mode ကိုပြုလိမ့်မည်မဟုတ်ပေအပေါ်ဖမ်းယူကြောင်းမှတ်ချက်။

-l

buffered stdout လိုင်းလုပ်ပါ။ သင်ကဖမ်းယူနေစဉ်ဒေတာမြင်ချင်လျှင်အသုံးဝင်သော။ eg,
`` tcpdump -l | Tee dat '' 'သို့မဟုတ် dat -f `` tcpdump -l> dat & အမြီး' '။

-m

file ကို module တစ်ခုကနေ SMI MIB module ကိုအဓိပ္ပာယ် load ။ ဒီ option tcpdump သို့အများအပြား MIB module တွေ load လုပ်ဖို့အကြိမ်ပေါင်းများစွာကိုအသုံးပြုနိုင်ပါတယ်။

-n

အမည်များကိုမှအိမ်ရှင်လိပ်စာများကိုပြောင်းမထားပါနဲ့။ ဤသည်နှင့် DNS lookups ကိုရှောင်ရှားဖို့အသုံးပြုနိုင်ပါသည်။

-nn

တစ်ခုခုကိုအမည်များမှစသည်တို့ကို protocol ကိုနှင့် port နံပါတ်များပြောင်းလဲမထားပါနဲ့။

-N

အိမ်ရှင်အမည်များ domain name ကိုအရည်အချင်းများ print ထုတ်မထားပါနဲ့။ သင်ဤအလံပေးလျှင် eg, ထို့နောက် tcpdump '' အစား `` nic.ddn.mil ၏ '' `NIC` print ထုတ်ပါလိမ့်မယ်။

-O

packet ကို-ကိုက်ညီကုဒ် Optimizer run မထားပါနဲ့။ ဤသည်ကိုသင် Optimizer အတွက် bug ကိုသံသယသာလျှင်အသုံးဝင်သည်။

-p

ကရာ mode ကိုစ interface ကိုမတင်ပါနဲ့။ အဆိုပါ interface ကိုအချို့သောအခြားအကြောင်းပြချက်ကရာ mode မှာဖြစ်အံ့သောငှါသတိပြုပါ; ဤအရပ်မှ, `-p ''` အီအိမ်ရှင် {ဒေသခံ-HW-addr} သို့မဟုတ်အီထုတ်လွှင့်မှုအတွက်အတိုကောက်စာလုံးအဖြစ်အသုံးပြုရနိုင်မှာမဟုတ်ဘူး '' ။

-q

quick (ဆိတ်ငြိမ်?) output ကို။ output ကိုလိုင်းတိုတောင်းနေကြသည်ဒါကြောင့်လျော့နည်း protocol ကိုသတင်းအချက်အလက် Print ။

-r

အဟောင်းကိုသတ်မှတ်ချက်တွင် (RFC1829 မှ RFC1825) ပေါ်တွင်အခြေခံရမည် ESP / AH packets တွေကိုယူဆ။ သတ်မှတ်ထားသောလြှငျ, tcpdump ပြန်ကန်ကြိုတင်ကာကွယ်ရေးလယ်ကို print ထုတ်လိမ့်မည်မဟုတ်ပါ။ အဘယ်သူမျှမ protocol version မှာလယ်ကွင်း ESP / AH သတ်မှတ်ချက်ရှိကတည်းက tcpdump ESP / AH protocol ၏ဗားရှင်းကောက်ချက်ချလို့မရပါဘူး။

-r

(ထို -w option နဲ့အတူဖန်တီးခဲ့သော) ဖိုင်ကနေ packets တွေကိုဖတ်ပါ။ '' '- ဖိုင် `` လျှင်စံ input ကိုအသုံးပြုသည်။

-s

မဟုတ်ဘဲဆွေမျိုး, ကို TCP sequence ကိုဂဏန်းထက်အကြွင်းမဲ့အာဏာ Print ။

-s

တစ်ခုချင်းစီကို packet ကိုထက် 68 ၏ default အထံမှအချက်အလက်များ၏ snaplen bytes Snarf (SunOS ရဲ့ NIT နှင့်တကွ, နိမ့်ဆုံးအမှန်တကယ် 96 ဖြစ်ပါတယ်) ။ 68 byte (အောက်တွင်ကြည့်ပါ) IP ကို, ICMP, ကို TCP နှင့် UDP ကိုများအတွက်လုံလောက်သောသော်လည်းအမည်ဖြင့်ဆာဗာနှင့် NFS packets တွေကိုထံမှ protocol ကိုသတင်းအချက်အလက် truncate လိမ့်မည်။ ဘာဖြစ်လို့လဲဆိုတော့ကန့်သတ်လျှပ်တစ်ပြက်၏နေရာများအစားထိုးလိုက် packets [ `` နှင့်အတူထွက်ရှိအတွက်ညွှန်ပြနေကြသည် | proto အဆိုပါခြင်းကိုဖြစ်ပွားခဲ့သည်မှာ protocol ကိုအဆင့်၏နာမတော်သည်အဘယ်မှာရှိ proto] '' ။ ပိုကြီးတဲ့ရိုက်ချက်ယူပြီးကြောင့် packets တွေကိုလုပ်ဆောင်ပေးရန်ကြာနှင့်, ထိထိရောကျရော, packet ကိုကြားခံပမာဏကိုလျော့ကျအချိန်ပမာဏကိုတိုးပွါးနှစ်ဦးစလုံးသတိပြုပါ။ ဤသည် packets တွေကိုဆုံးရှုံးစေနိုင်ပါတယ်။ သင်စိတ်ဝင်စားနေသည့် protocol ကိုသတင်းအချက်အလက်ကိုဖမ်းယူလိမ့်မည်ဟုအသေးဆုံးအရေအတွက် snaplen ကန့်သတ်သင့်ပါတယ်။ 0 င်နည်းလမ်းတပြင်လုံးကို packets တွေကိုဖမ်းရန်လိုအပ်သောအလျားသုံးစွဲဖို့ snaplen setting ။

-T

သတ်မှတ်ထားသောအမျိုးအစားအနက်ခံရရန် "ဟူသောအသုံးအနှုနျး" ကရွေးချယ်ထားသည့်အင်အားစု packets တွေကို။ လောလောဆယ်လူသိများအမျိုးအစားများ cnfp (Cisco သည် NetFlow protocol ကို), RPC (Remote လုပ်ထုံးလုပ်နည်းခေါ်ရန်), rtp (အချိန်နှင့်တပြေးညီ Applications ကို protocol ကို), rtcp (အချိန်နှင့်တပြေးညီ Applications ကိုထိန်းချုပ် protocol ကို), snmp (ရိုးရှင်းသောကွန်ယက်စီမံခန့်ခွဲမှုပရိုတိုကော), သီးနယ်ရာကျင်း (Visual အသံ Tool ကိုဖြစ်ကြသည် ), နှင့် WB () White ကဘုတ်အဖွဲ့ဖြန့်ဝေ။

-t

တစ်ဦးချင်းစီအမှိုက်ပုံလိုင်းပေါ်မှာ Timestamp ကို print ထုတ်မထားပါနဲ့။

-tt

တစ်ဦးချင်းစီအမှိုက်ပုံလိုင်းတခုတခုအပေါ်မှာ unformatted Timestamp ကို print ထုတ်။

-U

အမြစ်အခွင့်ထူးကို drop နှင့်အသုံးပြုသူများ၏မူလတန်းအုပ်စုအသုံးပြုသူနှင့်အုပ်စုတစ်စု ID ကိုမှအသုံးပြုသူ ID ကိုပြောင်းလဲစေပါသည်။

မှတ်စု! အခြားဘာမျှမသတ်မှတ်ထားလျှင် Red Hat Linux ကိုအလိုအလျှောက် '' `အသုံးပြုသူမှ` pcap 'ဆိုတဲ့အခွင့်ထူးပြန်လည်ရုပ်သိမ်းသွားခဲ့သည်။

-ttt

တစ်ဦးချင်းစီအမှိုက်ပုံလိုင်းပေါ်တွင်လက်ရှိနှင့်ယခင်လိုင်းအကြား (Micro-စက္ကန့်တွင်) တစ်ဦးမြစ်ဝကျွန်းပေါ် Print ။

-tttt

တစ်ဦးချင်းစီအမှိုက်ပုံလိုင်းပေါ်တွင်ရက်စွဲခြင်းဖြင့်ရှေ့ဆက်က default format နဲ့တစ်ဦး Timestamp ကို print ထုတ်။

-u

ပုံနှိပ်ပါ NFS လက်ကိုင် undecoded ။

-v

(အနည်းငယ်ပိုပြီး) output ကို verbose ။ ဥပမာအားဖြင့်, အသက်ရှင်နေထိုင်ရမည့်အချိန်, မှတ်ပုံတင်, စုစုပေါင်းအရှည်နှင့် IP ကို ​​packet ကိုအတွက်ရွေးချယ်စရာပုံနှိပ်နေကြသည်။ ဒါ့အပြင်ထိုကဲ့သို့သောရဲ့ IP နှင့် ICMP header ကို checksum အတည်ပြုအဖြစ်အပိုဆောင်း packet ကိုသမာဓိရှိစစ်ဆေးမှုများနိုင်ပါတယ်။

-vv

ပို. ပင် verbose output ကို။ ဥပမာအားဖြင့်, အပိုဆောင်းလယ်ကွင်း NFS ပြန်ကြားချက် packets တွေကိုထံမှပုံနှိပ်နေကြပြီး, SMB packets တွေကိုအပြည့်အဝဝှက်နေကြသည်။

-vvv

ပို. ပင် verbose output ကို။ ဥပမာအားဖြင့်, telnet SB ... SE options များအပြည့်အဝခုနှစ်ပုံနှိပ်နေကြသည်။ -X telnet options များနှင့်ဝသကဲ့သို့ကောင်းစွာ hex ပုံနှိပ်နေကြသည်။

-w

အစား parsing သူတို့ကိုထွက်ပုံနှိပ်ထက် file ဖို့ကုန်ကြမ်း packets တွေကိုရေးပါ။ သူတို့ကနောက်ပိုင်းတွင် -r option နဲ့အတူပုံနှိပ်နိုင်ပါသည်။ '' '- ဖိုင် `` လျှင်စံ output ကိုအသုံးပြုသည်။

-x

hex အတွက်တစ်ဦးချင်းစီ packet ကို (အနုတ်က၎င်း၏ link ကိုအဆငျ့ header ကို) Print ။ တစ်ခုလုံးကို packet ကိုသို့မဟုတ် snaplen bytes ၏သေးငယ်ပုံနှိပ်လိမ့်မည်။ ဒီတစ်ခုလုံးကို link ကို-layer ကို packet ကိုကြောင်းသတိပြုပါ, မြင့်အလွှာ packet ကိုလိုအပ်တဲ့ padding ကိုထက်တိုတောင်းသည့်အခါပြုလုပ် pad ပါ (ဥပမာ Ethernet) link ကိုအလွှာများအတွက်ဒါ, အ padding ကို bytes ကိုလည်းပုံနှိပ်လိမ့်မည်။

-X

အရမ်း hex, ပုံနှိပ် ASCII ပုံနှိပ်အခါ။ -x လည်းသတ်မှတ်ထားလျှင်ထို့ကြောင့် packet ကို hex / ASCII ပုံနှိပ်ဖြစ်ပါတယ်။ ဤသည်အသစ်သော protocol များကိုခွဲခြားစိတ်ဖြာများအတွက်အလွန်အသုံးဖြစ်ပါတယ်။ -x လည်းသတ်မှတ်မထားလျှင်ပင်အချို့ packets တွေကိုအချို့အစိတ်အပိုင်းများ hex / ASCII ပုံနှိပ်နိုင်ပါသည်။

စကားရပ်

စွန့်ပစ်ပါလိမ့်မည်သည့် packets တွေကိုရွေးချယ်သည်။ အဘယ်သူမျှမစကားရပ်ပေးထားလျှင်, အသားတင်ပေါ်မှာရှိသမျှ packets တွေကိုစွန့်ပစ်လိမ့်မည်။ ဒီလိုမှမဟုတ်ရင်စကားရပ် '' `မှန်ရာအဘို့ကိုသာ packets တွေကိုစွန့်ပစ်လိမ့်မည်။

အဆိုပါစကားရပ်တစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသော Primitive ပါဝင်ပါသည်။ Primitive များသောအားဖြင့်တဦးတည်းသို့မဟုတ်ထိုထက်ပိုခြေစစ်ပွဲအားဖြင့်ရှေ့ပြေးအနေနဲ့အိုင်ဒီ (အမည်သို့မဟုတ်နံပါတ်) ထားရှိရေး။ ခြေစစ်ပွဲသုံးခုအမျိုးမျိုးရှိပါတယ်:

ပုံစံ

ခြေစစ်ပွဲအတွက် id သည်အမည်သို့မဟုတ်အရေအတွက်ကိုရည်ညွှန်းအရာ၏အဘယ်အရာကိုမျိုးကိုပြောပါ။ ဖြစ်နိုင်ပါ့မလားအမျိုးအစားများကိုအိမ်ရှင်, အသားတင်နှင့်ဆိပ်ကမ်းဖြစ်ကြသည်။ ဥပမာ `အိမ်ရှင် foo '` အသားတင် 128,3' `port ကို 20 '' ။ အဘယ်သူမျှမ type ကိုခြေစစ်ပွဲလည်းမရှိလြှငျ, အိမ်ရှင်ယူဆနေသည်။

dir

ခြေစစ်ပွဲရန်နှင့် / သို့မဟုတ်အိုင်ဒီကနေအထူးသဖြင့်အပြောင်းအရွှေ့လမျးညှနျခကိုသတ်မှတ်။ ဖြစ်နိုင်ပါ့မလားလမ်းညွန် src, ပညာ,, src သို့မဟုတ်ပညာ, နဲ့ src နှင့်ပညာ, ဖြစ်ကြသည်။ ဥပမာ `src foo '` ပညာ, အသားတင် 128,3' `src သို့မဟုတ်ပညာ, port ကို ftp-data ကို '' ။ အဘယ်သူမျှမ dir ခြေစစ်ပွဲလည်းမရှိလြှငျ, src သို့မဟုတ်ပညာ, ယူဆနေသည်။ `တရားမဝင်သော '' link ကိုအလွှာ (ထိုကဲ့သို့သောစလစ်အဖြစ် protocols များထောက်ပြဆိုလိုသည်မှာအချက်) အတွက်အတွင်း, အပြင်ခြေစစ်ပွဲတစ်တပ်မက်လိုချင်သောအလမျးညှနျခကိုသတ်မှတ်ဖို့အသုံးပြုနိုင်ပါသည်။

proto

ခြေစစ်ပွဲတစ်ဦးအထူးသဖြင့်ပရိုတိုကောမှပွဲကန့်သတ်ရန်။ ဖြစ်နိုင်ပါ့မလား proto နေသောခေါင်းစဉ်: အီ, FDDI, TR, ip, ip6, arp, rarp, DECNet မှာနောက်တခါ, TCP နှင့် UDP ။ ဥပမာ `အီ src foo '` arp အသားတင် 128,3' `TCP port 21 '' ။ အဘယ်သူမျှမ proto ခြေစစ်ပွဲလည်းမရှိလြှငျ, အမျိုးအစားနှင့်ကိုက်ညီအားလုံး protocols များယူဆနေကြသည်။ ဥပမာ `src foo ''` (ip သို့မဟုတ် arp သို့မဟုတ် rarp) ကိုဆိုလိုသည် src foo '(အဆုံးစွန်သော မှလွဲ. ဥပဒေရေးရာ syntax မဟုတ်ပါဘူး), `အသားတင်ဘား' '` (ip သို့မဟုတ် arp သို့မဟုတ် rarp) ကိုဆိုလိုသည်အသားတင်ဘား' နှင့် `port ကို 53 '' နည်းလမ်းများ `(TCP သို့မဟုတ် UDP) ဆိပ်ကမ်းကို 53 '' ။

[ `FDDI '' အမှန်တကယ်` အီတစ်ခု alias ကိုဖြစ်ပါတယ် '; အဆိုပါ parser ကို `` အဓိပ္ပာယ်ကိုအဖြစ်တူညီသတ်မှတ်ထားသောကွန်ယက်ကို interface ပေါ်မှာအသုံးပြုတဲ့ဒေတာကို link ကိုအဆငျ့သူတို့ကိုဆကျဆံတယျ။ '' FDDI ကိုခေါင်းစီး Ethernet ကဲ့သို့အရင်းအမြစ်နှင့်ဦးတည်ရာကိုလိပ်စာများဆံ့, သင်သည်ဤ FDDI ကိုလယ်ကွင်းအပေါ် filter နိုင်အောင်မကြာခဏ Ethernet ကဲ့သို့သော packet ကိုအမျိုးအစားများဆံ့ ရုံအလားတူ Ethernet ဟာလယ်ကွင်းနှင့်ဝသကဲ့သို့။ FDDI ကိုခေါင်းစီးများမှာလည်းအခြားနယ်ပယ်ဆံ့, ဒါပေမယ့်သင်က filter ကိုစကားရပ်ထဲမှာအတိအလင်းသူတို့ကိုအမည်မပေးနိုငျသညျ။

အလားတူပင် `TR ''` အီတစ်ခု alias ကိုဖြစ်ပါတယ် '; FDDI ကိုခေါင်းစီးများနှင့်ပတ်သက်ပြီးယခင်အပိုဒ်ရဲ့ထုတ်ပြန်ချက်များကိုလည်း Ring ကိုခေါင်းစီး Token လျှောက်ထား။ ]

တံခါးပေါက်, ထုတ်လွှင့်နည်း, အားကြီးဂဏန်းသင်္ချာအသုံးအနှုန်းတွေ: အထက်ပါအပြင်, ပုံစံကိုလိုက်နာကြဘူးအချို့အထူး `စရိုက် '' သော့ချက်စာလုံးများရှိပါတယ်။ ဤအရာအားလုံးသည်အောက်တွင်ဖော်ပြနေကြသည်။

ပိုမိုရှုပ်ထွေး filter ကိုအသုံးအနှုန်းတွေ Primitive ပေါင်းစပ်ဖို့စကားများနှင့်ဖြစ်စေ, မဟုတျဘဲကို အသုံးပြု. တည်ဆောက်နေကြသည်။ ဥပမာ `အိမ်ရှင် foo နှင့်မဆိပ်ကမ်းကို ftp နှင့် port မဟုတ် ftp-data ကို '' ။ စာရိုက်သိမ်းဆည်းရန်တူညီခြေစစ်ပွဲစာရင်းချန်လှပ်ထားနိုင်ပါတယ်။ ဥပမာ `TCP ပညာ, port ကို ftp သို့မဟုတ် ftp-ဒေတာသို့မဟုတ်ဒိုမိန်း '' TCP ပညာ, port ကို ftp သို့မဟုတ် TCP ပညာ, port ကို ftp-ဒေတာသို့မဟုတ် TCP ပညာ, port ကိုဒိုမိန်း` အဖြစ်အတိအကျအတူတူပင်ဖြစ်ပါသည်။

Allow Primitive နေသောခေါင်းစဉ်:

ပညာ, အိမ်ရှင်အိမ်ရှင်

စစ်မှန်သော packet ကို၏ IPv4 / V6 destination သည်လယ်ပြင်ထားတဲ့လိပ်စာတစ်ခုသို့မဟုတ်အမည်ဖြင့်လည်းကောင်းဖြစ်နိုင်ပါသည်ရသောအိမ်ရှင်သည်လျှင်။

src အိမ်ရှင်အိမ်ရှင်

စစ်မှန်သော packet ကို၏ IPv4 / V6 အရင်းအမြစ်လယ်ကွင်းအိမ်ရှင်လျှင်။

အိမ်ရှင်အိမ်ရှင်

အဆိုပါ IPv4 / V6 အရင်းအမြစ်သို့မဟုတ် packet ကို၏ဦးတည်ရာကိုလည်းကောင်းအိမ်ရှင်လျှင်စစ်မှန်သော။ အထက်ပါအိမ်ရှင်အသုံးအနှုန်းတွေမဆိုမှာကဲ့သို့သော့ချက်စာလုံးများ, ip, arp, rarp, ဒါမှမဟုတ် ip6 နှင့်အတူ prepended နိုင်ပါတယ်:

ip အိမ်ရှင်အိမ်ရှင်

ရာနှင့်ညီမျှသည်:

အီ proto \ ip နှင့်အိမ်ရှင်အိမ်ရှင်

အိမ်ရှင်မျိုးစုံ IP လိပ်စာများနှင့်အတူနာမည်တစ်ခုဖြစ်တယ်ဆိုရင်တစ်ဦးချင်းစီလိပ်စာတစ်ဦးပွဲစဉ်များအတွက် check လုပ်ထားပါလိမ့်မည်။

အီပညာ, ehost

အဆိုပါ Ethernet destination သို့လိပ်စာ ehost လျှင်စစ်မှန်သော။ Ehost / etc / အီသို့မဟုတ် (ကြည့်ရှုနေတဲ့အရေအတွက်ကိုကနေနာမည်တစ်ခုဖြစ်စေဖြစ်နိုင်သည် အီ ဂဏန်းပုံစံများအတွက် (3N)) ။

အီ src ehost

အဆိုပါ Ethernet အရင်းအမြစ်လိပ်စာ ehost လျှင်စစ်မှန်သော။

အီအိမ်ရှင် ehost

စစ်မှန်သောဟာ Ethernet အရင်းအမြစ်သို့မဟုတ်ဦးတည်ရာလိပ်စာတစ်ခုခုကို ehost လျှင်။

တံခါးပေါက်အိမ်ရှင်

packet ကိုတစ်ဦးတံခါးပေါက်အဖြစ်အိမ်ရှင်အသုံးပြုသောလျှင်စစ်မှန်သော။ ဆိုလိုသည်မှာအဆိုပါ Ethernet အရင်းအမြစ်သို့မဟုတ်ဦးတည်ရာလိပ်စာအိမ်ရှင်ခဲ့ပေမယ့်အိုင်ပီအရင်းအမြစ်ကိုမ IP ကိုဦးတည်ရာကိုလည်းမအိမ်ရှင်ဖြစ်ခဲ့သည်။ Host ကနာမည်တစ်ခုဖြစ်ရမည်နှင့်စက်ရဲ့အိမ်ရှင်-name ကို-to-IP-address ကို resolution ကိုယန္တရားများ (စသည်တို့ကို host name ကိုဖိုင်, DNS ကို, NIS) နှင့်စက်ရဲ့အိမ်ရှင်-name ကို-to-Ethernet-လိပ်စာ resolution ကိုအားဖြင့်နှစ်ဦးစလုံးကိုတွေ့ရမည်ဖြစ်သည် ယန္တရား (/ etc / အီ, etc) ။ (တစ်ဦးနှင့်ညီမျှစကားရပ်ဖြစ်ပါသည်

အီအိမ်ရှင် ehost နှင့်မအိမ်ရှင်အိမ်ရှင်အဖြစ်လက်ခံကျင်းပ

အရာအိမ်ရှင် / ehost အဘို့ဖြစ်စေအမည်များသို့မဟုတ်နံပါတ်များနှင့်အတူသုံးနိုင်တယ်။ ) ဤ syntax ဒီအခိုက်မှာ IPv6-enabled ဖွဲ့စည်းမှုပုံစံအတွက်အလုပ်မလုပ်ပါဘူး။

ပညာ, အသားတင်အသားတင်

packet ကို၏ IPv4 / V6 destination သို့လိပ်စာအသားတင်တစ် network number ရှိပါတယ်လျှင်စစ်မှန်သော။ net / etc / network များသို့မဟုတ်ကွန်ယက်နံပါတ် (အသေးစိတ်ကိုကွန်ရက်များ (4) ကိုကြည့်ပါ) အနေဖြင့်နာမည်တစ်ခုဖြစ်စေဖြစ်နိုင်သည်။

src ပိုက်ကွန်ကိုအသားတင်

packet ကို၏ IPv4 / V6 အရင်းအမြစ်လိပ်စာအသားတင်တစ် network number ရှိပါတယ်လျှင်စစ်မှန်သော။

အသားတင်အသားတင်

packet ကို၏တစ်ခုခုအတွက် IPv4 / V6 အရင်းအမြစ်သို့မဟုတ်ဦးတည်ရာကိုလိပ်စာပါလျှင်စစ်မှန်သောအသားတင်တစ် network number ရှိပါတယ်။

အသားတင်အသားတင်မျက်နှာဖုံး netmask

စစ်မှန်သော IP address ကိုတိကျတဲ့ netmask နှင့်အတူအသားတင်ကိုက်ညီလျှင်။ src သို့မဟုတ်ပညာ, အတူအရည်အချင်းပြည့်မီနိုင်ပါသည်။ ဒီ syntax IPv6 ကိုအသားတင်များအတွက်တရားဝင်မဟုတ်ကြောင်းသတိပြုပါ။

အသားတင်အသားတင် / Len

အဆိုပါ IPv4 / V6 လိပ်စာကျယ်ပြန့်-bits Len တစ် netmask နှင့်အတူအသားတင်ကိုက်ညီလျှင်စစ်မှန်သော။ src သို့မဟုတ်ပညာ, အတူအရည်အချင်းပြည့်မီနိုင်ပါသည်။

ပညာ, port ကို port ကို

စစ်မှန်သော packet ကို ip / TCP, ip / udp, ip6 / TCP သို့မဟုတ် ip6 / UDP သည်နှင့်ဆိပ်ကမ်းတစ်ဦးဦးတည်ရာဆိပ်ကမ်းကိုတနျဖိုးရှိပါတယျလျှင်။ အဆိုပါဆိပ်ကမ်းကိုနံပါတ်သို့မဟုတ် / etc / န်ဆောင်မှုများ (ကြည့်ရှုရာတွင်အသုံးပြုနာမည်တစ်ခုဖြစ်နိုင်ပါသည် TCP (4P) နှင့် UDP (4P)) ။ နာမည်တစ်ခုကိုအသုံးပြုသည်ဆိုပါက, port နံပါတ်နှင့် protocol ကိုနှစ်ဦးစလုံး check လုပ်ထားကြပါတယ်။ တစ်နံပါတ်သို့မဟုတ်စိတ်မကောင်းစရာဝေဝါး name ကိုအသုံးပြုသည်ဆိုပါက, သာ port နံပါတ်ဓြှု (ဥပမာ, ပညာ, port ကို 513 TCP / ရဲ့ login အသွားအလာသူအသွားအလာ / udp နှစ်ဦးစလုံး print ထုတ်ပါလိမ့်မယ်, နှင့် port ကိုဒိုမိန်း TCP / ဒိုမိန်းနှင့် UDP / ဒိုမိန်းအသွားအလာနှစ်ဦးစလုံး print ထုတ်ပါလိမ့်မယ်) ။

src ဆိပ်ကမ်းကို port ကို

packet ကိုဆိပ်ကမ်းရင်းမြစ်ဆိပ်ကမ်းကိုတနျဖိုးရှိပါတယျလျှင်စစ်မှန်သော။

ဆိပ်ကမ်းကို port ကို

packet ကို၏တစ်ခုခုကိုရင်းမြစ်သို့မဟုတ်ဦးတည်ရာဆိပ်ကမ်းကိုပါလျှင်စစ်မှန်သော port ဖြစ်သည်။ အထက်ပါဆိပ်ကမ်းကိုအသုံးအနှုနျးမြားမဆို၌ရှိသကဲ့သို့, ထိုသော့ချက်စာလုံးများ, TCP သို့မဟုတ် UDP နှင့်အတူ prepended နိုင်ပါတယ်:

TCP src ဆိပ်ကမ်းကို port ကို

အရာသည်အဘယ်သူ၏အရင်းအမြစ်ဆိပ်ကမ်းကို port ကိုအသုံးပြုမှသာ TCP packet များကိုတိုက်စစ်ပါတယ်။

ဒီထက်အရှည်

packet ကိုတစ်အရှည်ထက်လျော့နည်းသို့မဟုတ်အရှည်ညီမျှရှိပါတယ်လျှင်စစ်မှန်သော။ ဤသည်နှင့်ညီမျှသည်:

Len <= အလျား။

သာ. ကြီးအရှည်

packet ကိုထက် သာ. ကြီးမြတ်သို့မဟုတ်အရှည်ညီမျှတဲ့အရှည်ရှိပါတယ်လျှင်စစ်မှန်သော။ ဤသည်နှင့်ညီမျှသည်:

> = အလျား Len

ip proto protocol ကို

packet ကိုတစ်ဦးသည် IP packet ကိုပါလျှင် (တွေ့မြင်စစ်မှန်သော ip protocol ကိုအမျိုးအစား protocol ၏ (4P)) ။ ပရိုတိုကောနံပါတ်သို့မဟုတ်အမည်များ ICMP, icmp6, igmp, igrp, Pim, ah, ESP, vrrp, UDP, ဒါမှမဟုတ် TCP ၏တဦးတည်းဖြစ်နိုင်သည်။ အဆိုပါဖေါ်ထုတ် TCP, UDP နှင့် ICMP လည်း keywords နှင့် C-shell ကိုအတွက် \\ တည်းဟူသောဘယ်ဘက်မျဉ်းစောင်း (\) ကနေတဆင့်ထွက်ပြေးလွတ်မြောက်ရမည်ဖြစ်သည်သတိပြုပါ။ ဒီစရိုက်တွေဟာ protocol ကို header ကိုကွင်းဆက်လိုက်ပါဘူးသတိပြုပါ။

proto protocol ကို ip6

packet ကို protocol ကိုအမျိုးအစား protocol ၏တစ်ဦး IPv6 packet ကိုလျှင်စစ်မှန်သော။ ဒီစရိုက်တွေဟာ protocol ကို header ကိုကွင်းဆက်လိုက်ပါဘူးသတိပြုပါ။

ip6 protochain protocol ကို

စစ်မှန်သော packet ကို IPv6 packet ကိုဖြစ်ပါသည်, နှင့်၎င်း၏ protocol ကို header ကိုကွင်းဆက်ထဲမှာအမျိုးအစား protocol ကိုအတူ protocol ကိုခေါင်းစဉ်များပါရှိသည်လျှင်။ ဥပမာ,

ip6 protochain 6

အဆိုပါ protocol ကို header ကိုကွင်းဆက်အတွက် TCP protocol ကိုခေါင်းစဉ်နှင့်အတူမည်သည့် IPv6 packet ကိုတိုက်စစ်ပါတယ်။ packet ကိုဥပမာ, IPv6 သ header ကိုနှင့်ကို TCP header ကိုအကြားစစ်မှန်ကြောင်းအထောက်အထားပြသခြင်း header ကို, routing ကို header ကို, ဒါမှမဟုတ်-hop-by-hop option ကို header ကို, မဆံ့နိုငျသညျ။ ဒီစရိုက်အားဖြင့်ထုတ်လွှတ်အဆိုပါ bpf ကုဒ်ရှုပ်ထွေးသည်နှင့် tcpdump အတွက် bpf Optimizer code က optimized မရနိုင်, ဒါကြောင့်ဒီအတန်ငယ်နှေးနှေးစေနိုင်ပါတယ်။

ip protochain protocol ကို

protochain protocol ကို ip6 ညီမျှသို့သော်ဤ IPv4 အဘို့ဖြစ်၏။

အီထုတ်လွှင့်

packet ကိုမှာ ethernet ထုတ်လွှင့် packet ကိုလျှင်စစ်မှန်သော။ အဆိုပါအီ keyword ကိုရွေးချယ်နိုင်ဖြစ်ပါတယ်။

ip ထုတ်လွှင့်

packet ကိုတစ်ဦး IP ကိုထုတ်လွှင့် packet ကိုလျှင်စစ်မှန်သော။ ဒါဟာအားလုံးသုညနှငျ့စညျးဝေးကွီးထုတ်လွှင့် All-သူတွေကိုနှစ်ဦးစလုံးအတှကျအ check လုပ်ပေးပါတယ်နှင့်ဒေသခံ subnet mask ကိုတက်ကြည့်ပါတယ်။

အီ multicast

packet ကိုမှာ ethernet multicast packet ကိုလျှင်စစ်မှန်သော။ အဆိုပါအီ keyword ကိုရွေးချယ်နိုင်ဖြစ်ပါတယ်။ ဤသည် `အီ [0] & 1! = 0 'အတွက်အတိုကောက်ဖြစ်ပါတယ်။

ip multicast

packet ကိုတစ်ဦးအိုင်ပီ multicast packet ကိုလျှင်စစ်မှန်သော။

ip6 multicast

packet ကိုတစ်ဦး IPv6 သ multicast packet ကိုလျှင်စစ်မှန်သော။

အီ proto protocol ကို

စစ်မှန်သော packet ကိုအီအမျိုးအစား protocol ၏ပါလျှင်။ ပရိုတိုကောနံပါတ်သို့မဟုတ်အမည်များ ip, ip6, arp, rarp, atalk, aarp, DECNet မှာနောက်တခါ, sca, LAT, mopdl, moprc, iso, STP, IPX, ဒါမှမဟုတ် NETBEUI ၏တဦးတည်းဖြစ်နိုင်သည်။ ဤအဖေါ်ထုတ်မှတ်ချက်ကိုလည်း keywords နှင့်ဘယ်ဘက်မျဉ်းစောင်း (\) ကနေတဆင့်ထွက်ပြေးလွတ်မြောက်ရမည်ဖြစ်သည်။

[FDDI (ဥပမာ, `FDDI protocol ကို arp ') နဲ့ Token Ring (ဥပမာ,` TR protocol ကို arp') ၏ဖြစ်ရပ်မှာတော့အဲဒီ protocols များအများစုအဘို့, protocol ကိုဖော်ထုတ်ခြင်းဟာ 802.2 Logical Link ကိုထိန်းချုပ်ရေး (LLC) header ကိုမှလာပေးသော ပုံမှန်အားဖြင့် FDDI သို့မဟုတ် Token Ring header ကိုထိပ်ပေါ်မှာ layered ဖြစ်ပါတယ်။

encapsulation တွေကိုသေချာ Ethernet ဟာအဘို့, 0x000000 တစ်ခုအဖွဲ့အစည်းယူနစ် Identifier (OUI) နဲ့ဒါခေါ် SNAP format နဲ့တစ်ဦး LLC header ကိုသာ protocol ကို ID ကိုလယ်ပြင် FDDI သို့မဟုတ် Token Ring အပေါ်အများဆုံး protocol ကိုဖေါ်ထုတ်, tcpdump စစ်ဆေးမှုများအဘို့အ filtering သောအခါ, က packet ကို 0x000000 တစ်ခု OUI နှင့်အတူ SNAP format နဲ့ဟုတ်မဟုတ်စစ်ဆေးမထားဘူး။

အဆိုပါခြွင်းချက်က DSAP (Destination Service ကို Access Point) စစ်ဆေးနေရာဘို့ iso နှင့် SSAP (ရင်းမြစ် Service ကို Access Point) က LLC သည် header ကို၏ DSAP check လုပ်ပေးပါတယ်ရှိရာ LLC header ကို၏လယ်ကွင်း, STP နှင့် NETBEUI, နှင့် atalk, ဘယ်မှာကြောင့်ဖြစ်ကြောင်း 0x080007 တစ်ခု OUI နှင့် Appletalk etype အတူ SNAP-format ကို packet ကိုများအတွက်စစ်ဆေးမှုများ။

Ethernet ၏ဖြစ်ရပ်မှာတော့ tcpdump သူတို့အား protocols များအများစုများအတွက် Ethernet type field ကိုစစ်ဆေးနေ; အဆိုပါခြွင်းချက်က 802.3 ဘောင်များအတွက်စစ်ဆေးနေပြီးတော့အဲဒါကိုတစ်ဦးသည် Ethernet frame ကိုအတွက် Appletalk etype အဘို့နှင့်တစ်ဦးအဘို့နှစ်ခုလုံး check လုပ်ပေးပါတယ်ဘယ်မှာ FDDI နဲ့ Token Ring, atalk များအတွက်မအဖြစ် LLC header ကိုစစ်ဆေးနေရာဘို့ iso, ရည်နှင့် NETBEUI ဖြစ်ကြ၏ SNAP-format ကို packet ကိုအဲဒါကိုအတွက် IPX etype များအတွက် check လုပ်ပေးပါတယ်ဘယ်မှာ FDDI နဲ့ Token Ring က Ethernet frame ကိုသို့မဟုတ် 0x000000 တစ်ခု OUI နဲ့ 802.2 SNAP frame ကိုဖြစ်စေထဲတွင် Appletalk ARP etype များအတွက် check လုပ်ပေးပါတယ်ဘယ်မှာ aarp, နှင့် IPX, အဘို့ပြုသကဲ့သို့ တစ်ဦးသည် Ethernet frame ကို, LLC သည် header ကိုအတွက် IPX DSAP, IPX မရှိ LLC header ကို encapsulation တွေကိုသေချာနှင့် SNAP frame ကိုအတွက် IPX etype အတူ 802.3 ။ ]

DECNet မှာနောက်တခါ src အိမ်ရှင်

အဆိုပါ DECNet မှာနောက်တခါအရင်းအမြစ်လိပ်စာပုံစံ `` 10,123 '', ဒါမှမဟုတ်တစ်ဦး DECNet မှာနောက်တခါ host name ကိုတစ်ဦးလိပ်စာဖြစ်ရသောအိမ်ရှင်သည်ဆိုပါကစစ်မှန်သော။ [DECNet မှာနောက်တခါ host name ကိုထောက်ခံမှု DECNet မှာနောက်တခါ run ဖို့ configured ဖြစ်ကြောင်း Ultrix စနစ်များကိုသာရရှိနိုင်ပါသည်။ ]

DECNet မှာနောက်တခါပညာ, အိမ်ရှင်

အဆိုပါ DECNet မှာနောက်တခါဦးတည်ရာလိပ်စာအိမ်ရှင်လျှင်စစ်မှန်သော။

DECNet မှာနောက်တခါအိမ်ရှင်အိမ်ရှင်

စစ်မှန်သောအဆိုပါ DECNet မှာနောက်တခါအရင်းအမြစ်သို့မဟုတ်ဦးတည်ရာလိပ်စာတစ်ခုခုကိုအိမ်ရှင်လျှင်။

ip, ip6, arp, rarp, atalk, aarp, DECNet မှာနောက်တခါ, iso, STP, IPX, NETBEUI

အဘို့အတိုကောက်:

အီ proto p

ဘယ်မှာ p အထက်ပါ protocol များ၏တဦးတည်းဖြစ်၏။

LAT, moprc, mopdl

အဘို့အတိုကောက်:

အီ proto p

ဘယ်မှာ p အထက်ပါ protocol များ၏တဦးတည်းဖြစ်၏။ tcpdump လက်ရှိတွင်ထိုအ protocols များဆန်းစစ်ဖို့ဘယ်လိုသိကြပါဘူးသတိပြုပါ။

VLAN [vlan_id]

packet ကိုတစ်ဦးကို IEEE 802.1Q VLAN packet ကိုလျှင်စစ်မှန်သော။ [vlan_id] သတ်မှတ်ထားသောလျှင်, သာစစ်မှန်တဲ့ packet ကိုသတ်မှတ်ထားသော vlan_id ရှိပါတယ်ဖြစ်ပါသည်။ စကားရပ်များတွင်ကြုံတွေ့ပထမဦးဆုံး VLAN keyword ကို packet ကိုတစ်ဦး VLAN packet ကိုသောယူဆချက်အပေါ်စကားရပ်၏ကျန်ရှိသောများအတွက်ဒီကုဒ်ဒါ offset ပြောင်းလဲသတိပြုပါ။

TCP, UDP, ICMP

အဘို့အတိုကောက်:

ip proto p သို့မဟုတ် ip6 proto p

ဘယ်မှာ p အထက်ပါ protocol များ၏တဦးတည်းဖြစ်၏။

iso proto protocol ကို

packet ကို protocol ကိုအမျိုးအစား protocol ၏တစ်ဦး OSI packet ကိုလျှင်စစ်မှန်သော။ ပရိုတိုကောနံပါတ်သို့မဟုတ်အမည်များ clnpesis, ဒါမှမဟုတ် ISIS နိုင်ပါတယ်။

clnp, esis, ISIS

အဘို့အတိုကောက်:

iso proto p

ဘယ်မှာ p အထက်ပါ protocol များ၏တဦးတည်းဖြစ်၏။ tcpdump သည်ဤ protocol များ parsing တစ်ဦးမပြည့်စုံအလုပ်မသတိပြုပါ။

expr relop expr

ယင်းနှင့်စပ်လျဉ်း relop> တစ်ဦးသည်အဘယ်မှာရှိ, <, ရရှိထားသူ> = <= =,! = နှင့် expr integer ဖြစ်တဲ့အတွက်ရုံကလွဲပြီး (စံကို C syntax အတွက်ထုတ်ဖော်ပြောဆို), ပုံမှန် binary အော်ပရေတာများ၏ရေးစပ်ထားတဲ့ဂဏန်းသင်္ချာစကားရပ်လျှင် + [စစ်မှန်သော - *, /, &, |] တစ်အရှည်အော်ပရေတာများနှင့်အထူး packet ကိုဒေတာ accessor ။ packet ကိုအတွင်းအပြင် data တွေကို access လုပ်ဖို့, အောက်ပါ syntax ကိုအသုံးပြုပါ:

proto [expr: အရွယ်အစား]

ပရိုတိုအီ, FDDI, TR, PPP, စလစ်, လင့်, ip, arp, rarp, TCP, UDP, ICMP သို့မဟုတ် ip6 တဦးဖြစ်ပြီး, ယင်းအညွှန်းကိန်းစစ်ဆင်ရေးများအတွက် protocol ကိုအလွှာကိုဖော်ပြသည်။ (အီ, FDDI, TR, PPP, ချော်နှင့်လင့်ထားသည်အပေါငျးတို့သ link ကိုအလွှာကိုရည်ညွှန်း။ ) ထို TCP မှတ်ချက်, UDP နှင့်အခြား upper-layer protocol ကိုအမျိုးအစားများကိုသာ IPv4 မဟုတ်ဘဲ IPv6 ကိုလျှောက်ထား (ဒီအနာဂတျမှာ fixed ပါလိမ့်မည်) ။ ညွှန်ပြချက် protocol ကိုအလွှာကိုမှဆွေမျိုးက byte ကိုထေမိ, expr ကပေးတဲ့ဖြစ်ပါတယ်။ Size ကိုရွေးချယ်နိုင်သည်နှင့်အတိုး၏လယ်ပြင်တွင် bytes ၏နံပါတ်ကိုညွှန်ပြ; ကဖြစ်စေတဦးတည်း, နှစ်, သို့မဟုတ်လေးခုနှင့်တဦးတည်းမှ default တန်ဖိုးရှိနိုင်ပါသည်။ keyword ကို Len အားဖြင့်ညွှန်ပြအရှည်အော်ပရေတာ, packet ကိုရဲ့အရှည်ကိုပေးသည်။

ဥပမာအားဖြင့်, `အီ [0] & 1! = 0 '' အားလုံး multicast အသွားအလာဖမျးတယျ။ ဟူသောအသုံးအနှုနျး `ip [0] & 0xf! = 5 '' ရွေးချယ်မှုများနှင့်အတူအားလုံးအိုင်ပီ packets တွေကိုဖမ်းမိ။ ဟူသောအသုံးအနှုနျး `ip [6: 2] & 0x1fff = 0 '' သာ unfragmented datagrams နှင့်စိတ်စိတ်အမွှာမွှာ datagrams ၏ frag သုညဖမျးတယျ။ ဤသည်ကို check လုံးလုံးလြားလြားဟာ TCP နှင့် UDP အညွှန်းကိန်းစစ်ဆင်ရေးမှလျှောက်ထားသည်။ ဥပမာ, TCP [0] အမြဲတမ်းကို TCP header ကို၏ပထမဦးဆုံးက byte ကိုဆိုလိုသည်နှင့်ဘယ်တော့မှတစ်ခုကွားအပိုင်းအစရဲ့ပထမဦးဆုံးက byte ကိုဆိုလိုသည်။

တချို့က offset နှင့်ကွင်းဆင်းတန်ဖိုးများအမည်များထက်အဖြစ်ဂဏန်းတန်ဖိုးများအဖြစ်ထုတ်ဖော်ပြောဆိုနိုင်ပါသည်။ အောက်ပါ protocol ကို header ကိုလယ်ပြင်ထေရရှိနိုင်နေသောခေါင်းစဉ်: icmptype (ICMP type field ကို), icmpcode (ICMP ကုဒ်လယ်ပြင်), နှင့် tcpflags (TCP အလံလယ်ပြင်) ။

အောက်ပါ ICMP type field ကိုတန်ဖိုးများကိုရရှိနိုင်နေသောခေါင်းစဉ်: ICMP-echoreply, ICMP-လက်လှမ်းမမှီပါ, ICMP-sourcequench, ICMP-redirect လုပ်ပေးခြင်း, ICMP-ပဲ့တင်သံ, ICMP-routeradvert, ICMP-routersolicit, ICMP-timxceed, ICMP-paramprob, ICMP-tstamp, ICMP -tstampreply, ICMP-ireq, ICMP-ireqreply, ICMP-maskreq, ICMP-maskreply

အောက်ပါသည် TCP အလံလယ်ကွင်းတန်ဖိုးများကိုရရှိနိုင်နေသောခေါင်းစဉ်: TCP-တောင်, TCP-syn, TCP-ညျပထမဆုံးအကွိမျ, TCP-တွန်းအားပေး, TCP-တွန်းအားပေး, TCP-ack, TCP-urg

Primitive အသုံးပြု. ပေါင်းစပ်စေခြင်းငှါ:

Primitive နှင့်အော်ပရေတာ (ကွင်းဟာရှဲလ်အထူးဖြစ်ကြပြီးထွက်ပြေးလွတ်မြောက်ရမည်ဖြစ်သည်) ၏တစ်ကွင်းအုပ်စုတစ်စု။

Negation ( `! 'သို့မဟုတ်` မဟုတ်ဘူး')

Concatenation ( `&& 'သို့မဟုတ်` နှင့်')

Alternative ( `|| 'သို့မဟုတ်` သို့မဟုတ်')

Negation အမြင့်ဆုံးစားပေးမှုရှိပါတယ်။ Alternative နှင့် concatenation ညာဘက် left တန်းတူစားပေးမှုနှင့်တွဲဖက်ရှိသည်။ ရှင်းလင်းပြတ်သားစွာနဲ့တိုကင်, juxtaposition ယခု concatenation ဘို့လိုအပ်သည်မဟုတ်ကြောင်းသတိပြုပါ။

တစ်ဦးအမှတ်အသားတစ်ခုသော့ချက်စာလုံးမပါဘဲပေးထားလျှင်, လတ်တလောသော့ချက်စာလုံးယူဆနေသည်။ ဥပမာ,

vs အိမ်ရှင်အဖြစ်လက်ခံကျင်းပခြင်းနှင့် Ace မဟုတ်

အတိုကောက်ဖြစ်ပါတယ်

vs အိမ်ရှင်အဖြစ်လက်ခံကျင်းပခြင်းနှင့်အိမ်ရှင် Ace မဟုတ်

အရာတွေနဲ့မရောထွေးမဖြစ်သင့်

မရ (vs အိမ်ရှင်သို့မဟုတ် Ace)

expression အငြင်းပွားမှုများပိုမိုအဆင်ပြေဖြစ်ပါတယ်ကိုမဆို, တစ်ခုတည်းအငြင်းအခုံသို့မဟုတ်အဖြစ်မျိုးစုံအငြင်းပွားမှုများဖြစ်စေအဖြစ် tcpdump မှလွန်စေနိုင်သည်။ ဟူသောအသုံးအနှုနျး Shell က metacharacters ပါရှိသည်လျှင်ယေဘုယျအားဖြင့်, ကတစ်ခုတည်း, ကိုးကားအငြင်းအခုံအဖြစ်မလွန်ဖို့ပိုပြီးလွယ်ကူသည်။ အကွိမျမြားစှာအငြင်းပွားမှုများသရုပျခှဲခံရမီနေရာများနှင့်အတူ concatenated နေကြသည်။

ဥပမာများ

အားလုံး packets တွေကိုရောက်ရှိလာသောသို့မဟုတ်နေဝင်ထံမှ ထွက်. print ထုတ်ရန်:

tcpdump အိမ်ရှင်နေဝင်

helios နှင့်ပူပြင်းသို့မဟုတ် Ace ဖြစ်စေအကြားပုံနှိပ်အသွားအလာရန်:

tcpdump အိမ်ရှင် helios နှင့် \ (ပူပြင်းသို့မဟုတ် Ace \)

Ace နှင့် helios မှလွဲ. မည်သည့်အိမ်ရှင်တို့အကြားအားလုံးအိုင်ပီ packets တွေကို print ထုတ်ရန်:

tcpdump ip အိမ်ရှင် Ace နှင့်မ helios

ဘာကလေမှာဒေသခံကောင်းကင်ဗိုလ်ခြေအရှင်နှင့်ကောင်းကင်ဗိုလ်ခြေအရှင်အကြား traffic အားလုံးကို print ထုတ်ရန်:

အသားတင် ucb-အီ tcpdump

အင်တာနက်ဂိတ်ဝေး snup အားဖြင့်ခပ်သိမ်းသော ftp အသွားအလာ print ထုတ်မှ: (ဟူသောအသုံးအနှုနျး (mis- ထံမှ shell ကိုကာကွယ်တားဆီးဖို့ကိုးကားကြောင်းသတိပြုပါ) ဟာကွင်းပြန်ဆို):

tcpdump '' တံခါးပေါက် snup နှင့် (ဆိပ်ကမ်းကို ftp သို့မဟုတ် ftp-ဒေတာ) '

ယာဉ်အသွားအလာ print ထုတ်မှရင်းမြစ်ထားတဲ့မဟုတ်သလိုဒေသခံကောင်းကင်ဗိုလ်ခြေအရှင် (သင်တဦးတည်းကိုအခြားအသားတင်မှ gateway လျှင်, ဒီပစ္စည်းပစ္စယသင့်ဒေသခံအသားတင်ပေါ်ကိုလုပ်ဘယ်တော့မှသင့်ပါတယ်) အတွက်လတ်မဟုတ်။

tcpdump ip နှင့်ပိုက်ကွန်ကိုမပေး localnet

non-ဒေသခံအိမ်ရှင်ပါဝငျကွောငျးတစျခုစီကို TCP စကားပြောဆိုမှုရဲ့ start နှင့်အဆုံး packets တွေကိုပါ (SYN နှင့်တောင် packets တွေကို) print ထုတ်ရန်။

tcpdump '' TCP [tcpflags] & (TCP-syn | TCP-တောင်) = 0 နှင့်မ src နှင့်ပညာ, အသားတင် localnet! '

ကြာကြာတံခါးပေါက် snup မှတဆင့်လှေတျတျောမူ 576 byte ထက်အိုင်ပီ packets တွေကို print ထုတ်ရန်:

tcpdump '' တံခါးပေါက် snup နှင့် ip [2: 2]> 576 ''

Ethernet ထုတ်လွှင့်သို့မဟုတ် multicast ကနေတဆင့်လှေတျတျောမခဲ့ IP ကိုထုတ်လွှင့်သို့မဟုတ် multicast packets တွေကို print ထုတ်ရန်:

tcpdump '' အီ [0] & = 0 1 နှင့် ip [16]> = 224 ''

ပဲ့တင်သံတောင်းဆိုမှုများ / ဖြေကြားမှုများ (ဆိုလိုသည်မှာမဟုတ်ဘဲ ping ရဲ့ packets တွေကို) မဟုတ်သောသူအပေါင်းတို့သည် ICMP packets တွေကို print ထုတ်ရန်:

tcpdump '' ICMP [icmptype]! = ICMP-ပဲ့တင်သံနှင့် [icmptype]! = ICMP-echoreply ICMP ''

OUTPUT FORMAT

tcpdump ၏ output protocol ကိုမှီခိုသည်။ အောက်ပါအဆိုပါပုံစံများအများစု၏အကျဉ်းဖော်ပြချက်များနှင့်ဥပမာပေးသည်။

Link ကိုအဆင့် header

ကို '-e' 'option ကိုပေးထားလျှင်, link ကိုအဆငျ့ header ကိုထွက်ရိုက်နှိပ်ထားပါသည်။ Ethernet တွေတွင်, အရင်းအမြစ်နှင့်ဦးတည်ရာကိုလိပ်စာများ, protocol ကိုများနှင့် packet ကိုအရှည်ပုံနှိပ်နေကြသည်။

FDDI ကွန်ရက်များတွင် '' -e '' option ကို, ထို `ဘောင်ထိန်းချုပ်မှု '' လယ်ပြင် print ထုတ်မှ tcpdump ဖြစ်ပေါ်စေသည်အရင်းအမြစ်နှင့်ဦးတည်ရာကိုလိပ်စာများ, နှင့် packet ကိုအရှည်။ (အဆိုပါ `ဘောင်ထိန်းချုပ်မှု '' လယ်ပြင် packet ကို၏ကျန်၏အနက်ကိုအုပ်ချုပ်ထိုကဲ့သို့သော IP အသုံးပွု်ရှိသူများအဖြစ်ပုံမှန် packets တွေကို ()` async ဖြစ်ကြသည်။ '' packets တွေကို 0 နှင့် 7 တို့အကြားဦးစားပေးတန်ဖိုး; ဥပမာ `async4 '' ဤသို့သော။ packets တွေကိုတစ်ဦး 802.2 Logical Link ကိုထိန်းချုပ်ရေး (LLC) packet ကိုဆံ့ဖို့ယူဆနေကြသည်; ကတစ်ခုက ISO datagram တစ်ခုသို့မဟုတ်ဒါခေါ် SNAP packet ကိုမပါလျှင် LLC သည် header ကိုပုံနှိပ်ဖြစ်ပါတယ်။

Token Ring ကွန်ရက်များတွင် '' -e '' option ကို tcpdump သည့် `access ကိုထိန်းချုပ်မှု 'နှင့်` ဘောင်ထိန်းချုပ်မှု' 'လယ်ကွင်း, အရင်းအမြစ်နှင့်ဦးတည်ရာကိုလိပ်စာများ, နှင့် packet ကိုအရှည် print ထုတ်မှကိုဖြစ်ပေါ်စေသည်။ FDDI ကွန်ရက်များပေါ်တွင်အမျှ packets တွေကိုတစ်ဦး LLC packet ကိုဆံ့ဖို့ယူဆနေကြသည်။ မည်သို့ပင်ကို '-e' 'option ကိုသတ်မှတ်ထားသောသို့မဟုတ်မ, အရင်းအမြစ် routing information ကို source ကို-ရှုံး packets တွေကိုများအတွက်ပုံနှိပ်ဖြစ်ပါတယ်ရှိမရှိ၏။

(NB အောက်ပါဖော်ပြချက်ကို RFC-1144 မှာဖော်ပြထားတဲ့ချော်ချုံ့ algorithm နှင့်အတူကျွမ်းယူဆ။ )

ချော်လင့်များတွင်တစ်ဦးဦးတည်ချက်ညွှန်ပြချက် ( `` ငါ 'အပြင်ထွက်ဘို့' '' ဘက်က, `` အိုအဘို့ '), packet ကိုအမျိုးအစားနှင့်ချုံ့သတင်းအချက်အလက်ထုတ်ပုံနှိပ်နေကြသည်။ packet ကို type ကိုပထမဦးဆုံးပုံနှိပ်ဖြစ်ပါတယ်။ အဆိုပါသုံးမျိုး ip, utcp နှင့် ctcp ဖြစ်ကြသည်။ အဘယ်သူမျှမကနောက်ထပ် link ကိုသတင်းအချက်အလက် ip packets တွေကိုအဘို့ရိုက်နှိပ်ထားပါသည်။ သည် TCP packet များကိုအဘို့, ကွန်နက်ရှင်အမှတ်အသားအမျိုးအစားကိုအောက်ပါပုံနှိပ်ဖြစ်ပါတယ်။ packet ကို compressed လျှင်၎င်း၏ကုဒ်သွင်း header ကိုထွက်ရိုက်နှိပ်ထားပါသည်။ အထူးအမှုပေါင်း * S + n နှင့်ဎအဆိုပါ sequence ကိုအရေအတွက်က (သို့မဟုတ် sequence ကိုနံပါတ်နှင့် ack) ပြောင်းလဲသွားပြီသောငွေပမာဏသည်အဘယ်မှာရှိ * SA + N အဖြစ်ထွက်ပုံနှိပ်နေကြသည်။ ဒါကြောင့်အထူးကိစ္စမပါရှိလျှင်, သုညသို့မဟုတ်ထိုထက်ပိုသောအပြောင်းအလဲပုံနှိပ်နေကြသည်။ တစ်ဦးကအပြောင်းအလဲတစ်ခုမြစ်ဝကျွန်းပေါ် (+ ဎသို့မဟုတ် -n), သို့မဟုတ်အသစ်တန်ဖိုးကိုလိုက်ဦး (အရေးပေါ် pointer), W က (window ကို), တစ်ဦးက (ack), S ကို (sequence ကိုနံပါတ်), ငါ (packet ကို ID ကို), တို့ကညွှန်ပြနေသည် (= ဎ) ။ နောက်ဆုံးအနေနဲ့ packet ကိုများနှင့် compressed header ကိုအရှည်အချက်အလက်များ၏ပမာဏကိုပုံနှိပ်နေကြသည်။

ဥပမာအားဖြင့်, အောက်ပါလိုင်းတခုသွယ်ဝိုက်ချိတ်ဆက်မှုကိုအမှတ်အသားနှင့်အတူကို TCP packet ကို compressed အနေနဲ့အပြင်ထွက်ပြသ; အဆိုပါ ack 6 အသုံးပြုပုံ 6 49 အားဖြင့် sequence ကို, နံပါတ်နှင့် packet ကို ID ကိုပြောင်းလဲပစ်တော်မူပြီ အချက်အလက်များနှင့် compressed header ကို 6 bytes 3 bytes ရှိပါတယ်:

ctcp အို * A + 6 S + 49 ငါ + 6 3 (6)

ARP / RARP အထုပ်

arp / rarp output ကိုတောင်းဆိုချက်အရနှင့်၎င်း၏အငြင်းပွားမှုများအမျိုးအစားကိုပြသသည်။ အဆိုပါပုံစံကိုကိုယ့်ကိုယ်ကိုရှင်းလင်းဖြစ်ဖို့ရည်ရွယ်ထားသည်။ ဤတွင် csam အိမ်ရှင်အဖြစ်လက်ခံကျင်းပအိမ်ရှင် rtsg တစ်ဦးထံမှ `rlogin '' ရဲ့ start ကနေယူတိုတောင်းတဲ့နမူနာဖြစ်ပါသည်:

csam လက်ခံရရှိတဲ့ arp reply csam rtsg ပြောပြ-သူ arp ဖြစ်ပါတယ်-မှာ CSAM

ပထမဦးဆုံးအလိုင်း rtsg အင်တာနက်အိမ်ရှင် csam ၏ Ethernet address ကိုတောင်းထားတဲ့ arp packet ကိုစလှေတျတျောကပြောပါတယ်။ Csam (ဒီဥပမာထဲမှာ, Ethernet လိပ်စာများကိုအနိမ့်အမှုအတွက်ဦးထုပ်နှင့်အင်တာနက်လိပ်စာများ၌ရှိကြ၏) က၎င်း၏ Ethernet address ကိုအတူပြန်ဖြေတယ်။

ကျနော်တို့ tcpdump -n ပြုမိခဲ့မယ်ဆိုရင်ဒါဟာလျော့နည်းမလိုအပ်တဲ့ကြည့်ရှုမည်ဟု:

128.3.254.68 လက်ခံရရှိတဲ့ arp reply 128.3.254.6 ပြောပြ 128.3.254.6-သူ arp ဖြစ်ပါတယ်-မှာ 02: 07: 01: 00: 01: c4

ကျနော်တို့ tcpdump -e လုပ်ခဲ့လျှင်, ပထမဦးဆုံး packet ကိုထုတ်လွှင့်ခြင်းနှင့်ဒုတိယ Point-to-point ဖြစ်ပါတယ်ဆိုတဲ့အချက်ကိုမြင်နိုင်ပါလိမ့်မယ်:

RTSG အသံလွှင့် 0806 64: လက်ခံရရှိတဲ့ arp reply csam ဖြစ်ပါတယ်-မှာ CSAM: csam rtsg CSAM RTSG 0806 64 ပြောပြ-သူ arp

ဒီ Ethernet အရင်းအမြစ်လိပ်စာ RTSG ကပြောပါတယ်ပထမဦးဆုံး packet ကိုအဘို့, destination သည် Ethernet ထုတ်လွှင့်လိပ်စာ, အမျိုးအစား CONTAINER အကွက် hex 0806 (type ကို ETHER_ARP) ဖြစ်ပါသည်နှင့်စုစုပေါင်းအရှည် 64 bytes ဖြစ်ခဲ့သည်။

သည် TCP အထုပ်

(NB အောက်ပါဖော်ပြချက်ကို RFC-793 မှာဖော်ပြထားတဲ့သည် TCP protocol ကိုအတူကျွမ်းယူဆသင် protocol ကိုအကျွမ်းတဝင်မဟုတ်လျှင်ဤဖော်ပြချက်မဟုတ်သလို tcpdump မသည်သင်အများကြီးအသုံးပြုခြင်းဖြစ်လိမ့်မည်။ ။ )

တစ်ဦး TCP protocol ကိုလိုင်းများ၏ယေဘုယျပုံစံဖြစ်ပါသည်:

src> ပညာ,: window ကိုအရေးပေါ်ရှေးခယျြစရာ ack အလံဒေတာ-seqno

src နှင့်ပညာ, အရင်းအမြစ်နှင့်ဦးတည်ရာကို IP လိပ်စာများနှင့်ဆိပ်ကမ်းများဖြစ်ကြသည်။ အလံ `S ကိုအချို့ပေါင်းစပ် (SYN), F (တောင်), P ကို (PUSH) သို့မဟုတ် R ကို (ညျပထမဆုံးအကွိမျ) သို့မဟုတ်တစ်ခုတည်းရှိပါတယ်။ '' (အဘယ်သူမျှမအလံ) ။ data-seqno (အောက်တွင်ဥပမာကိုကြည့်ပါ) ဒီအ packet ကိုအတွက်ဒေတာဖြင့်ဖုံးလွှမ်း sequence ကို space ၏အဘို့ကိုဖော်ပြသည်။ Ack ဒီကွန်နက်ရှင်အပေါ်အခြားဦးတည်ချက်မျှော်လင့်ထားသည့်လာမည့်အချက်အလက်များ၏ sequence ကိုအရေအတွက်ဖြစ်ပါတယ်။ ဝင်းဒိုးကိုမရရှိနိုင်ခံယူကြားခံနေရာ bytes ၏နံပါတ်ကဒီကွန်နက်ရှင်အပေါ်အခြားဦးတည်ချက်ဖြစ်ပါတယ်။ Urg packet ကိုခုနှစ်တွင် `အရေးပေါ် '' ဒေတာများကိုလည်းမရှိဖော်ပြသည်။ Options ကိုထောင့်ကွင်းခတ်အတွက်ပူးတွဲ TCP ရွေးချယ်စရာရှိပါတယ် (ဥပမာ ) ။

src, ပညာ, နဲ့အလံအမြဲပစ္စုပ္ပန်ဖြစ်ကြသည်။ အခြားလယ်ကွက် packet ကိုရဲ့ TCP protocol ကိုခေါင်းစဉ်ရဲ့ contents အပေါ်မူတည်ခြင်းနှင့် output ကိုသာသင့်လျော်သောပါလျှင်ဖြစ်ကြသည်။

ဤတွင် csam အိမ်ရှင်အဖြစ်လက်ခံကျင်းပအိမ်ရှင် rtsg တစ်ဦးထံမှ rlogin ၏အဖွင့်ရသောပညတ်ဖြစ်သတည်း။

rtsg.1023> csam.login: S ကို 768512: 768512 (0) 4096 အနိုင်ရ csam.login> rtsg.1023: S ကို 947648: 768513 ack 947648 (0) 4096 rtsg.1023> csam အနိုင်ရ။ လော့ဂ်အင်: ။ : P: 1 2 (1) ack 1 4096 csam.login> rtsg.1023 အနိုင်ရ: ack 1 4096 rtsg.1023> csam.login အနိုင်ရ။ : P 2:21 များ (19) ack 1 အနိုင်ရရှိ 4096 csam.login> rtsg.1023: ack 2 4096 rtsg.1023> csam.login အနိုင်ရ P ကို ​​1: 2 (1) 21 ack 4077 csam.login> rtsg.1023 အနိုင်ရ: : P 2: 3 (1) 21 ack 4077 urg 1 csam.login> rtsg.1023 အနိုင်ရ: P 3: 4 (1) 21 ack 4077 urg 1 အနိုင်ရ

ပထမဦးဆုံးအလိုင်း rtsg အပေါ် TCP port 1023 csam အပေါ်ဆိပ်ကမ်းကိုရဲ့ login တစ် packet ကိုစလှေတျတျောကပြောပါတယ်။ အဆိုပါ S ဟာ SYN အလံသတ်မှတ်ထားခဲ့ဖော်ပြသည်။ packet ကို sequence ကိုအရေအတွက်က 768512 နှင့်မဒေတာပါရှိသော။ မရှိ piggy ကျောထောက်နောက်ခံ ack ရှိခဲ့သည်ရရှိနိုင်သော window ကို 4096 bytes ကြီးခံယူ: (နောက်ဆုံး (nbytes) 'မှတက်ပထမဆုံး `sequence ကိုနံပါတ်များကိုဆိုလိုတယ်ပေမယ် nbytes bytes အသုံးပြုသူအချက်အလက်များ၏ဖြစ်သည့်နောက်ဆုံးအပါအဝင်မဟုတ်သည့်' '။ အဆိုပါသင်္ကေတ` ပထမဦးဆုံးဖြစ်ပါတယ်) 1024 bytes တစ်ခု mss တောင်းခံတဲ့ max ကို-segment ကို-size option ကိုရှိခဲ့သည်။

Csam က rtsg ရဲ့ SYN များအတွက် piggy ကျောထောက်နောက်ခံ ack ပါဝင်သည် မှလွဲ. အလားတူ packet ကိုအတူပြန်ဖြေတယ်။ Rtsg ထို့နောက် csam ရဲ့ SYN acks ။ အဆိုပါ `။ ' အဘယ်သူမျှမအလံသတ်မှတ်ထားခဲ့သည်ကိုဆိုလိုသည်။ အဘယ်သူမျှမဒေတာ sequence ကိုအရေအတွက်အားလည်းမရှိဒါ packet ကိုအဘယ်သူမျှမဒေတာပါရှိသော။ အဆိုပါ ack sequence ကိုအရေအတွက်ကသေးငယ်တဲ့ကိန်း (1) ကြောင်းသတိပြုပါ။ ပထမဦးဆုံးအကြိမ် tcpdump က packet ကိုမှအ sequence ကိုအရေအတွက်ကနေရိုက်ထုတ်နေတဲ့ TCP `စကားပြောဆိုမှု '' မြင်သည်။ စကားပြောနောက်ဆက်တွဲ packets တွေကိုတွင်, လက်ရှိ packet ကိုရဲ့ sequence ကိုနံပါတ်တစ်ခုနှင့်ဤကနဦး sequence ကိုနံပါတ်တစ်ခုအကြားခြားနားချက်ပုံနှိပ်ဖြစ်ပါတယ်။ ပထမစကားပြောဆိုမှုရဲ့ဒေတာစီး (ပထမဒေတာက byte နှင့်အတူတစ်ဦးချင်းစီဦးတည်ချက် `1 ဖြစ်ခြင်း ') အတွက်ဆွေမျိုးက byte ရာထူးအဖြစ်အဓိပ္ပာယ်ကောက်ယူနိုင်ပါသည်ပြီးနောက်ဤ sequence ကိုနံပါတ်များကိုဆိုလိုသည်။ `-s '' မူလ sequence ကိုနံပါတ်များကို output ကိုဖြစ်စေ, ဒီ feature ဖျက်ရေးသွားမည်။

6 လိုင်းတွင်, rtsg အချက်အလက်များ၏ csam 19 bytes (- စကားပြော> csam ခြမ်းဟာ rtsg 20 မှတဆင့် bytes 2) ပေးပို့သည်။ အဆိုပါ PUSH အလံ packet ကိုသတ်မှတ်တာဖြစ်ပါတယ်။ 7 လိုင်းတွင်, csam ကမှတက် rtsg ပေမယ် csam ရဲ့ပြတင်းပေါက်သေးငယ် 19 bytes ကိုဆည်းပူးခဲ့ပါသည်ခံယူကတည်းကက byte 21. အပါအဝင်ဒီအချက်အလက်များ၏အများစုမှာပုံ socket ကြားခံ၌ထိုင်သည်ကိုမရကစေလွှတ်ဒေတာကိုလက်ခံရရှိရဲ့ကပြောပါတယ်။ Csam လည်းဒီ packet ကိုအတွက် rtsg မှအချက်အလက်များ၏တဦးတည်းက byte ပေးပို့သည်။ 8 နှင့် 9 လိုင်းများတွင်, csam အရေးပေါ်နှစ်ခု bytes ပေးပို့ rtsg မှဒေတာများတွန်း။

အဆိုပါလျှပ်တစ်ပြက် tcpdump အပြည့်အဝကို TCP header ကိုဖမ်းယူမလုံလောကျသေးငယ်ခဲ့လျှင်၎င်းသည် [ `` ဒါကြောင့်တတ်နိုင်သမျှအတိုင်း header ကို၏အဖြစ်အများကြီးအနက်ဖွင့်ပြီးတော့သတင်းပေးပို့ထားပါတယ် | ကျန်ရှိသောအနက်မရနိုင်တော့ညွှန်ပြရန် TCP] '' ။ အဆိုပါခေါင်းစဉ်တစ်ခုအတုအယောင် option ကို (သေးငယ်လွန်းခြင်းသို့မဟုတ်ခေါင်းစဉ်၏အဆုံးကျော်လွန်ပြီးဖြစ်စေမယ့်တစ်ဦးအရှည်နှင့်တသားတ) ပါရှိသည်ဆိုလျှင်, tcpdump `` [မကောင်းတဲ့ဘေးဖယ်] '' အဖြစ်ကသတင်းပေးပို့ထားပါတယ် 'နှင့်ကပြောပြရန်မဖြစ်နိုင်မယ့်ကတည်းကမဆိုနောက်ထပ်ရွေးစရာများ (အနက်ကိုဘော်ပြမထားဘူး သူတို့ start ရှိရာ) ။ အဆိုပါ header ကိုအရှည်ရွေးချယ်စရာလက်ဆောင်ရှိပါတယ်ဒါပေမယ့် IP အသုံးပွုအရှည် options တွေကိုအမှန်တကယ်ရှိရန်အဘို့အလုံလောက်အောင်ရှည်လျားမဟုတ်ပါဘူးဆိုတာကိုပြသနေလျှင်, tcpdump '' `` [မကောင်းတဲ့ HDR အရှည်] အဖြစ်ကသတင်းပေးပို့ထားပါတယ်။

အထူးသဖြင့်အလံပေါင်းစပ် (စသည်တို့ကို SYN-ACK, URG-ACK) နှင့်အတူကို TCP packet များကိုဖမ်းယူ

ကို TCP header ကိုထိန်းချုပ်မှု-bits အပိုင်း 8 bits သည်ရှိပါသည်:

CWR | Ece | URG | ACK | PSH | ညျပထမဆုံးအကွိမျ | syn | ငါးဆူး

ရဲ့ကျွန်တော်တစ်ဦးသည် TCP ဆက်သွယ်မှုထူထောင်ရာတွင်အသုံးပြု packets တွေကိုစောင့်ကြည့်ဖို့လိုခငျြယူဆပါစို့။ ဒါကြောင့်အသစ်တခုကွန်နက်ရှင် initializes သည့်အခါ TCP 3-လမ်းလက်ဆွဲ protocol ကိုအသုံးပြုမှတျမိသ; ကို TCP ထိန်းချုပ်မှု-bits နှင့် ပတ်သက်. ဆက်သွယ်မှု sequence ကိုဖြစ်ပါတယ်

1) ခေါ်ဆိုသူ SYN ပို့ပေး

2) လက်ခံသူ SYN, ACK နှင့်အတူတုံ့ပြန်

3) ခေါ်ဆိုသူ ACK ပို့ပေး

ယခုငါတို့သာ SYN bit နဲ့အစု (အဆင့် 1) ရှိသည် packets တွေကိုဖမ်းယူကိုစိတ်ဝင်စားနေသည်။ ကျနော်တို့ခြေလှမ်း 2 ကနေ (SYN-ACK) packets တွေကိုမလိုချင်ကြဘူးသတိပြုပါ့လွင်ပြင်ကနဦး SYN ။ အဘယ်အရာကိုကျနော်တို့လိုအပ်ပါတယ် tcpdump များအတွက်မှန်ကန်သော filter ကိုစကားရပ်ဖြစ်ပါတယ်။

ရွေးချယ်စရာမရှိဘဲသည် TCP header ကို၏ဖွဲ့စည်းပုံမှာသတိရပါ:

0 င် 15 ဦး 31 ----------------------------------------------- ------------------ | အရင်းအမြစ်ဆိပ်ကမ်းကို | ဦးတည်ရာဆိပ်ကမ်းကို | -------------------------------------------------- --------------- | sequence ကိုနံပါတ်တစ်ခု | -------------------------------------------------- --------------- | အသိအမှတ်ပြုအရေအတွက်ကို | -------------------------------------------------- --------------- | HL | rsvd | ကို C | အီး | ဦး | တစ်ဦး | P ကို ​​| R ကို | S ကို | F ကို | ဝင်းဒိုးကိုအရွယ်အစား | -------------------------------------------------- --------------- | သည် TCP checksum | အရေးပေါ် pointer | -------------------------------------------------- ---------------

ရွေးချယ်စရာလက်ဆောင်များမှာမဟုတ်လျှင်တစ်ဦးသည် TCP header ကိုများသောအားဖြင့်, ဒေတာ 20 ရှစ်လုံးတွဲရရှိထားပါသည်။ အဆိုပါဂရပ်၏ပထမဦးဆုံးလိုင်းရှစ်လုံးတွဲပါ 0 င်ပါရှိသည် - စသည်တို့ကို 7 - 3, ဒုတိယလိုင်းရှစ်လုံးတွဲ 4 ကိုပြသ

0 င်နှင့်အတူရေတွက်ဖို့စတင်ကာသက်ဆိုင်ရာသည် TCP ထိန်းချုပ်မှု-bits octet 13 တွင်ပါရှိသောနေကြသည်:

0 င် 7 | 15 | 23 | 31 ---------------- | --------------- | --------------- | ---------------- | HL | rsvd | ကို C | အီး | ဦး | တစ်ဦး | P ကို ​​| R ကို | S ကို | F ကို | ဝင်းဒိုးကိုအရွယ်အစား | ---------------- | --------------- | --------------- | - --------------- | | 13 octet | | |

ရဲ့ octet အဘယ်သူမျှမတစ်ဦးပိုမိုနီးကပ်စွာကြည့်ကြပါစို့။ 13:

| | | --------------- | | ကို C | အီး | ဦး | တစ်ဦး | P ကို ​​| R ကို | S ကို | F ကို | | --------------- | | 7 5 3 0 |

ဤရွေ့ကားကျွန်တော်စိတ်ဝင်စားနေကြသည်ကို TCP ထိန်းချုပ်မှု-bits ရှိပါတယ်။ ကျနော်တို့ညာဖို့, 0 ကနေ 7 ဤရှစ်လုံးတွဲအတွက်-bits ကိုရေတွက်ကြပါပြီ, ဒါကြောင့် URG နည်းနည်းအရေအတွက်က 5 ဖြစ်ပါတယ်နေစဉ် PSH နည်းနည်း, နည်းနည်းအရေအတွက်ကို 3 ဖြစ်ပါတယ်။

သာ SYN အစုံနှင့်အတူ packets တွေကိုဖမ်းဆီးဖို့ချင်သောသတိရပါ။ ရဲ့တစ်ဦးသည် TCP datagram က၎င်း၏ခေါင်းစဉ်အတွက်သတ်မှတ် SYN နည်းနည်းနှင့်အတူရောက်ရှိလျှင် 13 octet ဖွစျသှားအဘယ်အရာကိုမြင်ကြကုန်အံ့:

| ကို C | အီး | ဦး | တစ်ဦး | P ကို ​​| R ကို | S ကို | F ကို | | --------------- | | 0 0 0 0 0 0 1 0 ခု | | --------------- | | 7 6 5 4 3 2 1 0 င် |

သာနည်းနည်းအရေအတွက်ကို 1 (SYN) သတ်မှတ်ထားကြောင်းတွေ့မြင်ထိန်းချုပ်မှု-bits အပိုင်းကိုကြည့်။

ကြောင်းရှစ်လုံးတွဲအရေအတွက်က 13 ယူဆရင်ဒီ octet ၏ binary value ကိုဖြစ်တယ်, ကွန်ယက်ကိုက byte နိုင်ရန်အတွက် 8-bit နဲ့လက်မှတ်မထိုးကိန်းဖြစ်ပါသည်

00000010

နှင့်၎င်း၏ဒဿမကိုယ်စားပြုမှုဖြစ်ပါသည်

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

ယခုသာလျှင်ကွန်ယက်ကိုက byte နိုင်ရန်အတွက်တစ်ဦး 8-bit နဲ့လက်မှတ်မထိုးကိန်းအဖြစ်အဓိပ္ပာယ်ကောက်ယူတဲ့အခါမှာ SYN, ကို TCP header ကိုအတွက် 13 octet ၏တန်ဖိုးသတ်မှတ်ထားကြောင်းသိသောကြောင့်ကျနော်တို့နီးပါးအတိအကျ 2 ဖြစ်ရမည်, ပြီးပြီ။

ဒီအကြားဆက်ဆံရေးအဖြစ်ထုတ်ဖော်ပြောဆိုနိုင်ပါသည်

TCP [13] == 2

ကျနော်တို့သာ SYN ထားရှိသည်သော packets တွေကိုစောင့်ကြည့်နိုင်ရန်အတွက် tcpdump များအတွက်သီးသန့်စစ်ထုတ်ရန်အဖြစ်ဤအသုံးအနှုနျးကိုသုံးနိုင်သည်:

tcpdump -i xl0 TCP [13] == 2

ဟူသောအသုံးအနှုနျးကျနော်တို့ချင်အတိအကျကားအဘယ်သို့သော "တစ်ဦးသည် TCP datagram ၏ 13 ရှစ်လုံးတွဲဟာဒဿမတန်ဖိုးကို 2 ပါစေ" လို့ပြောပါတယ်။

အခုတော့ရဲ့ကျနော်တို့ SYN packets တွေကိုဖမ်းယူဖို့လိုအပ်ယူဆကြကုန်အံ့, ဒါပေမယ့် ACK သို့မဟုတ်အခြားကို TCP ထိန်းချုပ်မှုနည်းနည်းတစ်ချိန်တည်းမှာသတ်မှတ်ထားလျှင်ကျွန်တော်ဂရုမစိုက်ပါဘူး။ ရဲ့ SYN-ACK အစုံနှင့်အတူတစ်ဦးသည် TCP datagram ရောက်ရှိသည့်အခါ 13 octet ဖွစျသှားအဘယ်အရာကိုမြင်ကြကုန်အံ့:

| ကို C | အီး | ဦး | တစ်ဦး | P ကို ​​| R ကို | S ကို | F ကို | | --------------- | | 0 င် 0 င် 0 င် 1 0 0 1 0 ခု | | --------------- | | 7 6 5 4 3 2 1 0 င် |

အခုတော့ 1 bits နဲ့ 4 13 ရှစ်လုံးတွဲထားကြသည်။ octet 13 ထို binary value ကိုဖြစ်ပါတယ်


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

အခုဆိုရင်ကျွန်တော်တို့ SYN-ACK ထားရှိသည်သောသူတို့သာ packets တွေကို select လုပ်ပါလိမ့်မယ်ဘာဖြစ်လို့လဲဆိုတော့ရုံ, အ tcpdump filter ကိုစကားရပ်၌ 'TCP [13] == 18' 'ကိုမသုံးပေမယ်သာ SYN set ကိုအတူမသူတို့အားနိုင်ပါတယ်။ ACK သို့မဟုတ်အခြားထိန်းချုပ်မှုနည်းနည်းနေသမျှကာလပတ်လုံး SYN သတ်မှတ်အဖြစ်သတ်မှတ်မယ်ဆိုရင်ကျနော်တို့ဂရုမစိုက်ပါဘူးဆိုတာသတိရပါ။

ကျွန်တော်တို့ရဲ့ရည်မှန်းချက်အောင်မြင်ရန်အလို့ငှာ, ကျနော်တို့ SYN bit နဲ့ထိန်းသိမ်းပေးဖို့ယုတ္တိဗေဒနှင့်အချို့သောအခြားတန်ဖိုး octet 13 binary value ကိုလိုအပ်ပါတယ်။ ကျနော်တို့ SYN မဆိုအမှု၌သတ်မှတ်ထားခံရဖို့လိုကွောငျးကိုသိ, ဒါကြောင့်ကျွန်တော်တစ်ဦး SYN ၏ binary value ကိုအတူယုတ္တိနည်းင် 13 octet အတွက်တန်ဖိုး:

00010010 SYN-ACK 00000010 SYN နှင့် 00000010 (ကြှနျုပျတို့ SYN ချင်) နှင့် 00000010 (ကြှနျုပျတို့ SYN ချင်) -------- -------- = 00000010 = 00000010

ငါတို့သည်ဤ AND စစ်ဆင်ရေးမသက်ဆိုင် ACK သို့မဟုတ်အခြားကို TCP ထိန်းချုပ်မှုနည်းနည်းသတ်မှတ်ရှိမရှိတူညီတဲ့ရလဒ်ကယ်တင်ကြောင်းသိမြင်ရကြ၏။ အဆိုပါဒဿမယင်းနှင့်တန်ဖိုးကိုယ်စားပြုမှုအဖြစ်ကောင်းစွာအဖြစ်ဤစစ်ဆင်ရေး၏ရလဒ် 2 (00000010 binary) ဖြစ်ပါသည်, ဒါကြောင့်ကျနော်တို့ SYN နှင့်အတူ packets တွေကိုများအတွက်အောက်ပါစပ်လျဉ်းစစ်မှန်တဲ့ကိုင်ထားရမယ် set သင်သိရ:

(ရှစ်လုံးတွဲ 13 (တန်ဖိုး) နှင့် (2)) == (2)

ဒါက tcpdump filter ကိုစကားရပ်ဖို့ကျွန်တော်တို့ကိုထောက်ပြ

tcpdump -i xl0 '' TCP [13] & 2 == 2 '

သင်နှင့်ဖုံးကွယ်ထားရန်ဟူသောအသုံးအနှုနျးအတွက်တစ်ခုတည်းကိုးကားဒါမှမဟုတ်ဘယ်ဘက်မျဉ်းစောင်းကိုအသုံးပြုဖို့သင့်ကြောင်းမှတ်ချက် ( '&') shell ကိုမှအထူးဇာတ်ကောင်။

UDP packets

UDP ကို ​​format နဲ့ဒီ rwho packet ကိုအားဖြင့်သရုပ်ဖော်နေသည်:

actinide.who> broadcast.who: UDP 84

ဤသည်အိမ်ရှင်အက်တီနိုက်အပေါ်သူကိုအိမ်ရှင်ထုတ်လွှင့်, အင်တာနက်ထုတ်လွှင့်လိပ်စာအပေါ်ဆိပ်ကမ်းတစ် UDP datagram စေလွှတ်တော်မူသောဆိပ်ကမ်းကိုကပြောပါတယ်။ packet ကိုအသုံးပြုသူအချက်အလက်များ၏ 84 bytes ပါရှိသည်။

တချို့က UDP ကိုန်ဆောင်မှုများ (ရင်းမြစ်သို့မဟုတ်ဦးတည်ရာကို port နံပါတ်ထံမှ) အသိအမှတ်ပြုကြသည်နှင့်အဆင့်မြင့် protocol ကိုသတင်းအချက်အလက်ပုံနှိပ်။ NFS ဖို့အထူးသဖြင့်, Website ရဲ့ Domain Name ဝန်ဆောင်မှုတောင်းဆိုမှုများကို (RFC-1034/1035) နှင့်ဆန်း RPC ဖုန်းခေါ်ဆိုမှု (RFC-1050) ။

UDP ကို ​​Name Server တောင်းဆိုချက်များ

(NB အောက်ပါဖော်ပြချက်ကို RFC-1035 မှာဖော်ပြထားတဲ့ဒိုမိန်းဝန်ဆောင်မှု protocol ကိုအတူကျွမ်းယူဆသင် protocol ကိုအကျွမ်းတဝင်မဟုတ်ခဲ့လျှင်အောက်ပါဖော်ပြချက်ဂရိ၌ရေးထားလျက်ရှိ၏ခံရဖို့ပေါ်လာပါလိမ့်မယ်။ ။ )

အမည် server ကို request များအဖြစ်ချပ်နေကြသည်

src> ပညာ,: id သည် op? အလံ qclass အမည် (Len) h2opolo.1538> helios.domain qtype: 3+ တစ်ဦးက? ucbvax.berkeley.edu ။ (37)

h2opolo နာမတော်ကိုအမှီ ပြု. ucbvax.berkeley.edu နှင့်ဆက်စပ်လိပ်စာစံချိန် (qtype = တစ်ဦး) အတွက် helios အပေါ်ဒိုမိန်းဆာဗာကိုမေးမွနျး Host အဆိုပါမေးမြန်းချက်ကိုအိုင်ဒီ `3 '' ဖြစ်ခဲ့သည်။ အဆိုပါ `+ request ကိုတပ်မက်လိုချင်သောအလံသတ်မှတ်ထားခဲ့သည်ဖော်ပြသည်။ အဆိုပါမေးမြန်းချက်ကိုအရှည်ကတော့ UDP ကိုနှင့် IP protocol ကိုခေါင်းစီးများအပါအဝင်မဟုတ် 37 bytes, ဖြစ်ခဲ့သည်။ အဆိုပါမေးမြန်းချက်ကိုစစ်ဆင်ရေးပုံမှန်တဦးတည်း, Query ခဲ့, ဒါကြောင့် op လယ်ကိုချန်လှပ်ခံခဲ့ရသည်။ အဆိုပါ op အရာအားလုံးထက်ခဲ့ပါက `3 အကြားပုံနှိပ်ခဲ့ကြလိမ့်မယ် '' နှင့်` + ။ အလားတူပဲ, qclass ပုံမှန်တ C_IN နှင့်ချန်လှပ်ခဲ့သည်။ အခြားမည်သည့် qclass သည့် `တစ်ဦးက '' အပြီးချက်ချင်းပုံနှိပ်ခဲ့ကြပေသည်။

အနည်းငယ်ကွဲလွဲချက်များ check လုပ်ထားကြသည်နှင့်စတုရန်းကွင်းခတ်အတွက်ပူးတွဲအပိုနယ်ပယ်များတွင်ဖြစ်ပေါ်စေမည်: တစ်စုံစမ်းမှုအဖြေတစ်ခုပါရှိသည်ဆိုလျှင်, အခွင့်အာဏာမှတ်တမ်းများသို့မဟုတ်နောက်ထပ်မှတ်တမ်းများအပိုင်း, ancount, nscount, ဒါမှမဟုတ် arcount `အဖြစ်ပုံနှိပ်ကြသည် [n က] '` [ဎဎ ] 'သို့မဟုတ် `[n au]' 'ဎသင့်လျော်သောအရေအတွက်သည်အဘယ်မှာရှိ။ တုံ့ပြန်မှု bits သည်မဆို (AA ကို, RA သို့မဟုတ် rcode) သတ်မှတ်ထားကြသည်ဒါမှမဟုတ် `သုည '' bits သည် bytes နှစ်ခုအတွက်သတ်မှတ်ထားသုံးယောက်,` [b2 & 3 = x ကို] နေကြတယ် '' ရမည်ဖြစ်သည်၏မည်သည့် x ရဲ့ hex တန်ဖိုးကိုသည်အဘယ်မှာရှိ, ပုံနှိပ်လျှင် ခေါင်းစဉ်နှစ်ခုနှင့်သုံး bytes ။

UDP ကို ​​Name Server တုံ့ပြန်ချက်

အမည် server ကိုတုံ့ပြန်မှုအဖြစ်ချပ်နေကြသည်

src> ပညာ,: id သည် op rcode အလံတစ်ဦးမှာ / n / au အမျိုးအစားအတန်းအစားဒေတာ (Len) helios.domain> h2opolo.1538: 3 3/3/7 တစ်ဦးက 128.32.137.3 (273) helios.domain> h2opolo.1537: 2 NXDOMAIN * 0/1/0 (97)

ပထမဦးဆုံးဥပမာမှာ helios 3 အဖြေမှတ်တမ်းများ, 3 နာမကိုအမှီ server ကိုမှတ်တမ်းများနှင့် 7 အပိုဆောင်းမှတ်တမ်းများနှင့်အတူ h2opolo ထံမှအိုင်ဒီ 3 query မှတုံ့ပြန်။ ပထမဦးဆုံးအဖြေစံချိန်တစ်ဦးက (လိပ်စာ) ရိုက်ထည့်သည်နှင့်ယင်း၏ data တွေကိုအင်တာနက်လိပ်စာ 128.32.137.3 ဖြစ်ပါတယ်။ တုန့်ပြန်၏စုစုပေါင်းအရွယ်အစား UDP ကိုနှင့် IP ခေါင်းစီးများဖယ်ထုတ်ပြီး 273 bytes, ဖြစ်ခဲ့သည်။ အဆိုပါတစ်ဦးကမှတ်တမ်းအတန်း (C_IN) ဖြစ်သကဲ့သို့အဆိုပါ op (Query) နှင့်တုန့်ပြန်ကုဒ် (NoError), ချန်လှပ်ခံခဲ့ရသည်။

ဒုတိယဥပမာမှာ helios မျှအဖြေကို, တဦးတည်းအမည်ဖြင့်ဆာဗာနှင့်မျှအခွင့်အာဏာမှတ်တမ်းများနှင့်အတူ Non-တည်ရှိဒိုမိန်းတစ်ခုတုံ့ပြန်မှုကုဒ် (NXDOMAIN) နဲ့ 2 query မှတုံ့ပြန်။ အဆိုပါ `* 'ဟာသော authoritative အဖြေကိုနည်းနည်းသတ်မှတ်ထားခဲ့ဖော်ပြသည်။ အဘယ်သူမျှမအဖြေတွေကိုရှိခဲ့သည်ကတည်းကအဘယ်သူမျှမအမျိုးအစား, လူတန်းစားသို့မဟုတ် data ကိုပုံနှိပ်ခဲ့ပါသည်။

'(မရရှိနိုင်တဲ့ request, RA, မသတ်မှတ်) နှင့် `|' - ပေါ်လာအံ့သောငှါကအခြားအလံဇာတ်ကောင်` များမှာ (အတိုချုံးသတင်းစကား, TC, set) ။ အဆိုပါ `ဆိုတဲ့မေးခွန်းကိုပါလျှင် '' အပိုင်းတစ်ခုအတိအကျ entry ကိုမဆံ့မခံပါဘူး,` [n က q] '' ပုံနှိပ်ဖြစ်ပါတယ်။

ထိုနာမတျော server ကို request များနှင့်တုံ့ပြန်မှုကြီးမားသောဖြစ်လေ့နှင့် 68 bytes ရဲ့ default အ snaplen print ထုတ်ဖို့ packet ကို၏အလုံအလောက်ဖမ်းယူနိုင်မည်မဟုတ်ပါသတိပြုပါ။ သငျသညျအလေးအနက်ထားအမည်ဖြင့်ဆာဗာကိုအသွားအလာစုံစမ်းစစ်ဆေးရန်ဖို့လိုအပ်လျှင် snaplen တိုးမြှင့်ဖို့ -s အလံများကိုအသုံးပြုပါ။ `-s 128 '' ငါ့အဘို့ကောင်းစွာအလုပ်လုပ်ခဲ့သိရသည်။

SMB / CIFS ဒီကုဒ်ဒါ

tcpdump ယခု UDP ကို / 137, UDP ကို / 138 နှင့် TCP / 139 အပေါ်ဒေတာအတွက်တရားမျှတစွာကျယ်ပြန့် SMB / CIFS / NBT ဒီကုဒ်ဒါပါဝင်သည်။ IPX နှင့် NETBEUI SMB အချက်အလက်များ၏အချို့ကစရိုက်ဒီကုဒ်ဒါအစပြုသောအမှုဖြစ်ပါတယ်။

ပုံမှန်အားဖြင့်တစ်ဦးမျှမျှတတအနည်းငယ်မျှသာကုဒ်ဖြုတ် -v ကိုအသုံးပြုသည်ဆိုပါကအမှုကိုပြုတာကိုပိုပြီးအသေးစိတ်ကုဒ်ဖြုတ်အတူပြုနေသည်။ -va တစ်ခုတည်း SMB packet ကိုအတူသင်အမှန်တကယ်အပေါငျးတို့သ gory အသေးစိတ်ကိုချင်လျှင်သာ -v ကိုသုံးပါဒါကြောင့်တစ်ဦးစာမျက်နှာသို့မဟုတ်ထိုထက်ပိုတက်ယူစေခြင်းငှါသတိပေးခဲ့သည်လိမ့်မည်။

သငျသညျယူနီကုဒ်ညှို့် SMB အစည်းအဝေးများကုဒ်ဖြုတ်နေတယ်ဆိုရင်သင် 1. ဖို့ပတ်ဝန်းကျင် variable ကို USE_UNICODE သတ်မှတ်ထားဖို့လိုပေမည်ထို့နောက် auto-detect ယူနီကုဒ် srings မှတစ်ဦးက patch ကိုကြိုဆိုပါလိမ့်မယ်။

SMB packet ကိုကို formats နှင့်အဘယ်သို့ဆိုင်အားလုံး te လယ်ကွင်း www.cifs.org သို့မဟုတ်သင့်အကြိုက်ဆုံး samba.org မှန် site ပေါ်တွင်အရက်ဆိုင် / Samba / ကျန်တာတွေ / directory ကိုတွေ့မြင်ဆိုလိုအပေါ်သတင်းအချက်အလက်များသည်။ အဆိုပါ SMB ပြင်ဆင်ဖာထေးမှုများအင်ဒရူး Tridgell (tridge@samba.org) ကရေးသားခဲ့ကြသည်။

NFS တောင်းဆိုချက်များနှင့်ပြန်စာများ

: Sun က NFS (ကွန်ယက် File System) တောင်းဆိုမှုများနှင့်ပြန်ကြားချက်အဖြစ်ပုံနှိပ်နေကြတယ်

src.xid> dst.nfs: Len op args src.nfs> dst.xid: ပြန်ကြားချက် Stat Len op ရလဒ်များကို sushi.6709> wrl.nfs: 112 readlink fh 21,24 / 10.73165 wrl.nfs> sushi.6709: ပြန်ကြားချက် ok 40 readlink "../var" sushi.201b> wrl.nfs: 144 9,74 / 4096.6878 fh lookup ပြုလုပ်နေ "xcolors"> sushi.201b wrl.nfs: fh 9,74 / 4134.3150 ok 128 lookup ပြုလုပ်နေ reply

ပထမဦးဆုံးလိုင်းများတွင်အိမ်ရှင်ဆူရှီ (ထို src အိမ်ရှင်အောက်ပါအရေအတွက်ကိုတစ်ဦးငွေပေးငွေယူအိုင်ဒီမဟုတ်ဘဲအရင်းအမြစ်ဆိပ်ကမ်းကိုကြောင်းသတိပြုပါ) wrl မှအိုင်ဒီ 6709 နဲ့ငွေပေးငွေယူပေးပို့သည်။ အဆိုပါတောင်းဆိုချက်သည် UDP ကိုနှင့် IP ခေါင်းစီးများဖယ်ထုတ်ပြီး 112 bytes, ဖြစ်ခဲ့သည်။ အဆိုပါစစ်ဆင်ရေး file ကိုလက်ကိုင်အပေါ်တစ်ဦး readlink (သင်္ကေတ link ကိုဖတ်ပါ) (fh) 21,24 / 10.731657119 ဖြစ်ခဲ့သည်။ (တဦးတည်းကံကောင်းလိုလျှင်, ဤကိစ္စတွင်၌ရှိသကဲ့သို့, ဖိုင်ကိုလက်ကိုင်ပု inode နံပါတ်နှင့်မျိုးဆက်အရေအတွက်အားဖြင့်နောက်တော်သို့လိုက်နေတဲ့အဓိက, ကအသေးစားစက်ကိုအရေအတွက်က pair တစုံအဖြစ်အဓိပ္ပာယ်ကောက်ယူနိုင်ပါသည်။ ) Wrl link ကိုရဲ့ contents နှင့်အတူ '' `ok ပြန်ဖြေတယ်။

တတိယလိုင်းများတွင်ဆူရှီ directory ကိုဖိုင်ကို 9,74 / 4096.6878 ခုနှစ်တွင်နာမတော်ကိုအမှီ ပြု. `xcolors '' ကိုကြည့်ရန် wrl ကမေးတယ်။ ပုံနှိပ် data တွေကိုစစ်ဆင်ရေးအမျိုးအစားပေါ်မူတည်ကြောင်းသတိပြုပါ။ ပုံစံတစ်ခု NFS protocol ကို spec နှင့် တွဲဖက်. ကိုဖတ်လျှင်ကိုယ့်ကိုယ်ကိုရှင်းလင်းဖြစ်ဖို့ရည်ရွယ်ထားသည်။

အဆိုပါ -v (verbose) အလံပေးထားလျှင်နောက်ထပ်သတင်းအချက်အလက်ပုံနှိပ်ဖြစ်ပါတယ်။ ဥပမာ:

sushi.1372a> wrl.nfs: 148 fh ကိုဖတ်ရှု 21,11 / 12,195 8192 24576 wrl.nfs @ bytes> sushi.1372a: ok 1472 reply REG ကိုဖတ်ရှု 100664 အိုင်ဒီ 417/0 sz 29388

ပထမဦးဆုံးအညီ (-v လည်းဒီဥပမာအနေဖြင့်ချန်လှပ်ခဲ့ကြရာဖြစ်သည်။ အိုင်ပီ header ကို TTL, ID ကို, အရှည်နှင့်အကွဲကွဲအပြားပြားလယ်ကွင်း, နေရိုက်ထုတ်), ဆူရှီ offset က byte မှာ, ဖိုင် 21,11 / 12.195 ထံမှ 8192 bytes ဖတ်ရှုဖို့ wrl မေးတယ် 24576. Wrl '' `ok ပြန်ကြား; ဒုတိယလိုင်းပေါ်ပြ packet ကိုအဆိုပါအကြောင်းပြန်၏ပထမဦးဆုံးအပိုင်းအစဖြစ်ပြီး, ဤအရပ်မှသာ 1472 bytes ရှည်လျားသည် (အခြား bytes နောက်ဆက်တွဲအကျိုးအပဲ့အတွက်ကိုလိုက်နာပါလိမ့်မယ်, ဒါပေမဲ့အဲဒီအပိုင်းအစ NFS သို့မဟုတ်ပင် UDP ကိုခေါင်းစီးများရှိသည်မဟုတ်ကြဘူးဒါပုံနှိပ်မရစေခြင်းငှါ, ) အသုံးပြုတဲ့ filter ကိုစကားရပ်ပေါ် မူတည်. ။ အဆိုပါ -v အလံပေးထား, (ဖိုင်ကိုဒေတာအပြင်ပြန်ရောက်ထားတဲ့) ဖိုင်ကို attribute တွေအချို့ပုံနှိပ်ကြောင့်: အဖိုင်အမျိုးအစား ( `` REG '' ပုံမှန်ဖိုင်) (octal အတွက်), ဖိုင်ကို mode ကို, အဆိုပါ uid နှင့် gid နှင့်, ဖိုင်အရွယ်အစား။

အဆိုပါ -v အလံတစ်ကြိမ်ထက်ပိုပြီးပေးထားလျှင် ပို. ပင်အသေးစိတ်အချက်အလက်များကိုပုံနှိပ်နေကြသည်။

NFS တောင်းဆိုမှုများသည်အလွန်ကြီးမားနှင့်အသေးစိတ်အများကြီးဖြစ်ကြောင်းမှတ်ချက် snaplen တိုးပွါးမဟုတ်လျှင်ပုံနှိပ်မည်မဟုတ်ပါ။ NFS အသွားအလာစောင့်ကြည့်ဖို့ '' 192 -s `သုံးပြီးကြိုးစားပါ။

NFS ပြန်ကြားချက် packets တွေကိုအတိအလင်းအဆိုပါ RPC စစ်ဆင်ရေးခွဲခြားသတ်မှတ်ကြပါဘူး။ အဲဒီအစား, tcpdump '' `` မကြာသေးမီ '' တောင်းဆိုမှုများကိုခြေရာခံစောင့်ရှောက်သဖြင့်, ငွေပေးငွေယူ ID ကိုသုံးပြီးဖြေကြားမှုများမှသူတို့ကိုတိုက်စစ်ပါတယ်။ တစ်ဦးပြန်ကြားချက်နီးကပ်စွာသက်ဆိုင်ရာတောင်းဆိုမှုကိုအတိုင်းလိုက်နာမပါဘူးဆိုရင်, က parsable မဖြစ်ပေလိမ့်မည်။

AFS တောင်းဆိုချက်များနှင့်ပြန်စာများ

Transarc AFS (အင်ဒရူး File System) တောင်းဆိုမှုများနှင့်ပြန်ကြားချက်အဖြစ်ပုံနှိပ်နေကြသည်:

src.sport> dst.dport: RX packet ကို-type အမျိုးအစား src.sport> dst.dport: RX packet ကို-type အမျိုးအစားဝန်ဆောင်မှုခေါ်ဆိုခဖုန်းခေါ်နာမကိုအမှီ args src.sport> dst.dport: RX packet ကို-type အမျိုးအစားဝန်ဆောင်မှုပြန်ကြားချက်ဖုန်းခေါ်နာမကိုအမှီ args Elvis ။ 7001> pike.afsfs: RX data တွေကို fs> elvis.7001 ဟောင်း fid 536876964/1/1 ".newsrc.new" သစ်ကို fid 536876964/1/1 ".newsrc" pike.afsfs အမည်ပြောင်းခေါ်လော့ RX data တွေကို fs rename reply

ပထမဦးဆုံးလိုင်းများတွင်အိမ်ရှင် Elvis ပိုက်တစ် RX packet ကိုပို့ပေးသည်။ ဒါက fs (fileserver) ဝန်ဆောင်မှုတစ်ခု RX data တွေကို packet ကိုကြီးတစ်ခု RPC ခေါ်ဆိုခရဲ့ start ဖြစ်ပါတယ်။ အဆိုပါ RPC ခေါ်ဆိုခ 536876964/1/1 ၏အဟောင်း directory ကိုဖိုင်ကိုအိုင်ဒီနဲ့ '.newsrc.new `၏အဟောင်းဖိုင်အမည်နှင့် 536876964/1/1 ၏အသစ်တစ်ခု directory ကိုဖိုင်ကိုအိုင်ဒီနှင့်` ၏အသစ်တစ်ခုဖိုင်အမည်နှင့်အတူတစ် rename ဖြစ်ခဲ့သည်။ newsrc '' ။ (က data တွေကို packet ကိုနှင့်မဖျက်သိမ်းသည် packet ကိုကွောငျ့အောငျမွငျခဲ့သော) ကိုအိမ်ရှင်ပိုက်အဆိုပါ rename ခေါ်ဆိုခတစ် RPC ပြန်ကြားချက်နှင့်အတူတုံ့ပြန်။

ယေဘုယျအားဖြင့်, ခပ်သိမ်းသော AFS RPCs ကအနည်းဆုံး RPC ခေါ်ဆိုခနာမတော်အားဖြင့်ဝှက်နေကြသည်။ အများစုမှာ AFS RPCs (စိတ်ဝင်စားဖို့အချို့နှင့်အဓိပ္ပါယ်များအတွက်ယေဘုယျအားဖြင့်သာ `စိတ်ဝင်စားဖို့ '' အငြင်းပွားမှုများ,) ဝှက်အဆိုပါအငြင်းပွားမှုများအနည်းဆုံးအချို့ရှိသည်။

အဆိုပါ format နဲ့ Self-ဖော်ပြဖြစ်ဖို့ရည်ရွယ်ပေမယ့်ဖြစ်နိုင် AFS နှင့် RX ၏အကျင့်နှင့်အကျွမ်းတဝင်မဟုတ်သူတွေကိုရန်အသုံးဝင်လိမ့်မည်မဟုတ်ပေ။

အဆိုပါ -v (verbose) အလံနှစ်ကြိမ်ပေးထားလျှင်အသိအမှတ်ပြု packets တွေကိုနှင့်အပိုဆောင်း header ကိုသတင်းအချက်အလက်ထိုကဲ့သို့သောအ RX ခေါ်ဆိုခ ID ကိုအဖြစ်ပုံနှိပ်သည်အရေအတွက်, sequence ကိုနံပါတ်, အမှတ်စဉ်နံပါတ်, နှင့် RX packet ကိုအလံကိုခေါ်ပါ။

အဆိုပါ -v အလံနှစ်ကြိမ်ပေးထားလျှင်နောက်ထပ်သတင်းအချက်အလက်ထိုကဲ့သို့သောအ RX ခေါ်ဆိုခ ID ကို, အမှတ်စဉ်နံပါတ်, နှင့် RX packet ကိုအလံအဖြစ်ပုံနှိပ်ဖြစ်ပါတယ်။ အဆိုပါသမဂ္ဂညှိနှိုင်းသတင်းအချက်အလက်များလည်း RX ack packets တွေကိုထံမှပုံနှိပ်ဖြစ်ပါတယ်။

အဆိုပါ -v အလံသုံးကြိမ်ပေးထားလျှင်, လုံခြုံရေးအညွှန်းကိန်းများနှင့်ဝန်ဆောင်မှုအိုင်ဒီပုံနှိပ်နေကြသည်။

(ဖျက်သိမ်းသည် packets တွေကိုပု Ubik protocol ကိုများအတွက်ဟုတ်ကဲ့မဲဆိုလိုရန်အသုံးပြုကြသည်ဘာဖြစ်လို့လဲဆိုတော့) မှားယွင်းနေသည် codes တွေကို Ubik Beacon packets တွေကို၏ချွင်းချက်နှင့်အတူဖျက်သိမ်းသည် packets တွေကိုများအတွက်ပုံနှိပ်နေကြသည်။

AFS တောင်းဆိုမှုများသည်အလွန်ကြီးမားပြီး snaplen တိုးပွါးမဟုတ်လျှင်ပုံနှိပ်မည်မဟုတ်ပါအဆိုပါအငြင်းပွားမှုများအများအပြားဖြစ်ကြောင်းသတိပြုပါ။ AFS အသွားအလာစောင့်ကြည့်ဖို့ '' 256 -s `သုံးပြီးကြိုးစားပါ။

AFS packets တွေကိုအတိအလင်းအဆိုပါ RPC စစ်ဆင်ရေးခွဲခြားသတ်မှတ်ကြဘူး reply ။ အဲဒီအစား, tcpdump '' `` မကြာသေးမီ '' တောင်းဆိုမှုများကိုခြေရာခံစောင့်ရှောက်ခြင်း, ခေါ်ဆိုမှုနံပါတ်နှင့်ဝန်ဆောင်မှု ID ကိုသုံးပြီးဖြေကြားမှုများမှသူတို့ကိုတိုက်စစ်ပါတယ်။ တစ်ဦးပြန်ကြားချက်နီးကပ်စွာသက်ဆိုင်ရာတောင်းဆိုမှုကိုအတိုင်းလိုက်နာမပါဘူးဆိုရင်, က parsable မဖြစ်ပေလိမ့်မည်။

Kip Appletalk (UDP ကိုအတွက် DDP)

UDP ကို ​​datagrams အတွက် encapsulated Appletalk DDP packets တွေကို-de encapsulated နှင့် (ဆိုလိုသည်မှာအပေါငျးတို့သ UDP ကို ​​header ကိုသတင်းအချက်အလက်စွန့်ပစ်သည်) DDP packets တွေကိုအဖြစ်စွန့်ပစ်လျက်ရှိသည်။ ဖိုင် /etc/atalk.names အမည်များမှ appletalk အသားတင်နှင့် node ကိုနံပါတ်များကိုဘာသာပြန်ဆိုအသုံးပြုသည်။ ဒီဖိုင်ထဲမှာလိုင်းများပုံစံရှိတယ်

အရေအတွက်အားနာမကိုအမှီ 1,254 အီ 16.1 icsd-အသားတင် 1.254.110 Ace

ပထမဦးဆုံးနှစ်ဦးကိုလိုင်းများ appletalk ကွန်ရက်များများ၏အမည်များပေးလေ့ရှိသည်။ အဆိုပါနံပါတ်နှင့်အမည်အားကွဲကွာရပါမည် - တတိယလိုင်း (ကပိုက်ကွန်ကိုအရေအတွက်အားနှစ်ခုရှစ်လုံးတွဲရှိရမည်နှင့်အိမ်ရှင်အရေအတွက်ကသုံးရှစ်လုံးတွဲရှိရမည်။ ဟာ host အရေအတွက်ကအတွက် 3rd octet ကအသားတင်အနေဖြင့်ပုံမှန်ဖြစ်ပါသည်) တစ်ဦးအထူးသဖြင့်အိမ်ရှင်၏အမည်ပေးသည် ကြားနေရာလွတ် (ကွက်လပ်သို့မဟုတ် tabs များ) က။ အဆိုပါ /etc/atalk.names ဖိုင်အလွတ်လိုင်းများသို့မဟုတ် comment ကိုလိုင်းများ (လိုင်းများတစ်ဦး `# '' နှင့်အတူစတင်) ဆံ့နိုငျသညျ။

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 အိမ်ရှင် / အသားတင်အရေအတွက်တစ်ခု entry ကိုမဆံ့မပါဘူးဆိုရင်, လိပ်စာများဂဏန်း form မှာပုံနှိပ်ကြသည်။ ) ပထမဦးဆုံးဥပမာမှာ NBP (DDP ဆိပ်ကမ်းကို 2) အသားတင် 144,1 အပေါ် node ကို 209 ဒုတိယလိုင်းအရင်းအမြစ် node တစ်ခု၏အမည်အပြည့်အစုံ ( `ရုံး ') လူသိများသည် မှလွဲ. အတူတူပင်ဖြစ်ပါသည်ပိုက်ကွန်ကို icsd node ကို 112. ၏ port ကို 220 အပေါ်နားထောင်ခြင်းဖြစ်ပါတယ်ဘာပဲမှပေးပို့ခြင်းဖြစ်ပါသည်။ ဒီအကြောင်းပြချက်ကကောင်းတစ်စိတ်ကူးင် - တတိယလိုင်းထုတ်လွှင့်လိပ်စာ (255) မျှအိမ်ရှင်အရေအတွက်ကိုနှင့်အတူတစ်ဦးအသားတင်နာမတော်ဖြင့်ညွှန်ပြကြောင်းသတိပြုပါ (ထို icsd-အသားတင် NBP ဆိပ်ကမ်းကိုထုတ်လွှင့်ဖို့အသားတင် jssmag node ကို 149 အပေါ်ဆိပ်ကမ်းကို 235 ကနေပို့ဖြစ်ပါသည် node ကိုအမည်များနှင့် /etc/atalk.names အတွက်ကွဲပြားအသားတင်အမည်များ) ကိုစောင့်ရှောက်ရန်။

NBP (အမည် binding protocol ကို) နှင့် ATP (Appletalk ငွေပေးငွေယူ protocol ကို) packets တွေကိုသူတို့ရဲ့ contents တွေကိုအနက်ရှိသည်။ အခြား protocols ရုံ (အမည်မပါသည့် protocol ကိုမှတ်ပုံတင်လိုလျှင်သို့မဟုတ်နံပါတ်) ကို protocol ကိုအမည်ဖြင့်အရေးပေါ်သိမ်းထားခြင်းနှင့် packet ကိုအရွယ်အစား။

NBP packets တွေကိုအောက်ပါဥပမာများကဲ့သို့ချပ်နေကြသည်:

icsd-net.112.220> jssmag.2: nbp-lkup 190: "=: LaserWriter @ *" jssmag.209.2> icsd-net.112.220: nbp-ပြန်ကြားချက် 190: "RM1140: LaserWriter @ *" 250 techpit.2> icsd -net.112.220: nbp-ပြန်ကြားချက် 190: "techpit: LaserWriter @ *" 186

ပထမဦးဆုံးအလိုင်းအသားတင် jssmag အပေါ်အသားတင် icsd အိမ်ရှင် 112 နှင့်ထုတ်လွှင့်ကစေလွှတ် laserwriters အမည်ကို lookup ပြုလုပ်နေတောင်းဆိုမှုကိုဖြစ်ပါတယ်။ lookup ပြုလုပ်နေများအတွက် nbp အိုင်ဒီဒုတိယလိုင်းကဆိပ်ကမ်းကို 250. တတိယအပေါ်မှတ်ပုံတင်ပြီး "RM1140" အမည်ရှိ laserwriter အရင်းအမြစ်ရှိပါတယ်ဟုအိမ်ရှင် jssmag.209 ထံမှဤတောင်းဆိုမှုကိုများအတွက်ပြန်ကြားချက် (ကအတူတူအိုင်ဒီရှိကြောင်းသတိပြုပါ) ပြသထားတယ် 190. ဖြစ်ပါသည် လိုင်းအိမ်ရှင် techpit ဆိပ်ကမ်းကို 186 အပေါ်မှတ်ပုံတင် laserwriter "techpit" ရှိပါတယ်ဟုအတူတူတောင်းဆိုမှုကိုရန်နောက်ထပ်အကြောင်းပြန်သည်။

ATP packet ကိုပုံစံချပေးသည်အောက်ပါဥပမာများကသရုပ်ပြနေသည်:

jssmag.209.165> helios.132: ATP-req 12266 <0-7> 0xae030001 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 ။ 209,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 packets တွေကို (ထို `<0-7> ') အထိတောင်းခံနေဖြင့်အိမ်ရှင် helios နှင့်အတူငွေပေးငွေယူအိုင်ဒီ 12266 စတင်။ လိုင်း၏အဆုံးမှာ hex number ကိုတောင်းဆိုမှုအတွက် `userdata '' လယ်ပြင်၏တန်ဖိုးဖြစ်ပါတယ်။

Helios 8 512-byte packets တွေကိုနှင့်အတူတုံ့ပြန်။ အဆိုပါ `: အရောင်းအဝယ်အိုင်ဒီအောက်ပါဂဏန်း '' အရောင်းအဝယ်အတွက် packet ကို sequence ကိုအရေအတွက်အားပေးသည်နှင့်ကွင်းစအတွက်အရေအတွက် ATP header ကိုဖယ်ထုတ်ပြီး, packet ကိုအတွက်ဒေတာပမာဏဖြစ်ပါတယ်။ packet ကို 7 ရက်နေ့တွင်အဆိုပါ `* 'ဟာ EOM နည်းနည်းသတ်မှတ်ထားခဲ့ဖော်ပြသည်။

Jssmag.209 ထို့နောက် packets တွေကို 3 & 5 retransmitted စေတောင်းဆိုပါသည်။ ငွေသွင်းငွေထုတ်ဖြန့်ချိ jssmag.209 Helios ပြီးတော့သူတို့ကို resends ။ နောက်ဆုံးအနေနဲ့ jssmag.209 လာမည့်တောင်းဆိုချက်ကိုစတင်။ အဆိုပါ `* '(မသတ်မှတ်ခံခဲ့ရသည်တောင်းဆိုမှုအပေါ် XO` အတိအကျတစ်ချိန်က) ညွှန်ပြနေပါသည်။

အိုင်ပီ fragment

စိတ်စိတ်အမွှာမွှာအင်တာနက်ကို datagrams အဖြစ်ပုံနှိပ်နေကြတယ်

(frag အိုင်ဒီ: အရွယ်အစား @ + offset) (frag အိုင်ဒီ: အရွယ်အစား @ offset)

(ပထမဦးဆုံးပုံစံကိုပိုပြီးအပိုင်းအစများရှိပါတယ်ဖော်ပြသည်။ ဒုတိယဒီနောက်ဆုံးအပိုင်းအစဖြစ်ပါတယ်ဖော်ပြသည်။ )

id ဟာအပိုင်းအစအိုင်ဒီဖြစ်ပါတယ်။ အရွယ်အစားက IP header ကိုဖယ်ထုတ်ပြီး (bytes မှာ) အပိုင်းအစအရွယ်အစားဖြစ်ပါတယ်။ offset ဒီအပိုင်းအစရဲ့ offset (bytes အတွက်) မူရင်း datagram ၌တည်ရှိ၏။

အဆိုပါအပိုင်းအစသတင်းအချက်အလက်အသီးအသီးအပိုင်းအစအဘို့အထွက်ဖြစ်ပါတယ်။ ပထမဦးဆုံးအအပိုင်းအစမြင့်မားအဆင့်အထိ protocol ကိုခေါင်းစဉ်နှင့် frag အချက်အလက်ကိုအဆိုပါ protocol ကိုအင်ဖိုပြီးနောက်ပုံနှိပ်ဖြစ်ပါတယ်ပါရှိသည်။ ပထမဦးဆုံးအဘယ်သူမျှမမြင့်မားတဲ့အဆင့်ကို protocol ကိုခေါင်းစဉ်နှင့် frag အချက်အလက်ရင်းမြစ်နှင့်ဦးတည်ရာကိုလိပ်စာများပြီးနောက်ပုံနှိပ်ဖြစ်ပါတယ်ဆံ့ပြီးနောက်အပိုင်းအစများကို။ ဥပမာအားဖြင့်, ဤနေရာတွင် 576 က byte datagrams ကိုင်တွယ်ရန်ပေါ်လာပါဘူးတဲ့အရောက်မှာတော့ကွန်နက်ရှင်ကျော် lbl-rtsg.arpa မှ arizona.edu တစ်ဦးထံမှ ftp ၏အစိတ်အပိုင်းတစ်ခုဖြစ်ပါသည်:

arizona.ftp-data တွေကို> rtsg.1170 ။ 1024: 1332 (308) ack 1 အနိုင်ရ 4096 (frag 595a: 328 + 0 င် @) Arizona> rtsg: (frag 595a: 204 328 @) rtsg.1170> arizona.ftp-ဒေတာ။ ack 1536 2560 အနိုင်ရ

ဤနေရာတွင်မှတ်သားရန်အရာစုံတွဲတစ်တွဲရှိတယ်: ပထမ, 2nd လိုင်းအတွက်လိပ်စာများ port နံပါတ်များမပါဝင်ပါဘူး။ ကို TCP protocol ကိုသတင်းအချက်အလက်အားလုံးကိုပထမဦးဆုံးအပိုင်းအစ၌တည်ရှိ၏နှင့်ငါတို့သည်အကြာတွင်အပိုင်းအစများ print ထုတ်သည့်အခါဆိပ်ကမ်းသို့မဟုတ် sequence ကိုဂဏန်းတွေဘာတွေရှိတယ်ဆိုတာအဘယ်သူမျှမစိတ်ကူးရှိသည်လို့ဖြစ်ပါတယ်။ အသုံးပြုသူအချက်အလက်များ၏ 308 bytes ရှိခဲ့သည်လျှင်အဖြစ်တကယ်တော့, 512 byte (ပထမဦးဆုံး frag အတွက် 308 နှင့်ဒုတိယအတွင်း 204) ရှိပါတယ်အခါ, ဒုတိယ, ပထမဦးဆုံးလိုင်းအတွက် TCP sequence ကိုသတင်းအချက်အလက်ပုံနှိပ်ဖြစ်ပါတယ်။ သင် sequence ကိုအာကာသအတွင်းတွင်းရှာနေသို့မဟုတ် packets တွေကိုနှင့်အတူ acks တက်ကိုက်ညီဖို့ကြိုးစားနေနေတယ်ဆိုရင်, ဤသူသည်သင်တို့အရူးနိုင်ပါတယ်။

ယင်း IP ကိုအတူတစ်ဦးက packet ကိုအလံတစ် Trail (DF) နဲ့မှတ်သားဖြစ်ပါတယ် fragment ပါဘူး။

အချိန်ပြကွက်များ

ပုံမှန်အားဖြင့်, ခပ်သိမ်းသောအထွက်လိုင်းတစ် Timestamp ကိုတို့ကရှေ့ပြေးနေကြသည်။ Timestamp ကိုပုံစံဟာလက်ရှိနာရီအချိန်ဖြစ်ပါသည်

နာရီ: မီလီမီတာ: ss.frac

နှင့် Kernel ရဲ့နာရီသကဲ့သို့တိကျသည်။ Timestamp ကို Kernel အားပထမဦးဆုံးအ packet ကိုမွငျလြှငျအခြိနျထင်ဟပ်။ အဆိုပါ Ethernet interface တွင်ဝါယာကြိုးများနှင့်အခါ `သစ်ကို packet ကို '' ဝန်ဆောင်မှုပေးသည့် kernel ကိုနှောက်ယှက်ခြင်းမှ packet ကိုဖယ်ရှားသည့်အခါမျှမကြိုးပမ်းမှုအကြားအချိန်သုံးနေပြီများအတွက်အကောင့်စေခြင်းဖြစ်သည်။

လည်းဖတ်ကြည့်ပါ

ယာဉ်အသွားအလာ (1C), nit (4P), bpf မှ (4), pcap (3)

အရေးကြီး: command တစ်ခုကိုသင်၏အထူးသဖြင့်ကွန်ပျူတာပေါ်တွင်အသုံးပြုသည်ကိုမည်သို့ကြည့်ဖို့လူကို command ကို (% သည်လူ) ကိုသုံးပါ။