Duomenų srauto stebėjimas ir analizė lokaliame tinkle

InformatikaAnalizėIlgas3 102 žodžių16 min. skaitymo

Duomenų srauto stebėjimas ir analizė lokaliame tinkle

Tikslai:

•susipažinti su MS Network Monitor programos, kuri skirta LAN duomenų srauto stebėjimui ir analizei, galimybėmis;

•užrašyti ir detaliai išanalizuoti bent vieną savo kompiuterio duomenų srautą Ethernet paketų lygyje paprastai duomenų kaitos sesijai.

Apie MS Network Monitor(NetMon) paketą:

Programa NetMon skirta duomenų srauto stebėjimui lokalaus tinklo segmente.

Visi duomenys perduodami Ethernet tinklu ir yra talpinami į paketus. Ethernet – pati populeriausia tinklinė architekūra. Ji išnaudoja siaurojuostine transleciją (10

MB/S).Ethernet suskaldo duome-

nis į paketus (kadrus); Tinklo magistralėje ‘vaikšto labai’ daug paketų.

Todėl turi būti nustatytas atitinkamas filtras,kuris išrenka tik tuos kurių mums reikia. Filtre nustatomas atitinkamas rišys tarp kompiuterių , nurodomi draugo (iš kurio siunčiamės duomenis ) ir to ant kurio dirbate kompiuterių adresai.

Paketas kabeliu siunčiamas iš vieno kompiuterio į kitą. Nusiūsti duomenys į konkretų kompiuterį , jis juos apdoroja ir siunčia atsakomajį paketą(atgaliniu adresu), nes pirmame pa-

kete buvo siunčiančiojo kompiuterio unikalus adresas.

Minimalus paketo ilgis 64 baitai , o kartu su tarnybine paketo dalimi –

preambule- 72 baitai

(802.3 standartas). Prembulė–nurodo kadro pradžią. Maksimalus kadras gali būti 1518 baitų .

Darbo aprašas:

Analizuojant duomenų srautą tarp kompiuterių, Ethernet paketų lygyje, buvo kopijuojamas duomenų failas iš vieno kompiuterio į kitą.Tinklo magistrale laksto labai daug paketų. Todėl norint kad duomenų būtų nedaug, buvo uždėtas filtras , kuris fiksavo tik iš draugo kompiuterio einančius paketus. Filtre nustatomas atitinkamas rišys tarp kompiuterių , nurodomi kompiuterių adresai:

|AND |

SAP/ETYPE = Any SAP or Any ETYPE

|AND |(Address Pairs) |

KTML_NT_3 < = > KTML_NT_1

|AND |(Pattern Matches) |

Šis rišys fiksavo tik paketus einančius iš draugo kompiuterio į tą kopmiuterį ant kurio aš dirbau (į abi kryptis) ir tik Ethernet paketus, nefiksuojant visų kitų rūšių paketų.

| |Kompiuterio |MAC adresas |IP adresas |

| |vardas | | |

|Draugo komp. |KTML_NT_3 |00:C0:6C:30:49:30|193.219.33.83 |

|Mano komp. |KTML_NT_1 |00:C0:6C:28:92:05|193.219.33.81 |

Nustačius filtrą, iš pagrindinio meniu ‘Capture’ paleidžiamas tinklo stebėjimas,kurio metu “pagauti” paketai rašomi į failą , pastebima tam tikra dinamika programos lange. Sustabdžius stebėjimą , sukauptą failą galima peržiūreti. Peržiūros sąsajos režime kiekvieno paketo įrašas išskleidžiamas į atskirus laukus, galima matyti paketų antraštes ir kt.

Buvo kopijuojamas failas SSS.txt, kuriame įrašyta eilutė –

“AAAAAAAAAAABBBBBBBBB

BBBBBBBBBCCCCCCCCCCCCCCC

Programa fiksavo 12 freimų.

Pirmas freimas:

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.617 KTML_NT_1 KTML_nt_3 SMB C transact2 |

