Visit Our UNIX and Linux User Community


Raw Sockets Programming


 
Thread Tools Search this Thread
Special Forums IP Networking Raw Sockets Programming
# 1  
Old 08-28-2009
Raw Sockets Programming

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...

by the way, I'm programming under Linux...

Bye!
# 2  
Old 08-29-2009
Hello Sandia_man,

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.

HTH,
Lo´c
# 3  
Old 08-30-2009
great!!
thanks a lot, I'm going to read it...
It's a good idea to study the source of ping and traceroute!!

bye!
# 4  
Old 08-31-2009
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:

http://packetstormsecurity.nl/progra...raw_socket.txt

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.
Zykl0n-B
# 5  
Old 08-31-2009
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...

Thanks again!!!

Previous Thread | Next Thread
Test Your Knowledge in Computers #826
Difficulty: Medium
JSON is a language-independent data format.
True or False?

8 More Discussions You Might Find Interesting

1. Programming

Raw Socket Programming - Efficient Packet Sniffer

Hi, I have the requirement to sniff packets from the Ethernet card on my Linux machine and process it and feed it to a RANAP protocol stack. So far I have written the raw packet sniffer and successfully sniffing packets and do little processing. However, for huge number of packets ... (9 Replies)
Discussion started by: rstnsrr
9 Replies

2. UNIX for Dummies Questions & Answers

From iOS programming to Linux system programming

Hello. I like Linux and C programming language. Allways wanted to understand kernel and become a Linux system programmer. And I also like Objective-C and iOS. These two programming areas have relations: 1. Linux and iOS are UNIX-like systems, POSIX compliant. 2. It is useful to know C language... (2 Replies)
Discussion started by: Rockatansky
2 Replies

3. Red Hat

Sockets

hai guys, I'm doing a project in which one server communicates with several clients. How can i do it when i have different port numbers???:confused: (0 Replies)
Discussion started by: rajeshb6
0 Replies

4. Programming

c++, raw sockets, stopping kernel write in header?

Hi, im trying to lern about raw sockets with my debian and c++. Tried to make a icmp and tcp packet and send it with sendto. Checked on wireshark and recognized that kernel changed my headers. So searched about stopping the kernel change the header and tried it with setsockopt, like said in at this... (4 Replies)
Discussion started by: sandcastle
4 Replies

5. UNIX for Dummies Questions & Answers

Carreer:Networking Programming in Unix (C programming Language)

Hello, I am trying to learn Networking Programming in C in unix enviorment. I want to know how good it is to become a network programmer. i am crazy about Network programming but i also want to opt for the best carreer options. Anybody experienced Network Programmer, please tell me is my... (5 Replies)
Discussion started by: vibhory2j
5 Replies

6. Programming

Programming Sockets to Reconnect

Hello everyone, I'm very interested in sockets programming for developing games. Right now i'm trying to develop a client, and connecting to a host and port can be done, but i googled lots of pages, but i could not find how to reconnect to the host/port if the connection is somehow... (2 Replies)
Discussion started by: raistie
2 Replies

7. Solaris

Sockets in use

Is there a way to see what sockets are in use? The developers here are getting some defunct processes and they would like to get a socket list. This is on a Solaris 8 machine. Thanks! (1 Reply)
Discussion started by: kjbaumann
1 Replies

8. Programming

Sockets!?!?!?!?!?!

I am looking for a way to have a program listen on a port (example: 8000) for communication I will be sending via that port to it(Linux Kernel machine). Once it recieves an appropiate command I need it to run a .bat file in linux. I know what I need to do but I am running into a few problems:... (8 Replies)
Discussion started by: bigB8210
8 Replies

Featured Tech Videos