Kuinka voimme lukea ja tulkita paketteja manuaalisesti oikein käyttämättä wiresharkia?
Nyt Ethernet-otsikosta Tiedän, että Kohde-MAC-osoitteen tulisi olla viiden tavun kohdalla (bittien / tavujen muuntamisen jälkeen). Joten näiden tietojen perusteella ajattelin, että se olisi 4a eteenpäin. Todellisuudessa se on ”s 00:17:f2:d0:4c:82
.
Sama pätee IP-lähdekohteeseen. Lähteen tulisi olla esimerkiksi 13-16 tavua. lukemien pitäisi olla 0800
eteenpäin. Mutta todellisuudessa se on päällä 0a 32 e7 85
, mutta en ymmärrä miksi? Olen vain hämmentynyt siitä, miten näitä tietoja tulkitaan oikein, tai ymmärrän ehkä yleisen otsikkorakenteen väärin.
https://ntquan87.wordpress.com/2015/08/17/reading-packet-hex-dumps-manually-no-wireshark/
vastaus
Oletan, että se, mitä näet, on tason 2 Ethernet-kehys ja siksi johdanto-osa puuttuu. Myös Ethernet-tarkistussumma näyttää puuttuvan. Tässä tapauksessa kaikki näyttää olevan linjassa (pakettityyppi Ethernet-kehyksen sisällä, IPv4-versio, IPv4-paketin pituus, pakettityyppi, ts. TCP, IP-paketin sisällä, …). Sitten luisit paketin kuten kuvassa.
TCP: n hyötykuorma on
474554202f20485454502f312e300d0a 557365722d4167656e743a2057676574 2f312e31312e340d0a4163636570743a 202a2f2a0d0a486f73743a207777772e 696574662e6f72670d0a436f6e6e6563 74696f6e3a204b6565702d416c697665 0d0a0d0a
ja dekoodaa:
GET / HTTP/1.0 User-Agent: Wget/1.11.4 Accept: */* Host: www.ietf.org Connection: Keep-Alive
mikä on sopusoinnussa sen kanssa, että kohdeportti on 80.
Kommentit
- Koska olin vahingossa vaihtanut tunnisteet lähteeksi ja kohteeksi. . Huononi. Olen päivittänyt kuvan. Tarkistussummaa ei ole, koska IPv4-otsikoiden mukaan IPv4-paketti on 152 tavua pitkä, ts. Se päättyy tarkalleen tietojesi loppuun. Voit helposti nähdä, että kaikki viimeiset tavut ovat osa hyötykuormasta niiden dekoodatulla versiolla (se ' s HTTP GET -pyyntö).
- En ' en tiedä, mistä ' saat nämä numerot. Ethernet-hyötykuorma (IPv4-paketti) alkaa 15. tavusta. Katso: fi .wikipedia.org / wiki / Ethernet_frame Pv4-paketti, sen pituus on 3. ja 4. tavu. Katso: fi.wikipedia.org/wiki/IPv4#Packet_structure . Siksi pituus on 0x0098 (heksadesimaaleina), eli 152 tavua. Tämä on koko IPv4-paketin pituus (kuvassa sininen ruutu).
- Ymmärsin, mistä ' saat numerot: luet väärällä tavalla lähettämäsi kaavion! Ethernet-kohdeosoitteen pituus ei ole 32 bittiä! Se ' s 48 bittiä = 6 tavua … kaaviossa " Kohde-MAC-osoite " -kenttä ei pääty toisen rivin loppuun, mutta jatkuu myös kolmannella rivillä (tyhjässä tilassa, kunnes " | " erotin). Sama pätee lähdeosoitteeseen (joka alkaa kolmannen rivin tyhjästä tilasta ja päättyy neljänteen riviin). Ehdotan, että käytettäisiin vähemmän sekava kaavio …
- En tiedä ' en tiedä miksi vastauksissa lähde- ja kohde-mac-osoitteet vaihdetaan. Se kuulostaa hyvältä kysymykseltä kenelle tahansa, joka antoi sinulle vastaukset … IP-paketin osalta en saa ' ymmärtää, miksi haluat poistaa IP-otsikkojen tarkistussumman ?? Kaavioistasi IP-paketissa on tarkalleen 12 tavua ennen " Lähdeosoite " -kenttää. Tämä vastaa tarkalleen kuvaani.
- Sovelluskerroksen protokolla on HTTP . Lippujen arvoksi on asetettu 000011000 binaarisena. Jos tarkastelet lippuluetteloa , ' huomaat, että viides ja kuudes lippu (vastaa sarjaa bittiä) ovat ACK ja PSH.