ТСРйитр - Linux Command - Unix каманднага

NAME

ТСРйитр - дамп трафіку ў сеткі

сінтаксіс

ТСРйитр [-adeflnNOpqRStuvxX] [-c лік]

[-C file_size] [-F файл]

[-i інтэрфейс] [-m модуль] [-r файл]

[-s snaplen] [Тып -T] [-u карыстальнік] [-w файл]

[-E Алга: сакрэт] [выраз]

АПІСАННЕ

Tcpdump выводзіць загалоўкі пакетаў на сеткавым інтэрфейсе , якія адпавядаюць лагічны выраз. Ён таксама можа працаваць з сцягам -w, што выклікае яго , каб захаваць пакетныя дадзеныя ў файл для наступнага аналізу, і / або з сцягам -r, які выклікае яго для чытання з захаванага файла пакета , а не чытаць пакеты з сеткавага інтэрфейсу. Ва ўсіх выпадках, толькі пакеты, выраз матчу будзе апрацавана ТСРйитром.

Tcpdump будзе, калі не працаваць з сцягам -c, працягваюць захоп пакетаў да таго часу, пакуль не будзе перапынены сігналам SIGINT (генеруецца, напрыклад, шляхам уводу вашага знака перапынення, як правіла , кантралююць-C) або сігнал SIGTERM ( як правіла , згенераваны з забіць (1) каманды); пры запуску з сцягам -c, ён будзе захопліваць пакеты да таго часу, пакуль не будзе перапынены сігналам SIGINT або SIGTERM альбо абраная колькасць пакетаў было апрацавана.

Калі ТСРйитр заканчвае захоп пакетаў, ён паведаміць пунктах:

пакеты `` атрыманыя фільтрам «» (сэнс гэтага залежыць ад аперацыйнай сістэмы , на якой вы працуеце ТСРйитр, і , магчыма , на шляху АС была настроена - калі фільтр быў паказаны ў камандным радку, на некаторых аперацыйных сістэмах ён лічыць пакеты , незалежна ад таго, ці былі яны ўзгодненыя з дапамогай выразы фільтра, а таксама на іншых аперацыйных сістэмах ён падлічвае толькі пакеты , якія былі супастаўленыя з дапамогай выразы фільтра і былі апрацаваны ТСРйитром);

пакеты `` скінутыя ядром «» (гэты лік пакетаў , якія былі адкінутыя з - за недахопу буфернага прасторы, з дапамогай механізму захопу пакетаў у АС , на якой ТСРйитр працуе, калі аперацыйная сістэма паведамляе , што інфармацыя да прыкладанняў; калі не, то як 0).

На платформах, якія падтрымліваюць сігнал SIGINFO, напрыклад, большасць BSDs, ён паведаміць гэтыя адлікі, калі ён атрымлівае SIGINFO сігнал (генеруецца, напрыклад, увёўшы свой `` стану «» характар, як правіла, кантраляваць-T) і будзе працягваць захопліваць пакеты ,

Чытанне пакетаў з сеткавага інтэрфейсу можа запатрабаваць, каб у Вас ёсць асаблівыя прывілеі:

Пад SunOS 3.x або 4.x з NIT або BPF:

Вы павінны мець доступ на чытанне / распрацоўшчык / Ніт ці / Dev / BPF *.

У Solaris з DLPI:

Вы павінны мець доступ для чытання / запісы псеўда сеткавага прылады, напрыклад / распрацоўшчык / ля чытаць. Прынамсі , у некаторых версіях Solaris, аднак, гэтага не дастаткова , каб дазволіць ТСРйитр захапіць у бязладным рэжыме; на гэтых версіях Solaris, вы павінны быць коранем, або ТСРйитр павінен быць усталяваны Ўіп у корань, каб захапіць у бязладным рэжыме. Звярніце ўвагу, што на шматлікіх (магчыма, усе) інтэрфейсы, калі не захапіць у бязладным рэжыме, вы не ўбачыце ніякіх выходных пакетаў, так што захоп не зроблена ў бязладным рэжыме не можа быць вельмі карысным.

Пад HP-UX з DLPI:

Вы павінны быць коранем або ТСРйитр павінен быць усталяваны Setuid пахварэць.

Пад IRIX з падглядваць:

Вы павінны быць коранем або ТСРйитр павінен быць усталяваны Setuid пахварэць.

Пад Linux:

Вы павінны быць коранем або ТСРйитр павінен быць усталяваны Setuid пахварэць.

Пад Ultrix і Digital UNIX / Tru64 UNIX:

Любы карыстальнік можа захопліваць сеткавы трафік з ТСРйитром. Аднак, ні адзін карыстальнік (нават супер-карыстальнік) можа захапіць у бязладным рэжыме на інтэрфейсе , калі супер-карыстальнік не ўключыў аперацыю бязладнага рэжыму на гэтым інтэрфейсе , выкарыстоўваючы pfconfig (8), і ні адзін карыстальніка (нават не суперпользовательскій ) можа захапіць одноадресный трафік , атрыманы або пасланы на машыне на інтэрфейсе , калі супер-карыстальнік не ўключыў аперацыю капіявання ўсё-рэжым на гэтым інтэрфейсе з дапамогай pfconfig, таму карысны захоп пакетаў на інтэрфейсе , верагодна , патрабуе , каб альбо бязладны рэжым або капіявання -all-рэжым працы, або абодва рэжыму працы, будзе ўключаны на гэтым інтэрфейсе.

Пад BSD:

Вы павінны мець доступ на чытанне / DEV / BPF *.

Чытанне захаванага файла пакета не патрабуе асаблівых прывілеяў.

варыянты

-a

Спроба пераўтварыць сеткавыя і шырокавяшчальныя адрасы ў імёны.

Выхад пасля прыёму падліку пакетаў.

Перад запісам зыходнага пакета ў файл захавання, праверце , ці з'яўляецца ў цяперашні час больш , чым FILE_SIZE файл і, калі так, то зачыніць бягучы файл захавання і адкрыць новы. Savefiles пасля першага файла захавання будзе мець імя , названае са сцягам -w, з нумарам пасля яго, пачынаючы з 2 і працягваецца ўверх. Адзінкі FILE_SIZE мільёны байт (1,000,000 байт, а ня 1048576 байт).

-d

Дамп скампіляванага кода пакетаў адпаведнасці ў чалавечым чытаная выглядзе на стандартны вывад і прыпынак.

-dd

Дамп пакетаў адпаведнага кода ў выглядзе фрагмента праграмы С.

-ddd

Скід кодаў пакетаў синхронизма ў выглядзе дзесятковых лікаў (папярэднічае са лічыльнікам).

-e

Вывесці загаловак канального ўзроўню на кожную звалку лініі.

-E