|Findfirst, File = \sss.txt |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 92 FF FF ..l0I0..l(……

00010: 00 92 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55 ……….l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 10 06 03 40 ……l(…U…@

00030: 05 60 EB 00 62 00 00 00 62 00 FB 00 00 01 FF 53 .`..b…b……S

00040: 4D 42 32 00 00 00 00 18 03 80 96 81 00 00 00 00 MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 40 37 0F 1E …………@7..

00060: 00 00 00 0A 00 60 02 00 00 00 00 00 00 00 00 00 …..`……….

00070: 00 1E 00 44 00 00 00 00 00 01 00 01 00 21 00 00 …D………!..

00080: 00 00 16 00 06 00 05 00 04 01 00 00 00 00 5C 00 …………..\.

00090: 73 00 73 00 73 00 2E 00 74 00 78 00 74 00 00 00 s.s.s…t.x.t…

Pirmoje eilutėje, pirmus 6 baitus kadre sudaro gavėjo adresas, o sekančius

6 baitus siuntėjo adresas. Sekantys 2 baitai – Ethernet tipas(skaičius visada didesnis už maksimalų kadro duomenų ilgį baitais). Freimo ilgis 160 baitai. Taigi kopijuojant failą pirmame freime mūsų kompiuteris pirmiausia pasiuntė užklausimą kitam kompiuteriui ar toks failas yra: “transact2

Findfirst, File = \sss.txt”. Paketo tipas = IPX ; IDP ilgis = 146(0x92);

Antras freimas:

|Time Src MAC Addr Dst MAC Addr Protocol |

|Description |

|1.619 KTML_nt_3 KTML_NT_1 SMB |

|R transact2 Open (response) |

00000: 00 C0 6C 28 92 05 00 C0 6C 30 49 30 00 E0 FF FF

..l(….l0I0….

00010: 00 E0 00 04 00 00 19 94 00 C0 6C 28 92 05 04 55

……….l(…U

00020: 00 00 19 94 00 C0 6C 30 49 30 04 55 10 06 05 60

……l0I0.U…`

00030: 03 40 FB 00 B0 00 00 00 B0 00 EC 00 F1 00 FF 53

.@………….S

00040: 4D 42 32 00 00 00 00 98 03 80 96 81 00 00 00 00

MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 40 37 0A 0A

…………@7..

00060: 00 6C 00 00 00 0A 00 38 00 00 00 6C 00 44 00 00

.l…..8…l.D..

00070: 00 00 00 79 00 00 01 10 01 00 01 00 00 00 00 00

…y…………

00080: 00 00 00 00 00 00 00 00 00 00 80 35 A8 4D D7 9D

………..5.M..

00090: BE 01 50 7D DD 7D 57 A3 BE 01 E0 F9 3D E2 C9 9D

..P}.}W…..=…

000A0: BE 01 E0 F9 3D E2 C9 9D BE 01 43 00 00 00 00 00

….=…..C…..

000B0: 00 00 48 00 00 00 00 00 00 00 20 00 00 00 0E 00 ..H…….

000C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000E0: 73 00 73 00 73 00 2E 00 74 00 78 00 74 00 s.s.s…t.x.t.

Dabar gavome paketą iš kito kompiuterio. Matome kad siuntėjo ir gavėjo adresai susikeitė vietomis, kaip ir turėjo atsitikti. Tarpas tarp freimų sudarė 2

milisekundes. Freimo ilgis 238

baitai. Antras kompiuteris atsakė, kad failas atidarytas ir ivyks “bendradarbiavimas”

: “transact2 Open (response)”. IDP ilgis = 224(0xE0);

Trečias freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.623 KTML_NT_1 KTML_nt_3 SMB C NT |

|create & X, File = \sss.txt |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 96 FF FF

..l0I0..l(……

00010: 00 96 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55

……….l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 10 06 03 40

……l(…U…@

00030: 05 60 EC 00 66 00 00 00 66 00 FC 00 01 01 FF 53

.`..f…f……S

00040: 4D 42 A2 00 00 00 00 18 03 80 96 81 00 00 00 00

MB…………..

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 80 37 18 FF

………….7..

00060: 00 00 00 00 10 00 06 00 00 00 00 00 00 00 89 00

00070: 02 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00

00080: 00 00 01 00 00 00 44 00 00 00 02 00 00 00 03 13

……D………

00090: 00 00 5C 00 73 00 73 00 73 00 2E 00 74 00 78 00

..\.s.s.s…t.x.

000A0: 74 00 00 00 t…

Freimo ilgis 64 baitai; IDP ilgis = 150(0x96); Duomenų ilgis =

0x0096(150);

Po 4 milisekundžių mūsų kompiuteris vėl pasiuntė freimą atsakydamas į antrą freimą ir klausdamas informacijos ar failas sukurtas:

NT create & X, File = /sss.txt Freimo ilgis 164 baitai; IDP ilgis = 150

(0x96);

Ketvirtas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.624 KTML_nt_3 KTML_NT_1 SMB R NT create|

|& X, FID = 0x1805 |

00000: 00 C0 6C 28 92 05 00 C0 6C 30 49 30 00 98 FF FF

..l(….l0I0….

00010: 00 97 00 04 00 00 19 94 00 C0 6C 28 92 05 04 55

……….l(…U

00020: 00 00 19 94 00 C0 6C 30 49 30 04 55 10 06 05 60

……l0I0.U…`

00030: 03 40 FC 00 67 00 00 00 67 00 ED 00 F2 00 FF 53

.@..g…g……S

00040: 4D 42 A2 00 00 00 00 98 03 80 96 81 00 00 00 00

MB…………..

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 80 37 22 FF

………….7″.

00060: 00 67 00 02 05 18 01 00 00 00 80 35 A8 4D D7 9D

.g………5.M..

00070: BE 01 50 7D DD 7D 57 A3 BE 01 E0 F9 3D E2 C9 9D

..P}.}W…..=…

00080: BE 01 E0 F9 3D E2 C9 9D BE 01 20 00 00 00 48 00 ….=…..

…H.

00090: 00 00 00 00 00 00 43 00 00 00 00 00 00 00 00 00

……C………

000A0: 00 00 00 00 00 19 ……

Freimo ilgis = 166 baitai;Duomenų ilgis = 0x0098(152); IDP ilgis =

151(0x97);

File Allocation Size = 0x0000000000000048; End of File =

0x0000000000000043

Po 1 milisekundės kitas kompiuteris atsiuntė freimą ir pranešė, kad failas sukurtas:

“NT Create & X, FID=0x1805”.

Penktas freimas

|Time Src MAC Addr Dst MAC Addr Protoco l Description |

|1.626 KTML_NT_1 KTML_nt_3 SMB C |

|transact2 Query file info, FID = |

|0x1805 |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 78 FF FF

..l0I0..l(…x..

00010: 00 78 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55

.x……..l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 10 06 03 40

……l(…U…@

00030: 05 60 ED 00 48 00 00 00 48 00 FD 00 02 01 FF 53

.`..H…H……S

00040: 4D 42 32 00 00 00 00 18 03 80 96 81 00 00 00 00

MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 C0 37 0F 04

………….7..

Freimo ilgis = 134 baitai; Duomenų ilgis = 0x0078(120); IDP ilgis = 120

(0x78);

Dar po 2 milisekundžių mūsų kompiuteris dar kartą pasiuntė kadrą reikalaudamas informacijos apie failą:

“transact2 Query file info, FID = 0x1805”.

Šeštas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.627 KTML_nt_3 KTML_NT_1 SMB R |

|transact2 Open (response) |

00000: 00 C0 6C 28 92 05 00 C0 6C 30 49 30 00 92 FF FF

..l(….l0I0….

00010: 00 92 00 04 00 00 19 94 00 C0 6C 28 92 05 04 55

……….l(…U

00020: 00 00 19 94 00 C0 6C 30 49 30 04 55 10 06 05 60

……l0I0.U…`

00030: 03 40 FD 00 62 00 00 00 62 00 EE 00 F3 00 FF 53

.@..b…b……S

00040: 4D 42 32 00 00 00 00 98 03 80 96 81 00 00 00 00

MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 C0 37 0A 02

………….7..

00060: 00 26 00 00 00 02 00 38 00 00 00 26 00 3C 00 00

.&…..8…&.<..

00070: 00 00 00 2B 00 00 00 00 00 01 00 00 00 00 0E 00

00080: 00 00 43 00 00 00 00 00 00 00 48 00 00 00 00 00

..C…….H…..

00090: 00 00 3A 00 3A 00 24 00 44 00 41 00 54 00 41 00

..:.:.$.D.A.T.A.

Freimo ilgis =160 baitai; Duomenų ilgis=0x0092(146); IDP ilgis

=146(0x92);

Po 1 milisekundės kitas kompiuteris atsiuntė freimą ir pranešė, kad failas atidarytas:

“transact2 Open (response)”.

Septintas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.630 KTML_NT_1 KTML_nt_3 SMB C transact2|

|Query file info, FID = |

|0x1805 |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 78 FF FF

..l0I0..l(…x..

00010: 00 78 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55

.x……..l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 10 06 03 40

……l(…U…@

00030: 05 60 EE 00 48 00 00 00 48 00 FE 00 03 01 FF 53

.`..H…H……S

00040: 4D 42 32 00 00 00 00 18 03 80 96 81 00 00 00 00

MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 00 38 0F 04

………….8..

00060: 00 00 00 02 00 04 00 00 00 00 00 00 00 00 00 00

00070: 00 04 00 44 00 00 00 00 00 01 00 07 00 07 00 00

…D…………

00080: 00 00 05 18 03 01 ……

Freimo ilgis = 134 baitai; Duomenų ilgis = 0x0078(120); IDP

ilgis=120(0x78);

Dar po 3 milisekundžių mūsų kompiuteris dar kartą pasiuntė kadrą reikalaudamas informacijos apie failą:

“transact2 Query file info, FID = 0x1805”.

Aštuntas freimas

|Time Src MAC Addr Dst MAC Addr Protocol |

|Description |

|1.630 KTML_nt_3 KTML_NT_1 SMB R |

|transact2 Query file |

|info(response to frame 7) |

00000: 00 C0 6C 28 92 05 00 C0 6C 30 49 30 00 70 FF FF

..l(….l0I0.p..

00010: 00 70 00 04 00 00 19 94 00 C0 6C 28 92 05 04 55

.p……..l(…U

00020: 00 00 19 94 00 C0 6C 30 49 30 04 55 10 06 05 60

……l0I0.U…`

00030: 03 40 FE 00 40 00 00 00 40 00 EF 00 F4 00 FF 53

.@..@…@……S

00040: 4D 42 32 00 00 00 00 98 03 80 96 81 00 00 00 00

MB2………….

00050: 00 00 00 00 00 00 01 08 C0 F9 01 08 00 38 0A 02

………….8..

00060: 00 04 00 00 00 02 00 38 00 00 00 04 00 3C 00 00

…….8…..<..

00070: 00 00 00 09 00 00 00 00 00 01 00 00 00 00 …………..

Freimo ilgis = 126 baitai; Duomenų ilgis = 0x0070(112); IDP

ilgis=112(0x70);

Po 1 milisekundžių kompiuteris, iš kurio buvo kopijuojamas failas, perdavė informaciją apie kopijuojamą failą:

“transact2 Query file info (response to frame 7)”.

Devintas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.635 KTML_NT_1 KTML_nt_3 SMB C read & X, |

|FID = 0x1805, Read |

|0x43 at 0x00000000 |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 6C FF FF

..l0I0..l(…l..

00010: 00 6C 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55

.l……..l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 10 06 03 40

……l(…U…@

00030: 05 60 EF 00 3C 00 00 00 3C 00 FF 00 04 01 FF 53

.`..<…<……S

00040: 4D 42 2E 00 00 00 00 18 00 20 00 00 00 00 00 00 MB…….

00050: 00 00 00 00 00 00 01 08 FE CA 01 08 40 38 0C FF

…………@8..

00060: 00 00 00 05 18 00 00 00 00 43 00 43 00 FF FF FF

………C.C….

00070: FF 43 00 00 00 00 00 00 00 01 .C……..

Freimo ilgis = 122 baitai; Duomenų ilgis = 0x006C(108); IDP

ilgis=108(0x6C);

Mūsų kompiuteris paprašė atsiusti failo gabalą:

“read & X, FID = 0x1805, Read 0x43 at 0x00000000”.

Dešimtas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.636 KTML_nt_3 KTML_NT_1 SMB R read & |

|X, Read 0x43 |

00000: 00 C0 6C 28 92 05 00 C0 6C 30 49 30 00 B0 FF FF

..l(….l0I0….

00010: 00 AF 00 04 00 00 19 94 00 C0 6C 28 92 05 04 55

……….l(…U

00020: 00 00 19 94 00 C0 6C 30 49 30 04 55 10 06 05 60

……l0I0.U…`

00030: 03 40 FF 00 7F 00 00 00 7F 00 F0 00 F5 00 FF 53 .@………..S

00040: 4D 42 2E 00 00 00 00 98 00 20 00 00 00 00 00 00 MB…….

00050: 00 00 00 00 00 00 01 08 FE CA 01 08 40 38 0C FF

…………@8..

00060: 00 00 00 FF FF 00 00 00 00 43 00 3C 00 00 00 00

………C.<….

00070: 00 00 00 00 00 00 00 44 00 01 41 41 41 41 41 41

…….D..AAAAAA

00080: 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 0D

AAAAAAAAAAAAAAA.

00090: 0A 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42

.BBBBBBBBBBBBBBB

000A0: 42 42 42 42 42 42 0D 0A 43 43 43 43 43 43 43 43

BBBBBB..CCCCCCCC

000B0: 43 43 43 43 43 43 43 43 43 43 43 43 43 00 CCCCCCCCCCCCC.

Freimo ilgis = 134 baitai; Duomenų ilgis = 0x00130(176); IDP

ilgis=175(0xAF);

Kaip matome (paryškinta) buvo patenkintas reikalavimas ir mes gavome failo turinį.

“R read & X, Read 0x43”.

Venuoliktas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|1.917 KTML_NT_1 KTML_nt_3 NBIPX Session Data, |

|Ack, Recv Seq 0x100, |

|0x105 Bytes Received |

00000: 00 C0 6C 30 49 30 00 C0 6C 28 92 05 00 30 FF FF

..l0I0..l(…0..

00010: 00 30 00 04 00 00 19 94 00 C0 6C 30 49 30 04 55

.0……..l0I0.U

00020: 00 00 19 94 00 C0 6C 28 92 05 04 55 80 06 03 40

……l(…U…@

00030: 05 60 F0 00 00 00 00 00 00 00 00 01 05 01 .`…………

Freimo ilgis = 62 baitai; Duomenų ilgis = 0x0030(48); IDP ilgis=48(0x30);

Šis freimas labai trumpas(minimalus – 62 baitai) ir buvo pasiųstas po sąlyginai ilgo laiko tarpo

– 281 milisekundžių.

Dvyliktas freimas

|Time Src MAC Addr Dst MAC Addr Protocol Description |

|0.000 000000000000 000000000000 STATS Number of |

|Frames Captured = 11 |

00000: 00 00 00 00 00 00 00 00 00 00 00 00 00 6E AA AA

………….n..

00010: 03 00 00 00 19 84 24 4D 53 54 00 00 00 00 67 00

……$MST….g.

00020: 00 00 50 00 00 00 00 00 AB 0D 00 00 0B 00 00 00

..P………….

00030: D0 06 00 00 0B 00 00 00 78 06 00 00 1B 00 00 00

……..x…….

00040: 67 0B 00 00 01 00 00 00 0F 00 00 00 00 00 00 00

g……………

00050: 00 00 00 00 15 00 00 00 FF FF FF FF FF FF FF FF

00060: FF FF FF FF 00 00 00 00 FF FF FF FF FF FF FF FF

00070: 00 00 00 00 00 00 00 00 00 00 00 00 …………

Freimo ilgis =124 baitai; Duomenų ilgis = 0x006E(110);

Šis paskutinis freimas neįprastas. Jis neturi nei siuntėjo, nei gavėjo.

Be to jis sugautas po

4294965379 milisekunžių. Tai gali būti šiūkšlės.