混雜模式就是接收所有經過網絡卡的資料報,包括不是發給本機的包,即不驗證mac位址。普通模式下網絡卡只接收發給本機的包(包括廣播包)傳遞給上層程式,其它的包一律丟棄。
一般來說,混雜模式不會影響網絡卡的正常工作,多在網路監聽工具上使用。
網絡卡具有如下的幾種工作模式:
1) 廣播模式(broad cast model):它的實體地址(mac)位址是 0xffffff 的幀為廣播幀,工作在廣播模式的網絡卡接收廣播幀。
2)多播傳送(multicast model):多播傳送位址作為目的實體地址的幀可以被組內的其它主機同時接收,而組外主機卻接收不到。但是,如果將網絡卡設定為多播傳送模式,它可以接收所有的多播傳送幀,而不論它是不是組內成員。
3)直接模式(direct model):工作在直接模式下的網絡卡只接收目位址是自己 mac位址的幀。
4)混雜模式(promiscuous model):工作在混雜模式下的網絡卡接收所有的流過網絡卡的幀,信包捕獲程式就是在這種模式下執行的。
網絡卡的預設工作模式包含廣播模式和直接模式,即它只接收廣播幀和發給自己的幀。如果採用混雜模式,乙個站點的網絡卡將接受同一網路內所有站點所傳送的資料報這樣就可以到達對於網路資訊監視捕獲的目的。
1,未設定支援promisc
[root@bogon libpcap-1.3.0]# ifconfig eth0
eth0: flags=4163mtu 1500
inet 192.168.1.18 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::20c:29ff:fe90:90e9 prefixlen 64 scopeid 0x20
ether 00:0c:29:90:90:e9 txqueuelen 1000 (ethernet)
rx packets 1529593 bytes 116632252 (111.2 mib)
rx errors 0 dropped 13 overruns 0 frame 0
tx packets 260 bytes 57720 (56.3 kib)
tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0
2,設定支援promisc
[root@bogon libpcap-1.3.0]# ifconfig eth0 promisc
3,已設定支援promisc
[root@bogon libpcap-1.3.0]# ifconfig eth0
eth0: flags=4419mtu 1500
inet 192.168.1.18 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::20c:29ff:fe90:90e9 prefixlen 64 scopeid 0x20
ether 00:0c:29:90:90:e9 txqueuelen 1000 (ethernet)
rx packets 1534849 bytes 117018556 (111.5 mib)
rx errors 0 dropped 14 overruns 0 frame 0
tx packets 262 bytes 58237 (56.8 kib)
tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0
4,設定不支援promisc
[root@bogon libpcap-1.3.0]# ifconfig eth0 -promisc
linux網絡卡混雜模式
1 網絡卡混雜模式promiscuous與linux上混雜模式的設定 2 linux下使用socket進行網絡卡抓包 1 3 linux下使用混雜模式抓包 2 4 linux下發包 3 混雜模式就是接收所有經過網絡卡的資料報,包括不是發給本機的包,即不驗證mac位址。普通模式下網絡卡只接收發給本機的...
linux網絡卡混雜模式和監聽模式
混雜模式 promiscuous mode 是電腦網路中的術語。是指一台機器的網絡卡能夠接收所有經過它的資料流,而不論其目的位址是否是它。一般計算機網絡卡都工作在非混雜模式下,此時網絡卡只接受來自網路埠的目的位址指向自己的資料。當網絡卡工作在混雜模式下時,網絡卡將來自介面的所有資料都捕獲並交給相應的...
設定網絡卡混雜模式
關鍵api ioctlsocket 設定雜收模式 巨集 define sio rcvall 0x80000000 0x18000000 1 ip頭 typedef struct ipheader ipheader tcp頭 typedef struct tcpheader tcpheader 流程 ...