← Common fixesTroubleshooting

Host can't reach another subnet

When the routers can ping across the link but the hosts behind them can't reach each other, the link is fine. The routing isn't. A router only knows the networks it's directly connected to or explicitly told about, and connectivity needs a working path in both directions.

What it means

Inter-subnet traffic needs each router to have a route to the destination network. A missing static or dynamic route on either router (or an asymmetric path where the return route is missing) breaks end-to-end reachability even when the routers themselves are reachable.

Most common causes

  • Missing route to the far subnet. The router has no entry for the destination network, so it drops the packet (or sends it to a default that goes nowhere useful).
  • Missing return route. Forward traffic reaches the far host, but its replies have no route back. Connectivity needs both directions.
  • Wrong host default gateway. If the host points at the wrong gateway, traffic never reaches the router that can route it.

How to fix it

  1. On each router, check `show ip route` for the other host's subnet.
  2. Add the missing route (static or via your IGP) on whichever router lacks it.
  3. Confirm the return route exists on the far router too.
  4. Verify each host's IP, mask, and default gateway.