Flex

Zadanie polega na stworzeniu skanera do analizy logów w formacie tcpdump (tcpdump manual).

Skaner ma wypisywać informację o tym jakie strony www odwiedzał użytkownik.

10:13:24.400314 IP GRAF2.1377 > 216.239.59.104.80: S 1048304281:1048304281(0) w...
10:13:24.456464 IP 216.239.59.104.80 > GRAF2.1377: S 1981174880:1981174880(0) a...
10:13:24.456835 IP GRAF2.1377 > 216.239.59.104.80: . ack 1 win 65535
10:13:24.457454 IP GRAF2.1377 > 216.239.59.104.80: P 1:410(409) ack 1 win 65535...
10:13:25.088632 IP wind.icsr.agh.edu.pl.137 > 149.156.99.185.137: UDP, length: ...
10:13:26.596436 IP GRAF2.1378 > arax.uci.agh.edu.pl.80: S 3076937488:3076937488...
10:13:26.597366 IP arax.uci.agh.edu.pl.80 > GRAF2.1378: S 1164017957:1164017957...
10:13:26.597706 IP GRAF2.1378 > arax.uci.agh.edu.pl.80: . ack 1 win 65535
10:13:26.598407 IP GRAF2.1378 > arax.uci.agh.edu.pl.80: P 1:380(379) ack 1 win ...

ma dawać na wyjściu:

216.239.59.104
arax.uci.agh.edu.pl

Linie w nieprawidłowym formacie powinny być pominięte.

W zadaniu należy wykorzystać generator skanerów flex (flex manual)

Przyładowy log tcpdump: log-tcpdump

Inne materiały

monitoring with tcpdump
tools: tcpdump
Lex - A Lexical Analyzer Generator, M. E. Lesk