混雜模式介紹:
混雜模式就是接收所有經過網卡的數據包,包括不是發給本機的包,默認情況下網卡只把發給本機的包(包括廣播包)傳遞給上層程序,其它的包一律丟棄;簡單的講,混雜模式就是指網卡能接受所有通過它的數據流,不管是什么格式,什么地址,當網卡處於混雜模式時,該網卡就具有“廣播地址”,它對所有遇到的每一個數據幀都產生一個硬件中斷,以便提醒操作系統處理流經過該物理媒體上的每一個報文包。
網卡工作模式:
廣播模式(Broad Cast Model):它的物理地址是0Xffffff的幀為廣播幀,工作在廣播模式的網卡接受廣播幀。
多播傳送(MuliCast Model):多播傳送地址作為目的物理地址的幀可以被組內的其他主機同時接收,而組外主機卻接收不到。但是如果將網卡設置為多播傳送模式,它可以接收所有的多播傳送幀,而不論它是不是組內成員
直接模式(Derect Model):工作在直接模式下的網卡只能接收目的地址是自己的Mac地址的幀
混雜模式(Promiscuous Model):工作在混雜模式下的網卡接收所有的流過網卡的幀。
網卡默認的工作模式包含廣播模式和直接模式,也就是說,只接收廣播幀和發給自己的幀,如果改為混雜模式,一個站點的網卡將接受同一網絡內所有站點所發送的數據包,這樣就可以達到對於網絡信息監視捕獲的目的。
Linux下網卡混雜模式設置方法
開啟: ifconfig eth0 promisc 關閉: ifconfig eth0 -promisc