Skip to main content

How Does Traceroute Work Differently on Windows, Unix, and Network Devices?

Traceroute is a network diagnostic tool used to trace the path packets take from a source to a destination. It functions by sending packets with incrementally increasing Time-To-Live (TTL) values and receiving responses from routers along the way, allowing users to identify the hops the packets pass through. Here’s how it works on different platforms:

Windows (ICMP-Based Traceroute):

  • Protocol: Uses ICMP at Layer 3.
  • How It Works: Windows sends ICMP Echo Request packets with increasing TTL values. When a router receives a packet with a TTL of 1, it decrements it to 0, drops the packet, and returns an ICMP Time Exceeded message to the source. Each hop responds with this message, allowing the traceroute to document the routers.
  • Final Step: When the packet reaches the destination, it sends an ICMP Echo Reply instead of a port unreachable message, as it's based on Layer 3 only.

Unix-Based Systems (UDP-Based Traceroute):

  • Protocol: Uses UDP at Layer 4.
  • How It Works: Unix-based systems, like Linux, send UDP packets to a high, unused port number with increasing TTL values. Routers return ICMP Time Exceeded messages for each hop. The destination host returns an ICMP Port Unreachable message, as the sent packet is aimed at an unused port.
  • Final Step: When the destination router receives the final UDP packet (after TTL reaches 0), it recognizes the unreachable port and sends an ICMP Port Unreachable message, marking the trace's completion.

Network Devices (Cisco Routers):

  • Protocol: Cisco devices primarily use UDP for traceroute, similar to Unix-based systems.
  • How It Works: The routers incrementally send UDP packets with increasing TTL values. Each router along the path sends an ICMP Time Exceeded message when TTL reaches 0. The process continues until the destination responds with a Port Unreachable message if no service is running on the specified port.

In summary, while both Windows and Unix-based systems use ICMP to receive responses from intermediate routers, Windows uses ICMP Echo Requests for the entire process, and Unix uses UDP to a non-existent port at the destination. Cisco routers and other network devices typically follow the Unix-style approach with UDP-based traceroute, ensuring packet routing and response tracking.

Comments

Popular posts from this blog

How to import Putty Saved Connections to mRemoteNG

Just started using mRemoteNG and its being very cool to connect to different remote connection with different protocols e.g Window Remote Desktop, VNC to Linux, SSH, HTTP connection etc. from a single application. As new user I configured some remote desktop connection which was quite easy to figure out. But when I wanted to add SSH connections, it came in my mind to import all of the saved connections in the putty. But I couldn't figure it out how can it be done, though it was quite easy and here are the steps. Open your mRemoteNG Create a folder if you want segregation of multiple networks Create a new connection Enter the IP address of remote server under connection in Config pane Under the config pane, select protocol " SSH version 2 ".  Once you select protocol to SSH version 2 you are given option to import putty sessions, as shown in the snap below. In the above snap, I have imported CSR-AWS session from my saved sessions in Putty.

BGP Soft Reconfiguration vs. Route Refresh: Key Differences and Best Practices

In BGP (Border Gateway Protocol), managing route updates and reapplying new policies can sometimes be challenging, especially if you want to avoid resetting the BGP session. Two methods allow you to update routing policies without tearing down the session: BGP Soft Reconfiguration and BGP Route Refresh . While both methods serve the same purpose, they work differently and have distinct impacts on your router's resources. This post explains the key differences between Soft Reconfiguration and Route Refresh , when to use each, and why Route Refresh is preferred in most modern networks. 1. What is BGP Soft Reconfiguration? BGP Soft Reconfiguration is an older method of applying new policies (like route maps, filters, or prefix lists) without resetting the BGP session. It works by storing a local copy of all the routes received from a BGP neighbor before applying inbound policies. This local route copy allows the router to reprocess the routes when a policy change occurs. How So...

BGP Local Preference Controlling Outbound Traffic in BGP

In BGP, Local Preference is used to control the outbound traffic path. It helps you decide which egress point (exit point) should be used when you have multiple connections to external networks, such as ISPs. Local Preference is an attribute that is local to your AS and is shared with all iBGP peers but not with eBGP neighbors. Higher Local Preference = More preferred outbound path. Example Scenario : You have two external links: ISP1 (via CE1) and ISP2 (via CE2). You want traffic to prefer ISP1 for all outbound traffic. Network Topology : CE1 (connected to ISP1): 10.0.1.1/30 CE2 (connected to ISP2): 10.0.2.1/30 iBGP Router (Internal) connected to both CE1 (10.0.1.2/30) and CE2 (10.0.2.2/30). Configuration on CE1 (Higher Local Preference) : Create a route map to set the local preference to 200 for routes learned from CE1: route-map SET_LOCAL_PREF permit 10 set local-preference 200 In the BGP configuration for CE1, apply this route map to the neighbor: router bgp 65001 ne...