Hi everybody!!
I'm studding at the university raw sockets, but i can't find a good place to read about them...
Does anybody now where i can find some information???
I've been goggling a lot but couldn't find nothing useful, just man pages...
I recommend Stevens classic "Unix Network Programming: Volume 1, the sockets networking API" (3rd edition) that has a chapter about raw socket and datalink: chap 27 und 28 pp 735-816.
You may also study the source of programs link ping, traceroute etc. that use raw socket.
RAW Sockets aren't a difficult thing, but you'll need deep knowledge of TCP/IP stack protocols, and practice with socket programming.
I recommend you to read a very short book named "TCP/IP Sockets in C: Practical Guide for Programmers - Michael J. Donahoo, Kenneth L. Calvert", it's not about raw sockets, but TCP/IP sockets.
Then, when you feel comfortable with the socket calls, options, and types, here is a GREAT text about raw socket programming with examples and source code, which talks about TCP/UDP/IP/ICMP, and how to calculate headers checksums:
Oh, right, for the TCP/IP "theory" part, i recommend you the following books:
The TCP/IP Guide: A comprehensive, illustrated Internet Protocols Reference - Charles M. Kozierok
TCP/IP Clearly explained 4th edition - Pete Loshin
TCP/IP Illustrated, Volume 2: The Implementation - Gary R. Wright, W. Richard Stevens
And of course, UNIX� Network Programming Volume 1, Third Edition: The Sockets Networking API - W. Richard Stevens, Bill Fenner, Andrew M. Rudoff
Best regards.
Thanks a lot, I think I know enough of TCP/IP because I already have a networks course... Now I'm in network programming one... but it's good to know where I can find more information!!! When I start programming always appear some detail that I can't remember...
I'm reading a lot from different sources in intenet, but it's always better to have a good book...