Выкарыстоўвайце Algo: сакрэт для расшыфроўкі пакетаў IPsec ESP. Алгарытмы могуць быць дез-CBC, 3DES-CBC, Blowfish-CBC, RC3-CBC, CAST128-CBC, ці не. Па змаўчанні дез-CBC. Магчымасць расшыфроўкі пакетаў прысутнічае толькі ў тым выпадку ТСРйитр быў сабраны з падтрымкай шыфравання. сакрэт , тэкст ASCII для ESP сакрэтнага ключа. Мы не можам узяць адвольнае двайковае значэнне ў дадзены момант. Варыянт прадугледжвае RFC2406 ESP, а не RFC1827 ESP. Опцыя толькі для адладкі, і выкарыстанне гэтага параметру з ключом `праўдзіва сакрэтнага» не рэкамендуецца. Прадстаўляючы IPsec сакрэтны ключ на камандным радку зрабіць яго бачным для іншых, праз пс (1) і ў іншых выпадках.

-f

Друк `замежнага» інтэрнэт-адрас лікаў, а не сімвалічны (гэтая опцыя прызначана, каб абыйсці сур'ёзныя пашкоджанні мозгу ў урах сэрвэры Sun, --- звычайна яна павісне назаўжды пераклад нелокальных нумароў Інтэрнэту).

-F

Выкарыстанне файла ў якасці ўваходных дадзеных для выражэння фільтра. Дадатковае выраз, прыведзенае ў камандным радку ігнаруецца.

-i

Слухайце на інтэрфейсе. Калі не пазначана, ТСРйитр праглядае спіс інтэрфейсаў сістэмы для найменшай нумарам, сканфігураваны на інтэрфейс ( за выключэннем шлейфам). Сувязі разбітыя, выбіраючы самы ранні матч.

У сістэмах Linux з 2.2 або больш позняй версіяй ядра, інтэрфейс аргументам `` любы «» можа быць выкарыстаны для захопу пакетаў з усіх інтэрфейсаў. Звярніце ўвагу, што захоплівае на `` любы «» прылады не будзе зроблена ў бязладным рэжыме.

-l

Зрабіць стандартны вывад радкі ў буфер. Карысна, калі вы хочаце ўбачыць дадзеныя падчас захопу яго. напрыклад,
`` ТСРйитр -l | Трайнік Дат «» або `` ТСРйитр -l> Дат і хвост -f Дат «».

-m

Загрузіць вызначэнне модуля SMI MIB з модуля файла. Гэтая опцыя можа быць выкарыстана некалькі разоў , каб загрузіць некалькі модуляў MIB ў ТСРйитр.

-n

Ня ператвараць адрасы хастоў у імёны. Гэта можа выкарыстоўвацца, каб пазбегнуць DNS-запытаў.

-nn

Ня ператвараць пратакол і нумары партоў і г.д. імёны небудзь.

-N

Ня друкаваць імя дамена кваліфікацыі імёнаў хастоў. Напрыклад, калі вы даеце гэты сцяг , то ТСРйитр надрукуе `` NIC «» замест `` nic.ddn.mil «».

Не запускаць аптымізатар кода пакетаў адпаведнасці. Гэта карысна, калі вы падазраяце, што памылка ў аптымізатар.

-p

То і не давайце інтэрфейс у неразборлівы рэжым. Звярніце ўвагу, што інтэрфейс можа быць у бязладным рэжыме па іншай прычыне; такім чынам, `-p« не можа быць выкарыстаны як абрэвіятура для `эфіру прымаючага {лакальнай-Hw-адр} або эфірнага вяшчання».

-q

Хуткі (ціхае?) Выхад. Друк менш інфармацыі пратаколу, так выхадныя лініі карацей.

-R

Выкажам здагадку, ESP / AH пакеты павінны быць заснаваныя на старой спецыфікацыі (RFC1825 ў RFC1829). Калі паказана, ТСРйитр не будзе друкаваць перагулёўкі поля прафілактыкі. Паколькі няма пратаколу поля версіі ў спецыфікацыі ESP / AH, ТСРйитр не можа вывесці версію пратаколу ESP / AH.

-r

Чытанне пакетаў з файла (які быў створаны з дапамогай опцыі -w). Стандартны ўваход выкарыстоўваецца , калі файл `` - «».

-S

Друк абсалютныя, а не адносныя, парадкавыя нумары TCP.

-s

Snarf snaplen байт дадзеных з кожнага пакета , а не па змаўчанні 68 (з NIT SunOS, тым мінімум на самай справе 96). 68 байт дастаткова для IP, ICMP, TCP і UDP, але можа пакараціць інфармацыю пратакола ад сервера імёнаў і пакетаў NFS (глядзіце ніжэй). Пакеты ўсекчы з-за абмежаваны здымак пазначаны ў выходных дадзеных з `` [| прота] «», дзе прота гэтае імя ўзроўню пратаколу , пры якім адбылося ўсячэнне. Звярніце ўвагу, што, прымаючы вялікія здымкі як павялічвае колькасць часу, неабходнае для апрацоўкі пакетаў, і, фактычна, памяншае колькасць пакетнай буферызацыі. Гэта можа прывесці пакеты будуць страчаныя. Вы павінны абмежаваць snaplen да найменшай нумарам , які будзе захопліваць інфармацыю аб пратаколе цікавіць вас. Налада snaplen да 0 азначае выкарыстоўваць патрабаваную даўжыню , каб злавіць цэлыя пакеты.

-T

Пакеты Force выбраныя «выраз» варта інтэрпрэтаваць названага тыпу. У цяперашні час вядомыя тыпы cnfp (пратакол Cisco NetFlow), ПКР (Remote Procedure Call), РТП (пратакол рэальнага часу прыкладанняў), RTCP (Real-Time пратакол кіравання прыкладанняў), SNMP (просты пратакол кіравання сеткай), чан (Visual Audio Tool ), і тэрмометр (размеркаваны White Board).

-t

Ня друкаваць адзнаку часу на кожную звалку лініі.

-tt

Друк нефарматаваны пазнак на кожную звалку лініі.

-U

Кроплі каранёвых прывілеяў і змяняе ідэнтыфікатар карыстальніка карыстальніка і ідэнтыфікатар групы на асноўную групу карыстальнікаў.

Нататка! Red Hat Linux аўтаматычна скідае прывілеі карыстальніка `` PCAP «», калі нічога іншага не паказана.

-ttt

Друк дэльты (у мікра-секундах) паміж бягучай і папярэдняй радком на кожнай радку дампа.

-tttt

Друк пазнакі ў фармаце па змаўчанні працякала паводле даты на кожную звалку лініі.

-u

Друк недекодированной NFS апрацоўвае.

-v

(Крыху больш) падрабязны вывад. Напрыклад, час жыцця, ідэнтыфікацыя, агульная даўжыня і опцыя ў пакеце IP раздрукоўваюцца. Акрамя таго, забяспечвае дадатковыя праверкі цэласнасці пакета, такія як праверкі кантрольнай сумы загалоўка IP і ICMP.

-vv

Яшчэ больш падрабязны вывад. Напрыклад, дадатковыя поля друкуюцца з у адказ пакетаў NFS і SMB-пакеты цалкам дэкадуе.

-vvv

Яшчэ больш падрабязны вывад. Напрыклад, телнет опцыя SB ... SE друкуецца ў поўным аб'ёме. З -X опцыі Telnet друкуюцца ў шаснаццатковым , а таксама.

-w

Запісаць зыходныя пакеты ў файл , а не разбор і іх друку. Пазней яны могуць быць раздрукаваныя з опцыяй -r. Стандартны выхад выкарыстоўваецца , калі файл `` - «».

-x

Друк кожнага пакета (мінус яго загаловак канального ўзроўню) у шаснаццатковым фармаце. Менш за ўсё пакета або snaplen байт будзе надрукавана. Адзначым, што гэта ўвесь пакет канального ўзроўню, так і для слаёў лініі сувязі, што пракладка (напрыклад, Ethernet), хутчэй за ўсё дададзеную байты будуць таксама надрукаваныя, калі пакету больш высокага ўзроўню карацей, чым патрабуецца запаўнення.

-X

Пры друку шасьцікутніка, друк ASCII таксама. Такім чынам , калі -x таксама ўстаноўлена, пакет друкуецца ў шаснаццатковым / ASCII. Гэта вельмі зручна для аналізу новых пратаколаў. Нават калі таксама не ўстаноўлены, некаторыя часткі некаторых пакетаў могуць быць надрукаваныя ў шаснаццатковым / ASCII.

выраз

выбірае, якія пакеты будуць скінутыя. Калі ніякага выразы ня зададзена, будзе скінутыя ўсе пакеты ў сетцы. У адваротным выпадку, толькі пакеты , для якіх выраз `праўда» будзе скінутая.

Выраз складаецца з аднаго або некалькіх прымітываў. Прымітывы звычайна складаюцца з ідэнтыфікатара (імя або нумар) папярэднічае адзін або больш класіфікатараў. Ёсць тры розных выгляду класіфікатара:

тып

класіфікатары сказаць, якога кшталту рэчы імя ідэнтыфікатар або нумар спасылаецца. Магчымыя тыпы хост, сетку і порт. Напрыклад, `хост Foo», `чысты 128,3 ',` порт 20'. Калі няма тыпу класіфікатара, гаспадар мяркуюцца.

рэж

класіфікатары пазначыць пэўны кірунак перадачы і / або з ідэнтыфікатарам. Магчымыя напрамкі ЦСІ, ДСТ, ЦСІ або ДСТ і SRC і DST. Напрыклад, `ЦСІ Foo ',` ДСТ нета 128,3', `SRC або ДСТ порта FTP-дадзеных. Калі няма режа адборачнага ЦСІ або ДСТА мяркуецца. Для `нулявых» слаёў лініі сувязі (г.зн. ад кропкі да кропкі пратаколаў , такім як слізгаценне) ўваходныя і выходныя класіфікатары могуць быць выкарыстаны , каб паказаць жаданае кірунак.

прота

класіфікатары абмежаваць матч да вызначанага пратаколу. Магчымыя Протас з'яўляюцца: эфір, FDDI, т, ф, ip6, агр, RARP, DECnet, TCP і UDP. Напрыклад, `эфір SRC Foo», `агр нета 128,3 ',` TCP-порт 21'. Калі няма прота класіфікатар, усе пратаколы, сумяшчальныя з тыпам мяркуецца. Напрыклад, `ЦСІ Foo« азначае `(внутрибрюшинно ці агр або RARP) ЦСІ Foo» (за выключэннем апошняга не з'яўляецца законным сінтаксіс), `чысты бар« азначае `(IP або АРП або RARP) нета-бар» і `порт 53 'азначае `(TCP або UDP) порт 53 '.

[ `FDDI« на самай справе з'яўляецца псеўданімам для `эфіру»; аналізатар апрацоўвае іх аднолькава як які азначае `` ўзровень канала перадачы дадзеных, які выкарыстоўваецца на паказаным сеткавай інтэрфейсе. «» FDDI загалоўкі ўтрымліваюць Ethernet-як адрасы крыніцы і прызначэння, а таксама часта ўтрымліваюць Ethernet-падобныя тыпы пакетаў, так што вы можаце выбіраць на гэтых палях FDDI гэтак жа, як з аналагічнымі палямі Ethernet. Загалоўкі FDDI таксама ўтрымліваюць іншыя поля, але вы не можаце назваць іх відавочна ў выразе фільтра.

Аналагічна, `TR« з'яўляецца псеўданімам для `эфіру»; заявы папярэдняга абзаца пра загалоўках FDDI таксама прымяняюцца лексемы загалоўкі Ring.]

У дадатак да вышэйсказанага, ёсць некаторыя адмысловыя `прымітыўныя» ключавыя словы , якія не адпавядаюць шаблоне: шлюз, трансляцыя, менш, больш і арыфметычныя выразы. Усе яны апісаны ніжэй.

Больш складаныя выразы фільтра забудаваны, выкарыстоўваючы словы і, ці і ня аб'яднаць прымітывы. Напрыклад, `хост Foo, а не порт FTP, а не порт FTP-дадзеных. Каб захаваць набор тэксту, ідэнтычныя спісы квалификаторов могуць быць апушчаны. Напрыклад, `TCP ДСТ порт FTP або FTP-дадзеных або дамен сапраўды гэтак жа, как` TCP Dst порта FTP або TCP ДСТ порта FTP-дадзеных або TCP Dst дамена порта.

Дапушчальныя прымітывы:

ДСТ хост - хост

Праўда , калі / v6 поле прызначэння IPv4 - пакета з'яўляецца хост, які можа быць альбо адрас альбо імя.

ЦСІ хост хост

Праўда , калі IPv4 / v6 крыніца поле пакета з'яўляецца гаспадаром.

хост - хост

Праўда , калі альбо / крыніца v6 IPv4 або прызначэння пакета з'яўляецца хост. Любы з прыведзеных вышэй выразаў гаспадарах могуць папярэднічаць з ключавымі словамі, IP, ARP, RARP або ip6 як у:

IP хост - хост

што эквівалентна:

Эфірны прота \ ф і хост - хост

Калі хост імя з некалькімі IP - адрасамі, кожны адрас будзе правераны на матч.

эфір ДСТ ehost

Праўда , калі адрас прызначэння Ethernet ehost. Ehost можа быць альбо імем з / і г.д. / або простых эфіраў шэрагу (гл эфіраў (3n) для лікавага фармату).

эфір SRC ehost

Праўда , калі адрас крыніцы лакальных сетак з'яўляецца ehost.

Эфірны хост ehost

Праўда , калі небудзь крыніца лакальных сетак або адрас прызначэння ehost.

шлюз хаста

Праўда , калі пакет выкарыстоўваецца хост ў якасці шлюза. Гэта значыць, крыніца Ethernet адрас адпраўніка або атрымальніка быў хост , але ні крыніца , ні IP - адрасат IP - быў гаспадаром. Хост павінен быць імя і павінны быць знойдзеныя і механізмамі машыны хост-імя-IP-адрас дазволу (імя хаста файла, DNS, NIS і г.д.) і дазволам імя да хост-Ethernet-адрас машыны механізм (/ і г.д. / простыя эфіры і г.д.). (Эквівалентная выраз

эфір хост ehost і ня прымае хост

якія могуць быць выкарыстаны альбо з назвамі або нумарамі для хаста / ehost.) Гэты сінтаксіс не працуе ў IPv6 з падтрымкай канфігурацыі ў дадзены момант.

ДСТ чысты чысты

Праўда , калі IPv4 / v6 адрас прызначэння пакета мае сеткавай нумар сеткі. Net можа быць альбо імя з / і г.д. / сеткі або нумар сеткі (гл сеткі (4) для больш падрабязнай інфармацыі).

ЦСІ чысты чысты

Праўда , калі / крыніца v6 IPv4 - адрас пакета мае сеткавай нумар сеткі.

чысты чысты

Праўда , калі альбо / крыніца v6 IPv4 адрас адпраўніка або атрымальніка пакета мае сеткавай нумар сеткі.

Чыстая маска сеткі маска падсеткі

Праўда , калі IP - адрас адпавядае сеткі з пэўнай маскай сеткі. Можа быць кваліфікаваныя з СРК або целевой_адрес. Звярніце ўвагу , што гэты сінтаксіс не з'яўляецца дапушчальным для IPv6 сеткі.

чыстае нета / Len

Праўда , калі / v6 IPv4 - адрас адпавядае сеткі з маскай сеткі Len біт шырынёй. Можа быць кваліфікаваныя з СРК або целевой_адрес.

порт порт ДСТ

Праўда , калі пакет IP / TCP, IP / UDP, ip6 / TCP або ip6 / UDP і мае значэнне порта прызначэння порта. Порт можа быць лікам або імя , якое выкарыстоўваецца ў / і г.д. / паслуг (гл TCP (4Р) і UDP (4P)). Калі імя выкарыстоўваецца як нумар порта і пратаколу правяраюцца. Калі нумар або неадназначнае імя выкарыстоўваецца толькі нумар порта правяраецца (напрыклад, ДСТ порт 513 будзе друкаваць як TCP / лагін трафіку і UDP / хто трафік, і порт дамена будзе друкаваць як TCP / дамен і UDP трафік / дамен).

порт порт ЦСІ

Праўда , калі пакет мае значэнне порта крыніцы порта.

порт порт

Праўда , калі крыніца або порт прызначэння пакета з'яўляецца порт. Любы з прыведзеных вышэй выразаў порта можа папярэднічаць з ключавымі словамі, TCP або UDP, як у:

Порт TCP - порт ЦСІ

які адпавядае толькі TCP пакеты, порт крыніцы з'яўляецца портам.

менш даўжыні

Праўда , калі пакет мае даўжыню , малодшую або роўную даўжыню. Гэта эквівалентна:

Len <= даўжыня.

вялікая даўжыня

Праўда , калі пакет мае даўжыню больш або роўная даўжыні. Гэта эквівалентна:

даўжыня> = даўжыня.

Пратакол IP прота

Праўда , калі пакет з'яўляецца IP - пакетаў (гл внутрибрюшинно (4Р)) пратаколу тыпу пратаколу. Пратакол можа быць некалькі або адзін з імёнаў ICMP, icmp6, IGMP, IGRP, PIM, ах, ESP, VRRP, UDP або TCP. Звярніце ўвагу , што ідэнтыфікатары TCP, UDP і ICMP таксама ключавыя словы і павінны быць экранаваныя з дапамогай зваротнай касой рысы (\), што \\ ў C-абалонцы. Звярніце ўвагу, што гэты прымітыў не мае на ланцуг загалоўка пратаколу.

Пратакол ip6 прота

Праўда , калі пакет з'яўляецца IPv6 пакетаў пратакола тыпу пратаколу. Звярніце ўвагу, што гэты прымітыў не мае на ланцуг загалоўка пратаколу.

Пратакол ip6 protochain

Праўда , калі пакет з'яўляецца пакетам IPv6, а таксама змяшчае загаловак пратакола з пратаколам тыпу ў яго загалоўку пратаколу ланцуга. Напрыклад,

IP6 protochain 6

адпавядае любому IPv6 пакет з загалоўкам пратаколу TCP ў ланцугі загалоўка пратаколу. Пакет можа ўтрымліваць, напрыклад, загаловак аўтэнтыфікацыі, загаловак маршрутызацыі, ці хмель-за-крокам загаловак варыянту, паміж загалоўкам IPv6 і загалоўкам TCP. Код BPF , выпраменьваны гэты прымітыў з'яўляецца складаным і не можа быць аптымізаваны BPF аптымізатар кода ў ТСРйитр, так што гэта можа быць некалькі павольным.

Пратакол IP protochain

Эквівалент пратаколу ip6 protochain, але гэта для IPv4.

эфір вяшчання

Праўда, калі пакет з'яўляецца пакетам лакальных сетак вяшчання. Эфір ключавое слова з'яўляецца неабавязковым.

IP вяшчання

Праўда, калі пакет з'яўляецца пакетам IP вяшчання. Ён правярае як з усімі нулямі і ўсё-онов трансліруюцца канвенцыі, і глядзіць на лакальную маску падсеткі.

эфір шматадрасных рассылання

Праўда, калі пакет з'яўляецца пакетам Ethernet-групавым. Эфір ключавое слова з'яўляецца неабавязковым. Гэта скарачэнне для `эфіру [0] & 1! = 0».

IP Multicast

Праўда, калі пакет з'яўляецца пакетам шматадрасных IP.

ip6 шматадрасных

Праўда, калі пакет пакеты шматадрасных рассылання IPv6.

Пратакол эфіру прота

Праўда , калі пакет пратаколу эфірнага тыпу. Пратакол можа быць некалькі або адзін з IP імёнаў, ip6, агр, RARP, ATALK, Аап, DECnet, SCA, латаў, mopdl, moprc, з, СТП, IPX або NetBEUI. Звярніце ўвагу, гэтыя ідэнтыфікатары таксама ключавыя словы і павінны быць экранаваныя з дапамогай зваротнай касой рысы (\).

[У выпадку FDDI (напрыклад, `FDDI агр пратакол па артыкуле") і Token Ring (напрыклад, `тр пратаколу агр»), для большасці з гэтых пратаколаў, ідэнтыфікацыя пратаколу паходзіць ад лагічнага Link Control (LLC) загаловак 802.2, які звычайна пласт па-над загалоўка FDDI або Token Ring.

Пры фільтрацыі для большасці ідэнтыфікатараў пратаколу на FDDI або Token Ring, Tcpdump праверкі толькі ідэнтыфікатар пратакола поля з загалоўка LLC ў так званым фармаце SNAP з арганізацыйнай адзінкі ідэнтыфікатар (OUI) з 0x000000, для герметызаванай Ethernet; ён не правярае, ці з'яўляецца пакет у фармаце SNAP з OUI з 0x000000.

Выключэнне складаюць ISO, для якіх ён правярае DSAP (Destination Service пункту доступу) і SSAP (Source Service пункту доступу) палёў загалоўка LLC, СТП і NetBEUI, дзе ён правярае DSAP загалоўка LLC, і ATALK, дзе гэта правярае наяўнасць SNAP-фармат пакет з OUI з 0x080007 і е-тыпу AppleTalk.

У выпадку Ethernet, ТСРйитр правярае поле тыпу Ethernet для большасці з гэтых пратаколаў; выключэнне складаюць з, сок, і NetBEUI, для якіх ён правярае 802.3 кадра , а затым правярае загаловак LLC , як гэта робіць для FDDI і Token Ring, ATALK, дзе ён правярае як для е - тыпу Appletalk ў кадры Ethernet і для SNAP-фармат пакета , як гэта робіць для FDDI і Token Ring, Аап, дзе ён правярае на е - тыпу Appletalk ARP ў любым кадры Ethernet або 802.2 SNAP кадр з OUI з 0x000000, і IPX, дзе ён правярае на е - тыпу IPX ў Ethernet-кадр, IPX DSAP ў загалоўку LLC, 802.3 без загалоўка LLC інкапсуляцыі пратаколу IPX, а ETYPE IPX ў SNAP кадры.]

