A nyers socket egy alkalmazásprogramozási felület (API), egyfajta Berkeley socket , amely lehetővé teszi a TCP / IP-csomagok összegyűjtését a fejléc minden bitjének vezérlésével és a nem szabványos csomagok hálózatba küldésével.
Socket létrehozása. C kód
int i32SocketFD = socket ( PF_INET , SOCK_RAW , IPPROTO_RAW );C kód a Windows operációs rendszerben
wSocket = WSASocket ( AF_INET , SOCK_RAW , IPPROTO_RAW , NULL , 0 , 0 );Minden egyes esetben ellenőrizni kell, hogy az operációs rendszer támogatja-e a nyers socketeket. A hozzávetőleges támogatást a táblázat mutatja:
OS | nyers aljzattámasz |
---|---|
95, 98, 98SE | nem támogatja a nyers socketeket (korlátozott támogatás a nyers socketekhez az ICMP protokollhoz); |
NT4.0 | a nyers aljzatok 10 percenként 10 bejövő kapcsolatra korlátozódnak (a beállításjegyzékben rögzíthető); |
W2K | teljes mértékben támogatja a nyers aljzatokat; |
XP SP nélkül | teljes mértékben támogatja a nyers socketeket a tűzfal leállása után ("net stop shareaccess"); |
XP SP1 MS05-019 javítás nélkül | támogatja a nyers socketeket, mint az SP nélküli XP-t; |
XP SP1 MS05-019 javítással | blokkolja a kimenő nyers TCP socketeket, ha a tűzfal fut |
XP SP2 MS05-019 nélkül | teljes mértékben támogatja a bejövő nyers aljzatokat és részben a kimenőt; |
XP SP2 , MS05-019 | teljes mértékben támogatja a bejövő nyers aljzatokat és néhány kimenőt; |
Távlat | nem támogatja a nyers socketeket (korlátozott támogatás a nyers socketekhez az ICMP protokollhoz); |
Windows 7 | a nyers aljzatok korlátozott támogatása; |
Szerver 2003 | teljes mértékben támogatja a nyers socketeket a tűzfalleállás után ("net stop alg"); |
Szerver 2008 |
teljes mértékben támogatja a nyers socketeket a tűzfalleállás után ("net stop alg"); |
Mac OS X | teljes mértékben támogatja a nyers aljzatokat; |
Linux | teljes mértékben támogatja a nyers aljzatokat; |
xBSD | teljes mértékben támogatja a nyers aljzatokat; |