abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 4
    dnes 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 05:00 | Nová verze

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 7
    včera 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 4
    včera 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (44%)
     (21%)
     (4%)
     (6%)
     (3%)
     (1%)
     (1%)
     (19%)
    Celkem 299 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: PCAP subor zistit MAC Adresy

    22.9.2017 19:47 darren97 | skóre: 4
    PCAP subor zistit MAC Adresy
    Přečteno: 726×
    Ahojte, potreboval by som poradit, v kode ktory vypisuje packety potrebujem urcit mac adresy a dalsie info ako ci ide o HTTP,TFTP atd packet, potom IP adresy. Prvych 6 bajtov je destination MAC address a neviem ich dostat z data[i] postupne do premennej ether_dhost. Packety sa vypisuju, len potrebujem jednotlive casti packetov zaroven ukladat do premennych aby som aj vypisoval jednotlive info, ktore som uviedol. Kniznice vyuzivam klasika iostream, string, pcap atd. Skusal som konvertovat na string a kadeco, ale nic mi neslo. Vedeli by ste poradit??

    #define ETHER_ADDR_LEN 6 using namespace std; // typedef struct

    int main(int argc, char *argv[]) {

    string file = "...\\eth-7.pcap"; char errbuff[PCAP_ERRBUF_SIZE]; pcap_t *pcap = pcap_open_offline(file.c_str(), errbuff); struct pcap_pkthdr *header; const u_char *data; u_int packetCount = 0; u_char ether_dhost[ETHER_ADDR_LEN]; u_char ether_shost[ETHER_ADDR_LEN]; while (int returnValue = pcap_next_ex(pcap, &header, &data) >= 0) { printf("Packet # %i\n", ++packetCount); printf("Packet size: %d bytes\n", header->len);

    for (u_int i = 0; (i < header->caplen); i++) { if (i <= 5) { // tu potrebujem postupne ukladat bajty do ether_dhost } if ((i % 16) == 0) { printf("\n"); } printf("%.2x ", data[i]); } printf("\n\n"); } }

    Řešení dotazu:


    Odpovědi

    22.9.2017 19:51 darren97 | skóre: 4
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    Příloha:
    Ospravedlnujem sa, ale nepochopim, ako v nahlade vyzera vsetko dobre a potom to vsetko da dokopy.
    22.9.2017 21:41 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    Ak dobre rozumiem tak pcap súbor je
    {pcap_pkthdr}
    {data}
    {pcap_pkthdr}
    {data}
    ...
    v tom headri je dĺžka data bloku a v tom data bloku je to čo chodí po sieti. To znamená, že typicky ethernetnový rámec a interpretovať ho musíš podľa príslušného RFC (1042). Alebo wikipedie.
    Jendа avatar 22.9.2017 21:58 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    3) Odsazení!!!
    22.9.2017 20:15 NN
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    'pcap' je soubor, ktery si muzes normalne otevrit/zobrazit v programu Wireshark, nebo tcpdump..
    22.9.2017 20:16 NN
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    Mimochodem 'pcap' = "Packet CAPture"
    22.9.2017 20:19 darren97 | skóre: 4
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    to viem, ved z wiresharku mam ten pcap subor, ale chcem mat kod aby som analyzoval
    Řešení 1× (darren97 (tazatel))
    Jendа avatar 22.9.2017 21:56 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: PCAP subor zistit MAC Adresy
    1) Chybí ti tam hlavičky a link options, typicky je dobré lidem od kterých chceš radu dodat hotový zkompilovatelný příklad.

    2) Nechápu v čem je problém, prostě si zkopíruješ prvních 6 bajtů z pole data. Třeba memcpy(ether_dhost, (uint8_t*)data, ETHER_ADDR_LEN);.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.