DECnet ЦСІ хаста

Праўда , калі зыходны адрас DECNET з'яўляецца гаспадаром, які можа быць адрасам віду `` 10,123 «», або імя хаста DecNet. [DECNET падтрымка імя хаста даступная толькі на сістэмах ULTRIX, настроеных для запуску DECNET.]

DECnet ДСТ гаспадар

Праўда , калі адрас прызначэння DECNET з'яўляецца гаспадаром.

DECnet хост - хост

Праўда , калі небудзь крыніца DECNET альбо адрас прызначэння хаста.

ф, ip6, агр, RARP, ATALK, Аап, DECnet, з, СТП, IPX, NetBEUI

Скарачэння для:

эфір прота р

дзе р з'яўляецца адным з названых вышэй пратаколаў.

латаў, moprc, mopdl

Скарачэння для:

эфір прота р

дзе р з'яўляецца адным з названых вышэй пратаколаў. Звярніце ўвагу , што ТСРйитр ў цяперашні час не ведае , як разабраць гэтыя пратаколы.

ВЛС [vlan_id]

Праўда, калі пакет з'яўляецца пакет IEEE 802.1Q VLAN. Калі [vlan_id] паказана, толькі дакладна , то пакет мае ўказаны vlan_id. Звярніце ўвагу , што першы ВЛС ключавое слова сустракаецца ў выразе змены зрушэння дэкадавання для пакінутай часткі выказвання у здагадцы , што пакет з'яўляецца пакетам VLAN.

