Hmm not much detail there, however I'll give it a shot...
From a developers point of view ICMP is a very simple protocol to implement. If you're not doing anything too fancy, you can just use the standard API's for your particular OS to generate the appropriate packets.
If you're using raw sockets and crafting your own packets then make them comply to the RFC.
Ethereal will be your friend through all this implementation.
Not sure what you meant by from a tester's point of view.
hi Sahirh ,
thanks for your reply!!! i will read more on this so that everyting gets clear to me...
by Testers point of view, i wanted to mean that how tester will test the protocol to check whether there is any bug or not!!!
---question may looks silly but as i am new so i don't know!!!
Re: Can any one Explain me ICMP??
11 years 7 months ago #20365
The best way to test your implementation is to setup a few hosts and then use your implementation to generate or recieve ICMP messages. Run a sniffer like Wireshark at the same time, it will tell you if any of the packets are malformed or abnormal.
You should also test it's adherence to the RFCs... stuff like how it deals with broadcast messages etc.
The best way to test your implementation is to setup a few hosts and then use your implementation to generate or receive ICMP messages. Run a sniffer like Wireshark at the same time, it will tell you if any of the packets are malformed or abnormal.
What is wireshark and what does it do? The easiest way I know to test ICMP echo and replies is to Ping from router and hosts and combine that with the commands tracert [HOST or Dos Prompt] or traceroute [Router CLI].
ping host to host [via Dos prompt]
then ping router to router [via CLI]
and so on until you discover a problem in the path or lines. The output of the ping command will tell you if packets were lost. Tracerroute or Tracert will tell you if they were stopped and where they were stopped at.