This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
Hello folks. I am working on a traceroute program for a networking course at my uni. The project has been nothing but a hair pulling experience, from the coding front, to the admin and 'rights' front.
We developed a java client, that sends a server(written in C) a datagram(UDP), the server sends it off to the net, gets a message back, then the server converts it back so java is happy and we get our output. The server has been 'acting' up to say the least from the get go, but supposedly others in my class *HAVE* received successful traces. I have not.
Below I will post my output. I will be blocking out the IPs address, not that it matters much, but there are actualy numbers where you see #'s.
From the very first hop, I am receiving type 3 code 3 ICMP messages. And then type 3 code 5's after that. No matter which router my trace hits, the SECOND one is *always* repeated in a sort of loop , which i have to cancel out of .
Here is my output. Any sort of light anyone may be able to shed on this I appreciate. Thing is, I've been crazy over this, and I really do not want to do more work if it is indeed not my program that is borked, but is the server or the network I can attaching to.
The only odd thing I notice is, I the first line(under the dashed line) of the output, I printed the source address to make sure I am getting the right one(of the C server) and it is...however it is preceded by a "/". I cannot figure out how or why this is there, but could that somehow be messing up my program(i do not see how, but i am grasping at straws here trying to figure out what is going on)
Traceroute Server IP : #.#.#.# Port : 3000 ----------------------------------------------------
/#.#.#.# message sent type = 8 message sent code = 0 message sent ttl = 1 message received type = 3 message received code = 3 Step 1 * IP addr is #.#.#.# message sent type = 8 message sent code = 0 message sent ttl = 2 message received type = 3 message received code = 5 Step 2 * IP addr is #.#.#.# message sent type = 8 message sent code = 0 message sent ttl = 3 message received type = 3 message received code = 5 Step 3 * IP addr is #.#.#.# message sent type = 8 message sent code = 0 message sent ttl = 4 ^Cmessage received type = 3 message received code = 5 Step 4 * IP addr is #.#.#.#
excuse any typos, I am not currently at home where I can compile to see if this work, but this is more or less the client I wrote. There are 2 other classes, IPheader, NetworkMessage and IcmpHdr that take care of the header values. Hope this helps any. I can post the server code, if someone feels it's needed, but it's all in C, and to be honest, it's damn near greek to me(the TA wrote the server, not the class).