TCP, UDP, ICMP

Скарачэння для:

ф прота р або ip6 прота р

дзе р з'яўляецца адным з названых вышэй пратаколаў.

Пратакол ISO прота

Праўда , калі пакет ўяўляе сабой пакет пратаколу OSI , тыпу пратаколу. Пратакол можа быць некалькі або адзін з назвы CLNP, ESIS або Ісіда.

CLNP, ESIS, ISIS

Скарачэння для:

з прота р

дзе р з'яўляецца адным з названых вышэй пратаколаў. Звярніце ўвагу , што ТСРйитр робіць няпоўны працу разбору гэтых пратаколаў.

выказваючы relop выказваючы

Праўда , калі мае месца суадносіны, дзе relop з'яўляецца адным з>, <,> =, <=, = ,! =, А выраз ўяўляе сабой арыфметычнае выраз складаецца з цэлалікавых канстант (у стандартным сінтаксісе C), нармальныя бінарныя аператары [+ , -, *, /, &, |], даўжыня аператара, а таксама спецыяльныя метады доступу пакетнай перадачы дадзеных. Для таго, каб атрымаць доступ да дадзеных ўнутры пакета, выкарыстоўвайце наступны сінтаксіс:

прота [выраз: памер]

Прота з'яўляецца адным з эфіру, FDDI, TR, PPP, слізгацення, спасылкі, IP, ARP, RARP, TCP, UDP, ICMP або IP6, і паказвае на ўзровень пратаколу для аперацый з індэксамі. (Эфір, FDDI, тр, ррр, слізгацення і звязаць усе спасылаюцца на канальным узроўні.) Звярніце ўвагу , што TCP, UDP і іншыя тыпы пратаколаў верхняга ўзроўню прымяняюцца толькi да IPv4, IPv6 , ня (гэта будзе выпраўлена ў будучыні). Байтавая зрушэнне адносна названага ўзроўню пратаколу, задаюцца ехргом. Памер ня з'яўляецца абавязковым і паказвае колькасць байтаў ў полі інтарэсаў; гэта можа быць адзін, два, ці чатыры, і па змаўчанні адзін. Аператар даўжыні, паказвае ключавое слова Len, дае даўжыню пакета.

Напрыклад, `эфір [0] & 1! = 0 'ловіць усё шматадрасных трафіку. Выраз `ф [0] & 0xf! = 5 'перахапляе ўсё IP - пакеты з варыянтамі. Выраз `ф [6: 2] & 0x1FFF = 0 'ловіць толькі нефрагментированные дейтаграмм і Фрагай нулявога фрагментаваным дейтаграмм. Гэтая праверка няяўна прымяняецца да TCP і UDP індэксных аперацый. Напрыклад, ТСР [0] заўсёды азначае , што першыя байты загалоўка TCP, і ніколі не азначае , што першыя байты прамежкавага фрагмента.

Некаторыя зрушэння і значэння палёў могуць быць выяўленыя як імёны, а не як лікавыя значэння. Наступныя зрушэння поля загалоўка пратаколу даступныя: icmptype (ICMP тып поля), icmpcode (поле ICMP - код), і tcpflags (поле TCP сцягі).

Наступныя значэнні поля тыпу ICMP даступныя: ICMP-echoreply, ICMP-unreach, ICMP-sourcequench, ICMP уключэньне, ICMP-рэха, ICMP-routeradvert, ICMP-routersolicit, ICMP-timxceed, ICMP-paramprob, ICMP-TSTAMP, ICMP -tstampreply, IREQ-ICMP, ICMP-ireqreply, maskreq-ICMP, ICMP-maskreply.

Наступныя TCP сцягі значэння палёў даступныя: ТСР-плаўнік, ТСР-сін, ТСР-першы, ТСР-штуршок, ТСР-штуршок, ТСР-вывеў, ТСР-УРГ.

Прымітывы могуць быць аб'яднаны з дапамогай:

У дужкі група прымітываў і аператараў (круглыя ​​дужкі маюць спецыяльнае значэнне Shell і павінны быць экранаваныя).

