C Board  

Go Back   C Board > General Programming Boards > Networking/Device Communication

Reply
 
LinkBack Thread Tools Display Modes
Old 12-29-2008, 02:06 AM   #1
Registered User
 
Join Date: Feb 2008
Location: Bangalore, India
Posts: 16
ping an IP and get status

Dear friends,
i want to make a C program which can ping an IP and provide the status whether that device is available or not in the form of some integer value i.e for available give '1' and other for NULL
krishna is offline   Reply With Quote
Old 12-29-2008, 02:07 AM   #2
and the hat of Jobseeking
 
Salem's Avatar
 
Join Date: Aug 2001
Location: The edge of the known universe
Posts: 21,693
You mean like what the "ping" program does?
__________________
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.

Salem is offline   Reply With Quote
Old 12-29-2008, 02:11 AM   #3
C++ Witch
 
laserlight's Avatar
 
Join Date: Oct 2003
Location: Singapore
Posts: 11,339
Moved to Networking/Device Communication.
__________________
C + C++ Compiler: MinGW port of GCC
Build + Version Control System: SCons + Bazaar

Look up a C/C++ Reference and learn How To Ask Questions The Smart Way
laserlight is online now   Reply With Quote
Old 12-29-2008, 06:29 AM   #4
Registered User
 
Join Date: Mar 2005
Location: Mountaintop, Pa
Posts: 1,059
You may want to consider the ICMP API if you're on the Windows platform.
BobS0327 is offline   Reply With Quote
Old 12-29-2008, 04:54 PM   #5
Senior software engineer
 
brewbuck's Avatar
 
Join Date: Mar 2007
Location: Portland, OR
Posts: 5,768
Quote:
Originally Posted by krishna View Post
Dear friends,
i want to make a C program which can ping an IP and provide the status whether that device is available or not in the form of some integer value i.e for available give '1' and other for NULL
First thing to realize, is that just because a device does not respond to an ICMP "ping", does not mean that device is unavailable. It just might not be responding to ping, for many legitimate reasons.
__________________
"Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously." -- raftpeople@slashdot
brewbuck is offline   Reply With Quote
Old 12-29-2008, 06:35 PM   #6
Kernel hacker
 
Join Date: Jul 2007
Location: Farncombe, Surrey, England
Posts: 15,686
Quote:
Originally Posted by brewbuck View Post
First thing to realize, is that just because a device does not respond to an ICMP "ping", does not mean that device is unavailable. It just might not be responding to ping, for many legitimate reasons.
Not to mention that if the device isn't connected directly to the computer running such a PING operation, it can fail at any level in between, and the device is in itself perfectly operational, just that some segment of network in between failed [or didn't forward the PING or PING-REPLY message] for some reason.

--
Mats
__________________
Compilers can produce warnings - make the compiler programmers happy: Use them!
Please don't PM me for help - and no, I don't do help over instant messengers.
matsp is offline   Reply With Quote
Old 12-29-2008, 07:05 PM   #7
Registered User
 
Join Date: Mar 2005
Location: Mountaintop, Pa
Posts: 1,059
RFC 792 provides a lot of info on the ICMP messages including a detailed breakdown of destination unreachable codes.
BobS0327 is offline   Reply With Quote
Old 02-14-2009, 04:59 AM   #8
Registered User
 
Join Date: Sep 2008
Posts: 15
ok. so how do you make a program that will ping an address, regardless if the results are positive or negative?
edomingox is offline   Reply With Quote
Old 02-14-2009, 05:17 AM   #9
and the hat of Jobseeking
 
Salem's Avatar
 
Join Date: Aug 2001
Location: The edge of the known universe
Posts: 21,693
Seriously, what are you trying to do?

You "make" the program by reading the RFC, writing code to send out the right kind of message, then interpreting the responses (or lack of).

If you don't know how to do that, then looking at an existing "ping.c" program might help. But the good ones (with a reasonable level of functionality) are not exactly small.

Or if you just don't want to know about the code, just write a simple wrapper around the "ping" program which comes with your OS.
__________________
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.

Salem is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Forum Jump


All times are GMT -6. The time now is 04:15 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22