Routers providing a full-tunnel internet exit do two jobs that look like one. It terminates the tunnel, and it forwards the decrypted client packet out to the internet. Only the second job needs translation, and the translation has to match the inner flow. That distinction decides which interfaces carry the NAT roles and which address range appears in the rule.

Follow one packet through the router

Take a client at 10.90.0.25 opening a public HTTPS service. Whether that destination even enters the tunnel is the client's own policy decision. Once it does, the router decrypts the packet and delivers it to a virtual interface, from where it is routed to the public uplink.

That virtual interface is the inside of the translation. The public uplink is the outside. If the roles are inverted or missing, the packet either leaves with a private source or is dropped before it is translated.

StageQuestion to answer
VPN clientDoes the client's policy put this destination inside the tunnel?
Decrypted ingressWhich virtual interface receives the inner packet?
Internet egressWhich route, access policy and source translation apply?
ReplyIs the client's flow translated back before it is delivered over the tunnel?

Match the translation policy to the client pool

The NAT rule has to name the range the clients actually receive, not the office LAN that happens to share the uplink. A rule covering only the local subnet misses remote clients even when both leave through the same interface.

ip access-list extended NAT-TUNNEL
 permit ip 10.90.0.0 0.0.0.255 any
ip nat inside source list NAT-TUNNEL interface GigabitEthernet0/0/0 overload

Keep private-site exceptions separate. Traffic to internal destinations must retain its original source, or the destination will reply to an address it cannot reach and the return leg will fail in a way that looks like a routing loop.

Apply the roles to the actual interfaces in the deployed design. A Virtual-Template fragment copied from an old Easy VPN answer is not a complete current configuration, and the tunnel type in use determines which interface receives the decrypted packet.

Keep outer transport and inner translation apart

Translating a decrypted application source is not the same operation as pushing IKE or protected packets through a NAT device upstream. The first changes what the internet sees as the source of the client's request; the second keeps a tunnel alive across a middlebox.

Confusing them produces two classic failures. A router that translates its own tunnel transport breaks the peer relationship, while a router that never translates the inner flow forwards private addresses to the internet. Read which flow you are looking at before editing a rule, and check whether the tunnel stayed up after the change. A rule that fixes browsing while dropping the tunnel has moved the problem rather than solved it.

Neither failure is fixed by changing the other. Read which flow you are looking at before editing a rule.

Verify at both boundaries

Read the application source at the internet boundary, and the restored destination on the return leg. The first tells you whether translation happened; the second tells you whether the reverse mapping came back to the right client.

Then test a client that uses an approved split-tunnel path. That client never exercises this router's internet translation, so it should behave differently, and the difference confirms which path the traffic took.

If both clients behave identically, the split-tunnel policy is not doing what the design says. Fix that before adding more translation rules, because a rule written for a path that is not in use hides the real problem.

Akụkọ ndị metụtara ya