Адмаўленне ( `! 'Або' ня ').

Канкатэнацыі ( `&& 'ці' і ').

Чаргаванне ( `|| 'ці' ці ').

Адмаўленне мае найвышэйшы прыярытэт. Чаргаванне і канкатэнацыі маюць аднолькавы прыярытэт і ад'юнкт злева направа. Звярніце ўвагу , што відавочнае і маркер, а не былі побач, зараз патрабуецца для канкатэнацыі.

Калі ідэнтыфікатар паказаны без ключавога слова, самае апошняе ключавое слова мяркуецца. Напрыклад,

ня размяшчаем супраць і туз

кароткая для

не размяшчае супраць і прымаючага асі

які не варта блытаць з

няма (гаспадар супраць або туз)

Аргументы экспрэсіі могуць быць перададзены TCPDUMP альбо як адзін аргумент ці як множныя аргументы, што больш зручна. У агульным выпадку, калі выраз ўтрымлівае Shell метасімвалы, то прасцей перадаць яго як адзіны аргумент у двукоссі. Некалькі аргументаў счапляюцца з прабеламі перад тым, як сінтаксічны аналіз.

прыклады

Для таго, каб надрукаваць усе пакеты , якія паступаюць на або вылятаюць з заходу сонца:

ТСРйитр гаспадар заходу сонца

Для друку трафіку паміж Helios і гарачай або асе:

Tcpdump Геліёс хаста і \ (гарачы або туз \)

Для таго, каб надрукаваць усе IP - пакеты паміж тузом і любым хастом , за выключэннем Helios:

ТСРйитр IP хаста туз і ня Helios

Для таго, каб надрукаваць ўвесь трафік паміж лакальнымі хастамі і хастамі ў Берклі:

Tcpdump чысты UCB-эфір

Для таго, каб надрукаваць ўвесь трафік перадачы файлаў праз Інтэрнэт шлюз Снуп: (звярніце ўвагу , што выраз у двукоссі , каб утрымаць абалонку ад (няправільна) інтэрпрэтуючы круглыя дужкі):

Tcpdump «шлюз Снуп і (порт FTP або FTP-дадзеных)»

Для таго, каб раздрукаваць трафік ні атрыманы з ні прызначанага для лакальных хастоў (калі шлюз да адной іншай сеткі, гэты матэрыял ніколі не павінны рабіць гэта на вашай лакальнай сеткі).

ТСРйитр ф , а не чысты LocalNet

Для друку пачатку і заканчэння пакетаў (пакеты SYN і FIN) кожнага TCP размовы, які ўключае ў сябе не лакальны хост.

TCPDUMP 'ТСР [tcpflags] & (ТСР-сін | ТСР-плаўнік)! = 0 і ня ЦСІ і ДСТ чысты LocalNet'

Для таго, каб надрукаваць IP - пакеты больш , чым 576 байт , адпраўленых праз шлюз Снуп:

TCPDUMP 'шлюз Снуп і ф [2: 2]> 576'

Для друку шырокавяшчальных або шматадрасных пакетаў IP , якія не былі адпраўленыя праз лакальныя сеткі вяшчання або шматадрасных рассылання:

Tcpdump 'эфір [0] & 1 = 0 і ф [16]> = 224'

Для таго, каб надрукаваць усе пакеты ICMP, якія ня рэха запытаў / адказаў (гэта значыць, не пінг-пакетаў):

'ICMP [icmptype]! = ICMP-рэха і ИКМП [icmptype]! = ICMP-echoreply' TCPDUMP

ВЫХАД ФАРМАТ

Выхад ТСРйитр залежыць ад пратаколу. Ніжэй прыводзіцца кароткае апісанне і прыклады большасці фарматаў.

Спасылка Узровень Загалоўкі

Калі опцыя «-e», то загаловак ўзроўню злучэння раздрукоўваецца. У сеткі Ethernet, то адрасы крыніцы і прызначэння, пратакол, і даўжыня пакета друкуюцца.

У сетках FDDI, «-e» опцыя прымушае ТСРйитр друкаваць поле `кіравання кадрамі», адрас крыніцы і прызначэння, а таксама даўжыню пакета. (Параметр `кадра кіраванне« поле вызначае інтэрпрэтацыю астатняй часткі пакета Нармальных пакеты (такія , як тыя , якія ўтрымліваюць IP - дейтаграмм) з'яўляюцца `асінхроннымі.» Пакеце, са значэннем прыярытэту ад 0 да 7;., Напрыклад, `async4» Такога пакеты мяркуецца ўтрымліваць лагічны пакет 802.2 Link Control (LLC), загаловак LLC друкуецца , калі ён не з'яўляецца ISO дейтаграмм або так званы пакет SNAP.

У сетках Token Ring, «-e» опцыя прымушае ТСРйитр раздрукаваць `кантролю доступу« і `ўпраўлення кадраў» поля, адрасы крыніцы і прызначэння, а таксама даўжыню пакета. Як і ў сетках FDDI, мяркуюцца пакеты ўтрымліваюць пакет LLC. Незалежна ад таго, указана опцыя «-e» ці не, крыніца інфармацыі аб маршрутызацыі раздрукоўваецца для крыніцы маршрутызацыі пакетаў.

(Заўвага: У наступным апісанні мяркуецца знаёмства з алгарытмам сціску SLIP , апісаным у RFC-1144.)

На SLIP сувязі, паказальнік павароту ( `` Я «» для ўязнога, `` O «» для выходнага), тыпу пакета і інфармацыя сціскаў раздрукоўваюцца. Тып пакета друкуецца раней усіх. Гэтыя тры тыпу IP, utcp і CTCP. Ніякая дадатковая інфармацыя спасылкі не друкуецца для IP - пакетаў. Для TCP-пакетаў, ідэнтыфікатар злучэння друкуецца пасля тыпу. Калі пакет сціскаецца, яго Кадаваць загаловак друкуецца. У асаблівых выпадках друкуюцца як * S + п і * SA + п, дзе п ёсць велічыня , на якую парадкавы нумар (або парадкавы нумар і вывеў) змяніўся. Калі гэта не асаблівы выпадак, нуль ці некалькі змен будуць надрукаваныя. Змена пазначаецца U (тэрміновы паказальнік), W (акно), A (Ack), S (нумар паслядоўнасці), і я (ідэнтыфікатар пакета), а затым дэльта (+ п або -п), або новае значэнне (= п). І, нарэшце, аб'ём дадзеных у пакеце і сціснутай даўжыні загалоўка друкуецца.

Напрыклад, наступны радок паказвае выходны TCP сціснутага пакет, з няяўнай ідэнтыфікатарам злучэння; АСК змянілася на 6, парадкавы нумар на 49, а ідэнтыфікатар пакета на 6; ёсць 3 байта дадзеных і 6 байт сціснутага загалоўка:

Аб CTCP * A + 6 S + I + 49 6 3 (6)

ARP / RARP Пакеты

Arp выхад / RARP паказвае тып запыту і яго аргументы. Фармат прызначаны для самастойных тлумачэнняў. Вось кароткі ўзор , узяты з самага пачатку ў `Rlogin 'ад гаспадара rtsg пройдзе CSAM:

агр хто-мае CSAM сказаць rtsg агр адказ CSAM гэта-на CSAM

Першы радок кажа, што rtsg паслаў агр пакет з просьбай для лакальных сетак адрасы Інтэрнэт хаста CSAM. CSAM адказвае яго Ethernet-адрас (у дадзеным прыкладзе, Ethernet-адрасы ў шапках і інтэрнэт-адрасы ў ніжнім рэгістры).

Гэта будзе выглядаць менш залішнім , калі б мы зрабілі ТСРйитр -n:

агр хто-мае 128.3.254.6 сказаць 128.3.254.68 агр адказ 128.3.254.6 гэта-в 02: 07: 01: 00: 01: c4

Калі б мы зрабілі ТСРйитр -е, той факт , што першы пакет транслюецца , а другі з'яўляецца кропка-кропка будзе бачная:

RTSG Broadcast 0806 64: Arp хто-мае CSAM Тэль rtsg CSAM RTSG 0806 64: агр адказ CSAM гэта-на CSAM

Для атрымання першага пакета гэта кажа адрас крыніцы Ethernet з'яўляецца RTSG, прызначэнне з'яўляецца шырокавяшчальным адрасам сеткі Ethernet, тыпу поле ўтрымлівалі гекса 0806 (тыпу ETHER_ARP), а агульная даўжыня складала 64 байта.

TCP пакеты

(NB: Наступнае апісанне мяркуе знаёмства з пратаколам TCP , апісаным у RFC-793 Калі вы не знаёмыя з пратаколам, ні гэта апісанне , ні ТСРйитр будзе шмат карысці для вас.) .

Агульны фармат радкі пратаколу ТСР:

ЦСІ> ДСТ: сьцягі дадзеных SEQNO акно вывеў тэрміновыя варыянты

Src і ДСТ з'яўляюцца адрасамі крыніцы і IP прызначэння і партоў. Сцягі некаторыя камбінацыі S (SYN), F (FIN), P (PUSH) або R (RST) або адзін `«. (Без сцягоў). Дадзеныя-SEQNO апісвае частка паслядоўнасці прасторы , охватываемые дадзеныя ў гэтым пакеце (глядзіце прыклад ніжэй). Ack гэта парадкавы нумар наступных дадзеных чакаецца , у іншае напрамку па гэтым злучэнню. Акно лік байт буфера прыёму даступнай прасторы ў іншым накірунку па гэтым злучэнню. Urg паказвае на наяўнасць `тэрміновыя» дадзеныя ў пакеце. Варыянты ТСР опцыі , зняволеныя ў вуглавыя дужкі (напрыклад, <ГПП 1024>).

Src, ДСТ і сцягі заўсёды прысутнічаюць. Астатнія поля залежаць ад змесціва загалоўка пратаколу TCP пакета і выводзяцца толькі ў выпадку неабходнасці.

Тут адкрытая частка з Rlogin ад хаста rtsg для размяшчэння CSAM.

rtsg.1023> csam.login: S 768512: 768512 (0) выйграць 4096 <ПСС 1024> csam.login> rtsg.1023: S 947648: 947648 (0) Ack 768.513 выйграць 4096 <ПСС 1024> rtsg.1023> CSAM. увайсці: . Пацверджана 1 перамога 4096 rtsg.1023> csam.login: Р 1: 2 (1) вывеў 1 перамога 4096 csam.login> rtsg.1023 :. Пацверджана 2 выйграць 4096 rtsg.1023> csam.login: P 02:21 (19) вывеў 1 перамога 4096 csam.login> rtsg.1023: Р 1: 2 (1) вывеў 21 выйграць 4077 csam.login> rtsg.1023: Р 2: 3 (1) вывеў 21 выйграць 4077 URG 1 csam.login> rtsg.1023: Р 3: 4 (1) вывеў 21 выйграць 4077 URG 1

Першы радок кажа , што TCP - порт 1023 на rtsg адправіў пакет у порт ўваходу на CSAM. S паказвае на тое, што сцяг SYN быў усталяваны. Парадкавы нумар пакета быў 768512, і ён не ўтрымлівае ніякіх дадзеных. (Абазначэнні `першы: апошні (лік - байт) ' , што означает` парадкавыя нумары першага да, але не ўключаючы апошні , які - байт байт карыстацкіх дадзеных.) Там не было контрейлерные вывеў, даступнае атрымаць акно было 4096 байт і быў варыянт макс сегмента памеру запыту ПАС 1024 байтам.

CSAM адказвае падобнаму пакет за выключэннем таго, уключае ў сябе контрейлерные ACK для SYN rtsg ст. Rtsg затым квітанцый SYN CSAM ст. `.» азначае, што сцягі не былі ўстаноўлены. Пакет не ўтрымлівае ніякіх дадзеных, таму няма нумары паслядоўнасці дадзеных. Звярніце ўвагу, што нумар паслядоўнасці вывеў з'яўляецца невялікім цэлым лікам (1). Першы раз ТСРйитр бачыць ТСР `размова», ён выводзіць парадкавы нумар з пакета. На наступных пакетах размовы, розніца паміж парадкавым нумарам бягучага пакета і гэтым пачатковым нумарам паслядоўнасці друкуюцца. Гэта азначае, што нумары паслядоўнасці пасля першай можна інтэрпрэтаваць як адносныя пазіцыі байта ў патоку дадзеных у размове (з першым байтаў дадзеных у кожны напрамак быўшы '1'). `-S» адменіць гэтую функцыю, у выніку чаго зыходная паслядоўнасць лікаў для вываду.

На 6-й лініі, rtsg пасылае CSAM 19 байт дадзеных (байт 2 да 20 у rtsg -> CSAM бок гутаркі). Сцяг PUSH усталёўваецца ў пакеце. На 7-й радку, CSAM кажа ён атрымаў дадзеныя, пасланыя rtsg да, але не ўключаючы байт 21. Большая частка гэтых дадзеных, па-відаць сядзіць у буферы сокета, так як вокны прыёму CSAM мае атрымалі 19 байт менш. CSAM таксама пасылае адзін байт дадзеных, каб rtsg ў гэтым пакеце. На 8-й і 9-й лініі, CSAM пасылае два байта надзённая, адсунуў дадзеныя ў rtsg.

Калі здымак быў досыць малы , што ТСРйитр ня захапіць поўны загаловак TCP, ён інтэрпрэтуе як большую частку загалоўка , як ён можа , а затым паведамляе `` [| TCP] «» , каб паказаць , рэшту не можа быць вытлумачана. Калі загаловак змяшчае падроблены варыянт (адзін з даўжынёй , што гэта альбо занадта малыя , альбо пасля канца загалоўка), ТСРйитр паведамляе як `` [дрэнны неаўтаматычныя] «» і не інтэрпрэтуе любыя дадатковыя опцыі (бо немагчыма сказаць дзе яны пачынаюць). Калі даўжыня загалоўка паказвае параметры прысутнічаюць , але даўжыня IP датаграммы не дастаткова доўга для опцыі на самай справе быць там, ТСРйитр паведамляе як `` [дрэнна даўжыня HDR] «».

Захоп TCP пакеты з камбінацыямі прыватнасці, сцяг (SYN-ACK, URG-ACK, і г.д.)

Ёсць 8 біт у блоку кіравання бітамі загалоўка TCP:

КВР | ECE | URG | ACK | PSH | RST | SYN | FIN

Давайце выкажам здагадку, што мы хочам глядзець пакеты, якія выкарыстоўваюцца пры ўсталяванні злучэння TCP. Нагадаем, што TCP выкарыстоўвае пратакол квитирования 3-палосная пры ініцыялізацыі новага злучэння; паслядоўнасць злучэнняў у дачыненні да кіраўнікоў бітаў ПТС

1) выклікае абанент пасылае SYN

2) Атрымальнік адказвае SYN, ACK

3) выклікае абанент адпраўляе ACK

Цяпер мы зацікаўлены ў захопе пакетаў, якія маюць толькі набор біт SYN (этап 1). Звярніце ўвагу, што мы не хочам, пакетаў з крокам 2 (SYN-ACK), толькі простым пачатковага SYN. Што нам трэба , гэта правільнае выраз фільтра для ТСРйитра.

Нагадаем структуру TCP загаловак без опцый:

0 15 31 ----------------------------------------------- ------------------ | Порт крыніцы | порт прызначэння | -------------------------------------------------- --------------- | парадкавы нумар | -------------------------------------------------- --------------- | нумар пацверджання | -------------------------------------------------- --------------- | HL | RSVD | C | E | U | А | Р | Р | С | Р | памер акна | -------------------------------------------------- --------------- | TCP кантрольнай сумы | тэрміновы паказальнік | -------------------------------------------------- ---------------

Загаловак TCP звычайна займае 20 актэтаў дадзеных, калі не прысутнічаюць опцыі. Першы радок графа ўтрымлівае актэт 0 - 3, другая лінія паказвае актэт 4 - 7 і г.д.

Пачынаючы лічыць з 0, адпаведныя кіраўнікамі бітамі TCP ўтрымліваюцца ў актэце 13:

0 7 | 15 | 23 | 31 ---------------- | --------------- | --------------- | ---------------- | HL | RSVD | C | E | U | А | Р | Р | С | Р | памер акна | ---------------- | --------------- | --------------- | - --------------- | | 13 актэт | | |

Давайце больш уважліва паглядзім на актэта няма. 13:

| | | --------------- | | C | E | U | А | Р | Р | С | Р | | --------------- | | 7 5 3 0 |

Гэтыя кіраўнікі біты TCP нас цікавяць. Мы пранумаравалі біты ў гэтым актэта ад 0 да 7, справа налева, так што біт PSH з'яўляецца разраднае лік 3, у той час як біт URG гэта нумар 5.

Нагадаем, што мы хочам, каб захопліваць пакеты толькі з SYN набору. Давайце паглядзім, што адбываецца з актэт 13, калі TCP датаграмма прыбывае з бітам SYN усталяваны ў загалоўку:

| C | E | U | А | Р | Р | С | Р | | --------------- | | 0 0 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 усталяваны, значэнне 13-га байта ў загалоўку TCP, калі інтэрпрэтуецца як 8-бітавага цэлага ліку без знака ў сеткавым парадку байтаў, павінна быць роўна 2.

Гэтыя суадносіны можа быць выказана як

TCP [13] == 2

Мы можам выкарыстоўваць гэты выраз у якасці фільтра для ТСРйитра, каб глядзець пакеты , якія маюць толькі SYN набор:

Tcpdump -i xl0 TCP [13] == 2

Выраз кажа «хай 13 актэта TCP дейтаграмм маюць дзесятковы значэнне 2», які з'яўляецца менавіта тое, што мы хочам.

Цяпер, давайце выкажам здагадку, што нам трэба захапіць SYN пакеты, але мы не хвалюе, калі ACK або любы іншы біт кіравання TCP усталёўваецца ў той жа самы час. Давайце паглядзім, што адбываецца з актэт 13, калі TCP дейтаграмм з SYN-ACK наборам прыбывае:

| C | E | U | А | Р | Р | С | Р | | --------------- | | 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" ў словазлучэнні ТСРйитр фільтра, таму што будзе выбіраць толькі тыя пакеты , якія маюць SYN-ACK набор, але не тыя , з толькі наборам SYN. Памятаеце, што мы не хвалюе, калі ACK або любы іншы кіраўнік біт усталяваны, пакуль SYN усталяваны.

Для таго, каб дасягнуць нашай мэты, мы павінны лагічна і двайковае значэнне актэта 13 з якім-небудзь іншым значэннем, каб захаваць біт SYN. Мы ведаем, што мы хочам SYN быць усталяваны ў любым выпадку, так што мы будзем лагічна і значэнне ў 13 актэта з двайковым значэннем сін:

00010010 SYN-ACK SYN 00000010 І 00000010 (мы хочам сін) і 00000010 (мы хочам SYN) -------- -------- = 00000010 = 00000010

Мы бачым, што гэтая аперацыя І забяспечвае такі ж вынік, незалежна ад таго, ці ўсталяваны ACK або іншы кіраўнік TCP біт. Дзесятковы прадстаўленне і значэнне, а таксама вынік гэтай аперацыі 2 (двайковае 00.000.010), таму мы ведаем, што для пакетаў з SYN ўстаноўлена наступнае павінна мець месца суадносіны:

((Значэнне актэта 13) і (2)) == (2)

Гэта паказвае нам на выраз ТСРйитр фільтра

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

Звярніце ўвагу, што вы павінны выкарыстоўваць адзінарныя двукоссі або зваротную касую рысу ў выразе, каб схаваць AND ( «&») спецыяльны сімвал з абалонкі.

пакеты UDP

Фармат UDP ілюструецца гэтым rwho пакета:

actinide.who> broadcast.who: УДП 84

Гэта сведчыць пра тое, што порт , які на хасце актынідыі паслаў UdP дейтаграмм ў порт , хто на хост трансляцыі, адрас Інтэрнэт - вяшчання. Пакет утрымліваў 84 байт карыстацкіх дадзеных.

Некаторыя UDP паслугі прызнаюцца (ад крыніцы або порта прызначэння нумары) і інфармацыя пратаколу больш высокага ўзроўню раздрукавана. У прыватнасці, запыты службы даменных імёнаў (RFC-1034/1035) і нд RPC выклікі (RFC-1050) для NFS.

Запыты UDP Імя сервера

(NB: Наступнае апісанне мяркуе знаёмства з пратаколам службы даменных імёнаў , апісаным у RFC-1035 Калі вы не знаёмыя з пратаколам, наступнае апісанне будзе здавацца напісана на грэцкай.) .

запыты Імя сервера адфарматаваны як

ЦСІ> ДСТ: ідэнтыфікатар оп? сцягі qtype qclass імя (LEN) h2opolo.1538> helios.domain: 3+ A? ucbvax.berkeley.edu. (37)

Хост h2opolo спытаў сервер дамена на Helios для запісу адрасы (qtype = A) , звязаны з імем ucbvax.berkeley.edu. Ідэнтыфікатар запыту быў `3 '. '+ »Паказвае на рэкурсіі жаданы сцяг быў усталяваны. Даўжыня запыту складае 37 байт, не ўключаючы загалоўкі пратаколаў UDP і IP. Аперацыі запыту былі нармальныя адзін, запыт, так што поле оп было апушчана. Калі оп было што-небудзь яшчэ, гэта было б надрукавана паміж `3 'і' +». Аналагічным чынам , qclass быў нармальным, C_IN і апускаецца. Любая іншая qclass была б надрукаваная адразу пасля `A».

Некалькі анамалій правяраюцца і могуць прывесці да дадатковых палях , зняволеныя ў квадратных дужках: Калі запыт ўтрымлівае адказ, аўтарытэтныя запісы або дадатковыя запісы падзелу, ancount, nscount або arcount друкуюцца як `[п а]», '[п п ] «ці '[п АІ]» дзе п адпаведны лічыльнік. Калі які - небудзь з бітаў водгуку ўстаноўлены (АА, РА або RCODE) або любой з `павінен быць роўны нулю« біты ўсталёўваюцца ў байтах два і тры, `[b2 & 3 = х]» друкуецца, дзе х ўяўляе сабой шаснаццатковае значэнне загаловак байт два і тры.

Адказы UDP Імя сервера

адказы Імя сервера адфарматаваны як

SRC> ДСТ: ID оп RCODE сцягі A / N / дадзеных аб класе тыпу АС (LEN) helios.domain> h2opolo.1538: 3 3/3/7 128.32.137.3 (273) helios.domain> h2opolo.1537: 2 NXDomain * 0/1/0 (97)

У першым прыкладзе, Геліёс адказвае на запыт ідэнтыфікатара 3 з h2opolo 3 адказу запісаў, 3 запісаў сервера імёнаў і 7 дадатковых запісаў. Першы запіс адказ тыпу A (адрас) і яго дадзеныя інтэрнэт-адрас 128.32.137.3. Агульны памер адказу быў 273 байт, за выключэннем загалоўкаў UDP і IP. Оп (запыт) і код адказу (NoError) былі апушчаны, як гэта было клас (C_IN) з запісу A.

У другім прыкладзе, Геліёс адказвае на запыт 2 з кодам адказу на неіснуючы дамен (NXDomain) без якіх - небудзь адказаў, адзін сервер імёнаў і ня аўтарытэтных запісаў. `*» Паказвае на тое, што аўтарытэтны адказ біт быў усталяваны. Паколькі не было ніякіх адказаў, не былі надрукаваны ня тып, клас або дадзеныя.

Іншыя сімвалы сцяга , якія могуць з'явіцца ў `-« (Рэкурсія даступная, RA, не ўстаноўлены) і `|» (Ўсечанага паведамленне, ТК, набор). Калі `пытанне" падзел не ўтрымлівае роўна адзін элемент, `[п Q] друкуецца.

Звярніце ўвагу , што імя запыты і адказы сервера маюць тэндэнцыю быць большы і па змаўчанні snaplen з 68 байт не можа захапіць дастаткова пакет для друку. Выкарыстоўвайце сцяг -s для павелічэння snaplen , калі вам трэба сур'ёзна даследаваць сервер трафіку імёнаў. `-s 128 'працуе добра для мяне.

SMB / CIFS дэкадаванне

ТСРйитр цяпер ўключае ў сябе даволі шырокі SMB / CIFS / NBT дэкадаванне дадзеных па пратаколе UDP / 137, UDP / 138 і TCP / 139. Некаторыя прымітыўна дэкадаванне IPX і NetBEUI SMB дадзеных таксама выконваецца.

Па змаўчанні даволі мінімальна дэкадаванне выконваецца з значна больш падрабязным дэкадаваннем зроблена, калі -v выкарыстоўваецца. Майце на ўвазе, што з -va адзін пакет SMB можа заняць старонку або больш, таму выкарыстоўвайце -v, калі вы сапраўды жадаеце ўсё скрываўленыя дэталі.

Калі дэкадаванне SMB сеансаў, які змяшчае Юнікод радок, то вы можаце ўсталяваць зменныя асяроддзі USE_UNICODE 1. патч для аўтавызначэння Юнікода srings будзе вітацца.

Для атрымання інфармацыі аб фарматах пакетаў SMB і тое, што ўсе т е поля азначаюць см www.cifs.org або пабе / самбы / Спецыфікацыі / каталог на вашым любімым сайце samba.org люстэрка. СМБ патчы былі напісаныя Эндру Tridgell (tridge@samba.org).

NFS Запыты і адказы

ВС NFS (Network File System) запыты і адказы друкуюцца як:

src.xid> dst.nfs: LEN оп Арг src.nfs> dst.xid: адказ стат LEN вынікі оп sushi.6709> wrl.nfs: 112 readlink СПЧ 21,24 / 10,73165 wrl.nfs> sushi.6709: адказваць нармальна 40 readlink "../var" sushi.201b> wrl.nfs: 144 пошуку ФХ 9,74 / 4096.6878 "xcolors" wrl.nfs> sushi.201b: адказаць ОК 128 пошук ФХ 9,74 / 4134,3150

У першым радку, хост суша пасылае транзакцыю з ідэнтыфікатарам 6709 у WRL (звярніце ўвагу , што лік пасля Src хаста з'яўляецца ідэнтыфікатарам транзакцыі, а ня порт крыніцы). Запыт быў 112 байт, за выключэннем загалоўкаў UDP і IP. Аперацыя была readlink (чытай сімвалічную спасылку) на дэскрыптар файла (Fh) 21,24 / 10.731657119. (Калі хто - то пашанцавала, так як у гэтым выпадку дэскрыптар файла можа інтэрпрэтавацца ў якасці асноўных, нязначных пароў нумары прылады, за якім варта нумар індэкснага дэскрыптара і нумар пакалення.) WRL адказвае `OK» з змесцівам спасылкі.

У трэцім радку, сушы пытаецца WRL для пошуку імёнаў `xcolors 'у файле з 9,74 / 4096.6878. Звярніце ўвагу, што дадзеныя, надрукаваныя ў залежнасці ад тыпу аперацыі. Фармат прызначаны для самастойнай тлумачальнага, калі ў спалучэнні з пратаколам спецыфікацыі NFS.

Калі (шматслоўны) сцяг -v даецца дадатковая інфармацыя друкуецца. Напрыклад:

sushi.1372a> wrl.nfs: 148 прачытаць СПЧ 21,11 / 12,195 8192 байт @ 24576 wrl.nfs> sushi.1372a: адказаць нармальна 1472 прачытаць REG 100664 Ідэнтыфікатары 417/0 SZ 29388

(-v таксама друкуе загаловак IP - TTL, ID, даўжыня і асколачныя поля, якія былі выключаны з гэтага прыкладу.) У першай радку, сушы просіць WRL для чытання 8192 байт з файла 21,11 / 12.195, з байта зрушэння 24576. WRL адказвае `нармальна '; пакет паказаны на другой лініі з'яўляецца першым фрагментам адказу, і, такім чынам, мае даўжыню ўсяго 1472 байт (астатнія байты вынікаюць у наступных фрагментах, але гэтыя фрагменты не маюць NFS ці нават UDP загалоўкі і таму не могуць быць надрукаваныя, у залежнасці ад выкарыстоўванага выразы фільтра). Паколькі сцяг -v даецца, некаторыя з атрыбутаў файлаў (якія вяртаюцца ў дадатак да дадзеных файла) друкуюцца: тып файла ( `` REG «», для звычайнага файла), рэжым доступу да файла (у васьмярковым), UID, і GID, і памер файла.

Калі сцяг -v даецца больш, чым адзін раз, нават больш дэталяў друкуюцца.

Звярніце ўвагу , што NFS запыты вельмі вялікі і вялікая частка дэталяў не будзе друкавацца , калі snaplen не павялічваецца. Паспрабуйце выкарыстоўваць `-s 192 ' , каб назіраць трафік NFS.

NFS Зваротныя пакеты відавочна не вызначыць аперацыю RPC. Замест гэтага ТСРйитр адсочвае `` апошніх «» запытаў, і супастаўляе іх адказы , выкарыстоўваючы ідэнтыфікатар транзакцыі. Калі адказ не ўважліва сачыць за адпаведны запытам, ён не можа быць інтэрпрэтаванай.

AFS Запыты і адказы

Transarc AFS (Andrew File System) запыты і адказы друкуюцца як:

src.sport> dst.dport: гй пакет тыпу src.sport> dst.dport: ге пакеты тыпу выкліку імя выкліку службы Арг src.sport> dst.dport: гй пакеты тыпу выкліку імя службы адказу Args Элвіс. 7001> pike.afsfs: ФС ПРМ дадзеных называюць пераназываць старыя шлагты 536876964/1/1 ".newsrc.new" новых FID 536876964/1/1 ".newsrc" pike.afsfs> elvis.7001: ФС дадзеных гх адказаць перайменаванне

У першым радку, хост Elvis пасылае пакет на RX Пайк. Гэта быў пакет дадзеных RX да ФС (файлавы сервер) службе, і гэта пачатак выкліку RPC. Выклік RPC быў перайменаванне, са старым файла каталога ідэнтыфікатар 536876964/1/1 і старога імя файла `.newsrc.new», і новы файл каталога ідэнтыфікатар 536876964/1/1 і новае імя файла `. newsrc. Хост шчупак рэагуе з RPC адказ на перайменаванні выкліку (які быў паспяховым, таму што гэта быў пакет дадзеных, а не пакет перапынення).

Увогуле, увесь AFS RPCs дэкадуецца па меншай меры, па імені RPC-выклікаў. Большасць АСПО RPCs, па меншай меры, некаторыя з аргументаў расшыфраваных (як правіла, толькі `цікавых» аргументаў для некаторага вызначэння цікава).

Фармат прызначаны для самастойнага апісання, але гэта, верагодна, не будзе карысным для людзей, якія не знаёмыя з працай АФС і RX.

Калі -v (падрабязна) зададзены сцяг двойчы, пацверджанне прыёму пакеты і дадатковая інфармацыя загалоўка друкуюцца, такія як ПРМ выкліку ID, выклік нумар, парадкавы нумар, серыйны нумар, і пакет сцягі RX.

Калі сцяг -v зададзена двойчы, то дадатковая інфармацыя друкуецца, напрыклад, І.Д. RX выкліку, серыйны нумар і пакет сцягоў RX. Інфармацыя перамовы МТА таксама раздрукавана з Ack пакетаў RX.

Калі сцяг -v даецца тры разы, індэкс бяспекі і ідэнтыфікатар паслугі друку.

Коды памылак выводзяцца для пакетаў аперацый па спыненні, за выключэннем пакетаў радыёмаяка Ubik (паколькі ABORT пакетаў выкарыстоўваюцца для абазначэння ды галасы для пратаколу Ubik).

Звярніце ўвагу , што запыты AFS вельмі вялікія , і многія з аргументаў не будзе друкавацца , калі snaplen не павялічваецца. Паспрабуйце выкарыстоўваць `-s 256 ' , каб глядзець АФС трафік.

AFS адказ пакеты відавочна не вызначыць аперацыю RPC. Замест гэтага ТСРйитр адсочвае `` апошніх «» запытаў, і супастаўляе іх адказы , выкарыстоўваючы нумар выкліку і ідэнтыфікатар паслугі. Калі адказ не ўважліва сачыць за адпаведны запытам, ён не можа быць інтэрпрэтаванай.

KIP Appletalk (DDP ў UDP)

AppleTalk DDP пакеты, інкапсуляваць ў UDP-дейтаграмм декапсулируются і скідвалі ў выглядзе пакетаў DDP (гэта значыць, уся інфармацыя UDP загаловак адкідаецца). Файл /etc/atalk.names выкарыстоўваюцца для перакладу AppleTalk чыстага і нумары вузла да імёнаў. Радкі ў гэтым файле маюць выгляд

імя нумар 1,254 эфір 16,1 ICSD-нета 1.254.110 туз

Першыя два радкі даюць імёны APPLETALK сетак. Трэці радок задае імя пэўнага хаста (хост адрозніваюцца ад сеткі па 3 актэт ў нумары - нумар сеткі павінен мець два актэта і нумар хост павінен мець тры актэта.) Нумар і назва мусіць быць аддзелена прабелу (нарыхтоўкі або ўкладка). Файл /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 хост / нумары сеткі, адрасу друкуюцца ў лічбавым выглядзе.) У першым прыкладзе, NBP (DDP порт 2) па чыстых 144,1 вузел 209 пасылае да таго, што праслухоўвае порт 220 чыстага ICSD вузла 112. другой лініі такая ж, за выключэннем поўнае імя вузла крыніцы вядома ( `офіс '). Трэцяя лініяй з'яўляецца пасылам з порта 235 на чыстым вузле jssmag 149 вяшчаць на ICSD ўнутрысеткавага порта НБП (звярніце ўвагу, што шырокавяшчальны адрас (255) абазначаюцца імем сеткі без нумара хаста - па гэтай прычыне гэта добрая ідэя захаваць імёны вузлоў і чыстыя імёны розных ў /etc/atalk.names).

NBP (назва пратаколу звязвання) і АТФ (пратакол транзакцыі Appletalk) пакеты маюць іх змесціва інтэрпрэтуецца. Іншыя пратаколы проста звалка імя пратаколу (або нумар, калі імя не зарэгістравана для пратаколу) і памеру пакета.

NBP пакеты адфарматаваны , як у наступных прыкладах:

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

Першы радок запыт пошуку імя для laserwriters адпраўленага чыстай ICSD хаста 112 і трансляванага па сетцы jssmag. НБП ідэнтыфікатар для пошуку з'яўляецца 190. Другая радок паказвае адказ на гэтую просьбу (звярніце ўвагу, што ён мае той жа ідэнтыфікатар) з прымаюць jssmag.209 кажуць, што ён мае Laserwriter рэсурс пад назвай «RM1140» зарэгістраваны на порце 250. трэцяга лінія іншы адказ на той жа запыт, кажучы гаспадар techpit мае LaserWriter «techpit» зарэгістраваны на порт 186.

АТФ пакет фарматавання дэманструецца ў наступным прыкладзе:

jssmag.209.165> helios.132: АТП-REQ 12266 <0-7> 0xae030001 helios.132> jssmag.209.165: АТП-12266, адпаведна: 0 (512) 0xae040000 helios.132> jssmag.209.165: АТП-12266, адпаведна: 1 (512) 0xae040000 helios.132> jssmag.209.165: АТП-12266 адпаведна: 2 (512) 0xae040000 helios.132> jssmag.209.165: АТП-12266, адпаведна: 3 (512) 0xae040000 helios.132> jssmag.209.165: АТФ адпаведна 12.266: 4 (512) 0xae040000 helios.132> jssmag.209.165: АТП-12266 адпаведна: 5 (512) 0xae040000 helios.132> jssmag.209.165: АТП-12266, адпаведна: 6 (512) 0xae040000 helios.132> jssmag. 209,165: АТП-RESP * 12266: 7 (512) 0xae040000 jssmag.209.165> helios.132: АТП-REQ 12266 <3,5> 0xae030001 helios.132> jssmag.209.165: АТП-12266, адпаведна: 3 (512) 0xae040000 Helios 0,132> jssmag.209.165: АТП-12266 адпаведна: 5 (512) 0xae040000 jssmag.209.165> helios.132: АТП-12266 отн <0-7> 0xae030001 jssmag.209.133> helios.132: АТП-REQ * 12267 <0 -7> 0xae030002

Jssmag.209 ініцыюе ідэнтыфікатар транзакцыі 12266 з прымаючым Helios шляхам запыту да 8 пакетаў (у `<0-7> '). Шаснаццатковае лік у канцы радка гэта значэнне `» вобласці карыстацкіх дадзеных у запыце.

Helios рэагуе з 8 пакетаў па 512 байт. `: Лічба» пасля ідэнтыфікатара транзакцыі дае нумар пакет паслядоўнасці ў транзакцыі, а лік у круглых дужках з'яўляецца колькасцю дадзеных у пакеце, за выключэннем АТПА загалоўка. `*» На пакеце 7 паказвае на тое, што біт МНВ быў усталяваны.

Jssmag.209 затым запытвае, што пакеты 3 і 5 быць паўторна перададзены. Helios паўторна адпраўляе іх тады jssmag.209 вызваляе здзелку. Нарэшце, jssmag.209 ініцыюе наступны запыт. `*« На запыце паказвае на тое, што XO ( `роўна адзін раз») не быў усталяваны.

IP-фрагментацыя

Фрагментаваныя дейтаграмм друкуюцца як

(Аскепкава ID: Памер @ афсет +) (аскепкава ID: Памер @ зрушэнне)

(Першая форма паказвае на тое ёсць большая колькасць фрагментаў. Другі паказвае, што гэта апошні фрагмент.)

Ідэнтыфікатар фрагмента ідэнтыфікатар. Памер памер фрагмента (у байтах) без уліку загалоўку IP. Зрушэнне гэтага асколак зрушэнне (у байтах) у зыходнай дейтаграмм.

Інфармацыя фрагмент выводзіцца для кожнага фрагмента. Першы фрагмент змяшчае загаловак пратаколу больш высокага ўзроўню, і інфармацыю аскепкава друкуюцца пасля інфармацыі пратаколу. Фрагменты пасля першага не ўтрымліваюць загалоўка пратаколу больш высокага ўзроўню, і інфармацыю аскепкава друкуюцца пасля адрасы крыніцы і прызначэння. Напрыклад, тут з'яўляецца часткай фтпа ад arizona.edu да lbl-rtsg.arpa праз злучэнне CSNET, якое не адлюстроўваецца для апрацоўкі 576 байт датаграммы:

arizona.ftp-дадзеных> rtsg.1170 :. 1024: 1332 (308) вывеў 1 перамога 4096 (Фрагай 595a: 328 @ 0 +), Арызона> rtsg: (Фрагай 595a: 204 @ 328) rtsg.1170> arizona.ftp-дадзеных :. Ack 1536 выйграць 2560

Ёсць некалькі рэчаў, каб адзначыць тут: Па-першае, адрас ў 2-е лініі не ўключаюць нумары партоў. Гэта таму, што інфармацыя аб пратаколе TCP усё ў першым фрагменце, і мы не маем ні найменшага падання аб тым, што порт або парадкавыя нумары, калі мы выводзім пазнейшыя фрагменты. Па-другое, інфармацыя пра паслядоўнасць TCP у першым радку друкуецца як калі б было 308 байт карыстацкіх дадзеных, калі, па сутнасці, ёсць 512 байт (308 у першым Фрагай і 204 у другім). Калі вы шукаеце адтуліну ў прасторы паслядоўнасцяў або спрабуеце супасці з пакетамі пацверджанняў, гэта можа падмануць вас.

Пакет з IP не фрагментаваць сцяг адзначаны завяршальным (DF).

Timestamps

Па змаўчанні ўсе выходныя лініі папярэднічае змяняць час. Отметка бягучы час гадзіны ў выглядзе

гг: мм: ss.frac

і так дакладна, як гадзіннік ядра. Пазнака часу адлюстроўвае час ядро ​​ўпершыню ўбачыў пакет. Не рабіліся ніякіх спробаў растлумачыць часовую лаг паміж момантам, калі інтэрфейс Ethernet выдалены пакетам з дроту і, калі ядро ​​абслугоўвала `новага пакета» перапынення.

ГЛЯДЗІЦЕ ТАКСАМА

трафіку (1C), Ніт (4P), BPF (4), PCAP (3)

Важна: Выкарыстоўвайце каманду чалавека (%) чалавек , каб паглядзець , як каманда выкарыстоўваецца на вашым канкрэтным кампутары.