TRNG I HC KHOA HC T NHIÊN
KHOA CÔNG NGH THÔNG TIN
MÔN CÔNG NGH PHN MM
GIANG QUC MINH – H PHM THÁI VINH
XÂY DNG NG NG BT GÓI TIN CHO
VIC PHÂN TÍCH THÔNG TIN NG PHC
QUN LÝ
KHOÁ LUN C NHÂN TIN HC
TP. HCM, M 2005
TRNG I HC KHOA HC T NHIÊN
KHOA CÔNG NGH THÔNG TIN
MÔN CÔNG NGH PHN MM
GIANG QUC MINH - 0112016
H PHM THÁI VINH - 0112081
XÂY DNG NG NG BT GÓI TIN CHO
VIC PHÂN TÍCH THÔNG TIN NG PHC
QUN LÝ
KHÓA LUN C NHÂN TIN HC
GIÁO VIÊN HNG DN
GVC CAO NG TÂN
NIÊN KHÓA 2001 – 2005
NHN XÉT A GIÁO VIÊN HNG DN
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Tp.HCM, ngày…..tháng….nm 2005
NHN XÉT A GIÁO VIÊN PHN BIN
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Tp.HCM, ngày…..tháng….nm 2005
LI CÁM N
Chúng em xin chân thành cám n Ban giám hiu, quý Thy cô a
trng i Hc Khoa Hc T Nhiên TP. H Chí Minh, c bit là các Thy
cô trong Khoa Công ngh Thông tin ã tn tình ging y, trang cho chúng
em nhng kin thc cn thit, b ích trong sut nhng nm c tp i trng.
Chúng em xin chân thành m n Thy Cao ng Tân, ngi Thy ã
tn tình quan tâm hng dn, giúp chúng em trong sut thi gian làm lun
n này.
Chúng con xin gi lòng bit n sâu sc và s kính trng n ông bà, cha
, cùng toàn th gia ình, nhng ngi ã nuôi y chúng con trng thành
nh ngày hôm nay.
Chúng tôi xin chân thành cám n s giúp , ng viên, nhn xét, óng
góp ý kin ca các anh ch, n bè trong quá trình thc hin lun vn này.
TP. H Chí Minh, 7/2005
Nhóm sinh viên thc hin
Giang Quc Minh – H Phm Thái Vinh
B CC A LUN VN
Lun vn gm có 3 phn và 7 chng
PHN 1: TNG QUAN
Chng 1 Gii thiu v tài
PHN 2: TÌM HIU CÁC VN LP TRÌNH. Phn này gii thiu
các vn lp trình c n nht xây dng 1ng ng có kh ng bt
các gói tin và cho phép ngi dùng có th iu khin t xa qua môi
trng ng.
Chng 2. Tìm hiu th vin lp trình mng cp thp libpcap, ây là
“trái tim” a hu ht các ng ng bt gói tin mã ngun m hin nay.
Chngg 3. Gii thiu MySQL, mt h qun tr s d liu tm trung
c s dng ph bin nht hin nay.
Chng 4. Tìm hiu thut lp trình socket vit các ng ng trên
môi trng ng
Phn 3 Xây ng ng ng PacketCap. Phn này s dng các kin
thc ã tìm hiu chng 2, 3, 4 xây dng mt ng ng bt gói tin,
u các kt qu bt c vào c s d liu phân tích các thông tin
ng.
Chng 5. Phân tích, thit kng ng PacketCap
Chng 6. Cài t và th nghim PacketCap
Chng 7. Tng kt. Chng này trình bày nhng kt qu t c,
nhng n ch và hng phát trin PacketCap trong tng lai.
Các danh c
11
MC C
DANH SÁCH HÌNH.................................................................................... 14
DANH SÁCH NG .................................................................................. 15
PHN 1: TNG QUAN .............................................................................. 16
Chng 1: Gii thiu tài..........................................................................17
1.1. t vn .......................................................................................... 17
1.2. Gii thiu tài.................................................................................. 18
1.3. Yêu cu a tài.............................................................................. 19
PHN 2: TÌM HIU CÁC VN LP TRÌNH ...................................... 20
Chng 2 : Th vin lp trình ng libpcap ................................................21
2.1. Gii thiu libpcap............................................................................... 21
2.2. Cài t th vin libpcap ..................................................................... 21
3.3. Các bc xây dng chng trình s dng libpcap.............................. 22
3.4. Chi tit các bc ................................................................................ 23
3.4.1. Chn Interface( card ng) ......................................................... 23
3.4.2. M device lng nghe( sniff) d liu......................................... 24
3.4.3. c traffic.................................................................................... 25
Chng 3: H qun tr s d liu MySQL............................................... 34
3.1. Gii thiu v MySQL.........................................................................34
3.2. Cài t MySQL.................................................................................. 34
3.2.1. Cài t MySQL t các gói nh phân............................................ 34
3.2.2. Cài t t mã ngun..................................................................... 35
3.3. S dng MySQL................................................................................ 36
3.3.1. Lnh mysql.................................................................................. 36
3.3.2. Lnh mysqladmin ........................................................................36
3.3.3. Lnh mysqlshow..........................................................................36
3.3.4. Lnh grant.................................................................................... 37
3.3.5. Lnh Revoke................................................................................ 38
3.3.6. Ví d v to mt c s d liu ..................................................... 38
3.4. Lp trình MySQL trên ngôn ng C .................................................... 38
4.4.1 mysql_init..................................................................................... 38
3.4.2 mysql_real_connection ................................................................. 39
3.4.3 mysql_query.................................................................................40
3.4.4. mysql_affected_rows...................................................................40
3.4.5. mysql_store_result....................................................................... 40
3.4.6. mysql_fetch_row ......................................................................... 40
3.4.7. mysql_row_seek .......................................................................... 41
3.4.8. mysql_free_result ........................................................................ 41
Các danh c
12
Chng 4: Lp trình socket..........................................................................42
4.1. Gii thiu v lp trình socket ............................................................. 42
4.2. Nguyên lý hot ng a socket......................................................... 42
4.3. Lp trình vi socket ........................................................................... 44
4.3.1. Các thuc tính a socket............................................................. 44
4.3.1.1. Vùng( domain) ...................................................................... 44
5.3.1.2. Kiu socket(type)................................................................... 46
4.3.1.3. Giao thc a socket( protocol)............................................. 47
4.3.2. o socket.................................................................................... 48
4.3.3. nh a ch cho socket................................................................ 49
4.3.4. t tên cho socket........................................................................ 51
4.3.5. o hàng i cho socket .............................................................. 52
4.3.6. Ch và chp nhn kt ni............................................................. 53
4.3.7. Yêu cu kt ni............................................................................ 54
4.3.8. óng kt ni ................................................................................ 55
4.3.9. Giao tip bng socket...................................................................56
4.4. S dng socket trong ng ng minh a....................................... 58
PHN 3: XÂY DNG NG NG TH NGHIM PACKETCAP ......... 59
Chng 5: Phân tích và thit k PacketCap.................................................. 60
5.1. Kho sát hin trng ............................................................................60
5.2. Phân tích và xác nh yêu cu ............................................................ 61
5.2.1. Phân tích...................................................................................... 61
5.2.2. Xác nh yêu cu ......................................................................... 61
5.3. Các hng xây dng ng ng PacketCap......................................... 63
5.3.1. Phân tích hng phát trin da trên Ethereal................................ 63
5.3.2. Phân tích hng phát trin da trên libcap................................... 64
5.3.3. La chn hng phát trin PacketCap ......................................... 64
5.4. Các thành phn PacketCap.................................................................65
5.5. Xây dng mô hình use case................................................................ 66
5.5.1. Xác nh Actor và use case.......................................................... 66
5.5.2. Mô hình use case ......................................................................... 66
5.6. t use case.................................................................................... 67
5.6.1. Connect........................................................................................ 67
5.6.2. StartCapture................................................................................. 68
5.6.3. StopCapture................................................................................. 69
5.6.4. GetFilter....................................................................................... 70
5.6.5. Terminate..................................................................................... 71
Các danh c
13
5.7.Thit k d liu................................................................................... 72
5.7.1. Phân tích các hng lu tr ......................................................... 72
5.7.2. Thit k s liu...................................................................75
5.7.2.1. Danh sách các i tng (table)............................................. 75
5.7.2.2 Table PACKET ......................................................................75
6.7.2.4. Table IP................................................................................. 76
5.7.2.5. Table TCP ............................................................................. 76
5.7.2.6. Table UDP............................................................................. 77
5.7.2.7 Table ICMP............................................................................ 77
5.7.2.8 Table IGMP............................................................................ 78
5.7.2.9. Table ARP............................................................................. 80
5.8. Xây dng PCServer( server), PCManager(client)............................... 81
5.8.1. Lu PCServer .........................................................................81
5.8.2. Lu PCManager( Client)......................................................... 82
5.8.3. Cu trúc d liu trao i gia PCServer và PCManager............... 83
5.9.Thit k giao din PCManager( phiên n chy trên Windows).......... 85
Chng 6: Cài t và th nghim................................................................. 87
6.1. Cài t................................................................................................ 87
6.2. Th nghim........................................................................................ 88
6.2.1. Mô hình th nghim 1..................................................................88
6.2.2. Mô hình th nghim 2..................................................................89
6.2.3. Mô hình th nghim 3..................................................................90
Chng 7: Tng kt .....................................................................................91
7.1. Kt lun.............................................................................................. 91
7.1.1. Kt qu t c.......................................................................... 91
7.1.2. n ch........................................................................................ 91
7.2. Hng phát trin................................................................................ 92
PH LC Hng dn s dng PacketCap................................................... 93
1.Chng trình PCServer..........................................................................93
2. Chng trình PCManager..................................................................... 93
2.1. PCManager trên môi trng Linux ................................................. 93
2.2. PCManager trên môi trng Windows............................................ 94
TÀI LIU THAM KHO............................................................................ 95
Các danh c
14
DANH SÁCH HÌNH
Hình 5-1 Các thành phn a PacketCap...................................................... 65
Hình 5-2 Mô hình use case...........................................................................66
Hình 5-3 Mô hình lu tr 1 .......................................................................... 72
Hình 5-4 Mô hình lu tr 2 .......................................................................... 73
Hình 5-5 Mô hình lu tr 3 .......................................................................... 74
Hình 5-6 Lu PCServer........................................................................... 81
Hình 5-7 Lu PCManager ....................................................................... 82
Hình 6-1 Mô hình th nghim 1................................................................... 88
Hình 6-2 Mô hình th nghim 2................................................................... 89
Hình 6-3 Mô hình th nghim 3................................................................... 90
Các danh c
15
DANH SÁCH NG
ng 4-1 Các giá tr ca domain ..................................................................48
ng 4-2 Các mã li a hàm bind() ............................................................ 51
ng 4-3 Các mã li a domain AF_UNIX ................................................52
ng 4-4 Mã li a hàm connect().............................................................. 55
ng 5-1 Xác nh yêu cu........................................................................... 62
ng 5-2 Danh sách các i tng............................................................... 75
ng 5-3 Table PACKET............................................................................. 75
ng 5-4 Table IP ........................................................................................ 76
ng 5-5 Table TCP..................................................................................... 76
ng 5-6 Table UDP.................................................................................... 77
ng 5-7 Table ICMP .................................................................................. 77
ng 5-8 Table IGMP..................................................................................78
ng 5-9 Table ARP ....................................................................................80
ng 5-10 Mô màn hình PCManager ....................................................... 86
Phn 1: Tng quan
16
PHN 1: TNG QUAN
Chng 1. Gii thiu tài
Chng 1: Gii thiu tài
17
Chng 1: Gii thiu tài
1.1. t vn
Ngày nay công ngh thông tin nói chung và Intenet nói riêng ngày càng
phát trin nh và tr thành không th thiu trong cuc sng chúng ta.
Xut phát t nhu cu trao i thông tin ngày càng nhanh và nhiu gia
các doanh nghip, các t chc và công ty trong nn kinh t th trng hôm
nay, s lng các doanh nghip thit lp các h thng mng và kt ni Intenet
ngày càng nhiu.
Vic Công ngh thông tin và mng Intenet phát trin và ngày càng nhiu
các thông tin quan trng c trao i trên mng làm ny sinh mt s vn
quan trng là bo mt thông tin trên mng tránh rò r hay ngn không cho
truy cp vào các d liu không cho phép gây thit hi kinh t, qun lý bng
thông tng kh nng áp ng thông tin, giao dch vi khách hàng ng thi
tránh c tình trng nghn mch lu thông trên mng.
Vic phân tích lu lng mng òi hi nng lc tính toán rt ln, vì vy
mun làm c vic này cn phi trang b các siêu máy tính thc hin bài
toán này. Trong u kin kinh t nc ta thì không th trang b nhng h
thng này c vì chúng quá t .
Chng 1: Gii thiu tài
18
y gii pháp nào gii quyt bài toán này ?
• Grid Computing là h thng tính toán song song và phân tán
cho phép chúng ta thc hin nhng bài toán ln da trên các
thng nh gm nhiu máy tính c ni mng vi nhau.
• Hin nay chúng ta li có rt nhiu h thng máy tính ni
ng nhng cha s dng c ht kh nng tính toán ca
chúng.
• i s lng các máy tính ln thì vic trin khai Grid
Computing s cho chúng ta mt h thng tính toán cc kì
nh gp nhiu ln 1 siêu máy tính ( lúc ó các siêu máy tính
có th ch là mt node trong h thng Grid Computing).
i nhng u m trên chúng tôi chn tài “ng dng th nghim
Grid Computing trong vic phân tích thông tin mng phc v qun lý”.
1.2. Gii thiu tài
tài “ng ng th nghim Grid Computing trong vic phân tích
thông tin ng phc qun lý” là mt ln gm 2 nhóm thc hin.
Nhóm th 1 xây dng ng dng phân tán trên mng cho phép thit lp t
xa ch lc và bt các gói tin, trích lc và lu vào các c s d liu trên
ng phc cho vic theo dõi và phân tích thông tin ng (Phn I).
Nhóm th 2 tìm hiu Grid Computing và xây dng ng ng phân
tích hin trng ca mng da trên thông tin t s d liu do nhóm th 1
xây dng (Phn II).
Chng 1: Gii thiu tài
19
1.3. Yêu cu a tài
• Xây dng ng dng phân tán th nghim cho phép bt các gói tin
dùng phân tích thông tin ng phc qun lý.
• Các gói tin sau khi bt, c trích thông tin và lu vào các c s d
liu phân tán trên mng theo nhu cu ca ngi qun tr.
• thng cho phép cu hình ng dng t xa.
• H tr u kt qu bt c theo nh ng a các ng ng bt
gói tin khác nh Ethereal, TCPDump...
Phn 2: Tìm hiu các vn lp trình
20
PHN 2: TÌM HIU CÁC VN LP TRÌNH
Chng 2. Th vin lp trình ng libpcap
Chng 3. H qun tr s d liu MySQL
Chng 4. Lp trình socket
Chng 2: Th vin lp trình ng libpcap
21
Chng 2 : Th vin lp trình ng libpcap
2.1. Gii thiu libpcap
Libpcap là mt th vin mã ngun m tr lp trình ng cp thp,
cho phép bt các gói tin trên ng truyn theo nhiu hng khác nhau, cho
phép phân tích các frame va tìm c.
Th vin libcap c s dng rng rãi trong các phn mm sniffer
packet. Các phn mm s dng libcap ph bin là TCPdump, TCPflow.
Hin nay phiên n mi nht a libpcap là 0.9.1.
2.2. Cài t th vin libpcap
Chng trình ngun ca libpcap có th download a ch
www.tcpdump.org , các phiên n mi nht a libpcap u có a ch này.
Gi s bn i v gói libpcap-0.8.3.tar.tar, tinhànhcài t:
• Gii nén gói tar
tar –xzvf libpcap-0.8.3.tar.tar
• Chuyn vào th mc libpcap
cd libpcap-0.8.3
• gõ lnh ./configure
• Gõ lnh make
• Gõ lnh make install
Nu không có li gì xy ra thì quá trình cài t ã hoàn tt.
Chng 2: Th vin lp trình ng libpcap
22
3.3. Các bc xây dng chng trình s dng libpcap
Có 5 bc chính trong vic s dng th vin libpcap
• c 1: Xác nh interface (card ng) mà ta mun bt frame vào
(Trong Linux, interface thng là eth0,eth1…..Ta có th dùng các
hàm pcap_lookupdev() ca th vin libpcap ly tt c các
inteface.
• c 2: Khi to pcap. Cung cp cho pcap bit interface nào trong
các interface ã ly v bc trên sc chn sniff.
• c 3: Lc frame .pcap cho chúng ta c ch chn la khi lc các
frame khi bt (ví d ch bt frame TCP/IP có source IP
192.168.8.8 và port 23 …). ta phi to ra filter ri biên ch filter
này báo cho pcap bit b lc nó s dùng.
• c 4: Pcap thc thi vic sniff frames.
• c 5: óng phiên làm vic và kt thúc ng dng
Trên ây là qui trình tng quát cách libpcap bt gói tin trong ó bc 3
là tùy chn có th có hoc không.
Chng 2: Th vin lp trình ng libpcap
23
3.4. Chi tit các bc
3.4.1. Chn Interface( card ng)
Có 3 cách thit lp devices sniff các frames d liu
• Cách 1 : Cho ngi dùng nhp tên thit b t dòng lnh
#include <stdio.h>
#include <pcap.h>
int main(int argc , char* argv[])
{
Char * dev = argv[1]
Printf(Devices : %s \n,dev);
}
Trong ó argv[1] là tham s dòng lnh u tiên
• Cách 2 : S dng hàm pcap_lookupdev() ca libpcap tìm
kim các interface tn i trên máy tính.
#include <stdio.h>
#include <pcap.h>
int main(int argc , char* argv[])
{
Char* dev,errbuf[PCAP_ERRBUF_SIZE]
dev = pcap_lookupdev(errbuf);
if(dev == NULL)
{
printf("%s\n",errbuf);
exit(1);
}
printf("DEV: %s\n",dev);
}
Chng 2: Th vin lp trình ng libpcap
24
Trong trng hp này, pcap t tìm ra thit b. errbuf là chui cha
thông báo li nu có.
• Cách 3 : Dùng hàm pcap_findalldevs tìm tt c thit b sau ó
a vào mt mng
#include <stdio.h>
#include <pcap.h>
int main(int argc , char* argv[])
{
pcap_if_t *devlist;
char devname[10][100];
Char* dev,errbuf[PCAP_ERRBUF_SIZE]
int devcount=0;
retvalue=pcap_findalldevs(&devlist,err);
if(retvalue==-1 || devlist==NULL)
return 0;
for(d=devlist,i=0; d && i<10 ;d=d->next,i++)
sprintf(devname[i],"%s",d->name);
devcount=i;
}
3.4.2. M device lng nghe( sniff) d liu
Khi to phiên làm vic cho các thit b s dng hàm
pcap_open_live(). Cu trúc hàm này nh sau :
pcap_t *pcap_open_lives(
char* device,int snaplen,int promisc,int yo_ms,char *ebuf)
Tham s:
• device là thit bã c nh ngha trên
Chng 2: Th vin lp trình ng libpcap
25
• snaplen cho bit s byte ln nht mà pcap có th bt frames
• promisc nu t bng 1 thì interface s hot ng trong ch
promiscuos mode. ây là ch libpcap s sniff tt c các frame
trên dây dn. Nu t bng 0 thì interface s hot ng ch
non promiscuos mode, trong ch này,pcap ch sniff nhng
frame gi n máy.
Pcap_t *descr
descr = pcap_open_live(dev,BUFSIZ,0,-1,errbuf);
if(descr == NULL)
{
printf("pcap_open_live(): %s\n",errbuf);
exit(1);
}
Dev là nh danh thit b.
3.4.3. c traffic
Trong trng hp không bt tt c các gói tin mà ch bt các gói tin
theo mt yêu cu nào ó ta thì s dng pcap_compile() pcap_setfilter()
có cu trúc nh sau:
int pcap_compile(pcap_t *p, struct bpf_program *ft, char *str,
int optimize, bpf_u_int32 netmask )
Tham su tiên là handle ca phiên làm vic (pcap_t). Tham s
th hai là tham s ch n ni lu compile version ca filter. str là
chui mô t cho filter bit nhng gói tin cn bt. Kn là s nguyên
cho bit str là opyimize hay không (1 là true, 0 là false). Cui cùng là
netmask ca ng mng.
Chng 2: Th vin lp trình ng libpcap
26
int pcap_setfilter(pcap_t *p,struct_bpf_program *fp)
Tham s th nht là handle qun lý phiên làm vic. Tham s th hai
là tham chiu chn compile version ca filter (ã c nh ngha
trong pcap_compile())
nh dng str mô t cho filter:
• Filter theo source ip
Ví d ," src net 172.168.8.8 "
• Filter theo dest ip :
Ví d ," dst net 172.168.8.8 "
• Filter theo source và dest ip
Ví d ," src and dst net 172.168.8.8 "
• Filter theo source hay dest ip
Ví d ," src or dst net 172.168.8.8 "
• Filter theo source port :
Ví d ," src port 23 "
• Filter theo dest port :
Ví d ," dst port 23 "
• Filter theo source và dest port
Ví d ," src and dst port 23 "
• Filter theo source hay dest port
Ví d ," src or dst port 172.168.8.8 "
Chng 2: Th vin lp trình ng libpcap
27
• Filter theo protocal
Ví d ," tcp "
• Ngoài ra còn có th filter tng hp :
Ví d ," dst net 172.168.8.8 and src port 23 tcp"
Ví d v filter n gin
#include <pcap.h>
.
char *dev;
char errbuf[PCAP_ERRBUF_SIZE];
pcap_t* descr;
const u_char *packet;
struct pcap_pkthdr hdr; /* pcap.h */
struct bpf_program fp; /* hold compiled program */
bpf_u_int32 maskp; /* subnet mask */
bpf_u_int32 netp; /* ip */
dev = pcap_lookupdev(errbuf);
if(dev == NULL)
{
fprintf(stderr,"%s\n",errbuf);
exit(1);
}
descr = pcap_open_live(dev,BUFSIZ,1,-1,errbuf);
if(descr == NULL)
{
printf("pcap_open_live(): %s\n",errbuf);
exit(1);
}
Chng 2: Th vin lp trình ng libpcap
28
if(pcap_compile(descr,&fp, port 23 ,0,netp) == -1)
{
fprintf(stderr,"Error calling pcap_compile\n");
exit(1);
}
pcap_setfilter(descr,&fp)
Quá trình bt frame tht s :
ây ta nh ngha mt thit b mt thit b chun b sniff frame
(thit lp filter nu cn). Có 2 k thut chính c dùng trong vic sniff
frame. Chúng ta có th bt frame và a vào vòng lp ch x lý. u
tiên ta xem cách bt frame s dng hàm pcap_next ca libpcap.
Hàm này có cu trúc sau :
u_char *pcap_next(pcap_t *p,struct pcap_hkthdr *h )
Tham su tiên là handle qun lý phiên làm vic. Tham s th
hai là pointer chn cu trúc lu gi thông tin chung v frame ( thi
gian bt, chiu dài frame …). pcap_next tr v mt con tr có dng
u_char trn frame c mô t bi cu trúc này
struct pcap_pkthdr
{
struct timeval ts; time stamp
bpf_u_int32 caplen; length of portion present
bpf_u_int32; lebgth this packet (off wire)
}
Chng 2: Th vin lp trình ng libpcap
29
Ví d v sniff frame s dng cu trúc này
#include <stdio.h>
#include <stdlib.h>
#include <pcap.h>
#include <errno.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netinet/if_ether.h>
int main(int argc, char **argv)
{
int i;
char *dev;
char errbuf[PCAP_ERRBUF_SIZE];
pcap_t* descr;
const u_char *packet;
struct pcap_pkthdr hdr; /* pcap.h */
struct ether_header *eptr; /* net/ethernet.h */
u_char *ptr; /* printing out hardware header info */
dev = pcap_lookupdev(errbuf);
if(dev == NULL)
{
printf("%s\n",errbuf);
exit(1);
}
printf("DEV: %s\n",dev);
descr = pcap_open_live(dev,BUFSIZ,0,-1,errbuf);