[PR #2803] fix: reapply exclusion routes after network change on linux #2954

Open
opened 2026-10-14 21:06:28 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/amnezia-vpn/amnezia-client/pull/2803
Author: @gearonixx
Created: 7/4/2026
Status: 🔄 Open

Base: dev ← Head: fix/linux-restore-exclusion-route-on-resume


📝 Commits (1)

  • f32f420 fix: reapply exclusion routes after network change on linux

📊 Changes

2 files changed (+30 additions, -0 deletions)

View changed files

📝 client/platforms/linux/daemon/linuxroutemonitor.cpp (+28 -0)
📝 client/platforms/linux/daemon/linuxroutemonitor.h (+2 -0)

📄 Description

On Linux, split-tunnelling installs throw routes so that traffic for excluded apps/IPs stays out of the VPN. The problem is that these routes are tied to a network link, and the kernel silently drops them whenever that link goes away, suspend/resume, a DHCP lease renewal, switching Wi-Fi networks, etc.

Once they're gone, the excluded traffic starts leaking into the tunnel or stops working and the only way to recover is to disconnect and reconnect.

This change makes the route monitor notice those events and put the routes back.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/amnezia-vpn/amnezia-client/pull/2803 **Author:** [@gearonixx](https://github.com/gearonixx) **Created:** 7/4/2026 **Status:** 🔄 Open **Base:** `dev` ← **Head:** `fix/linux-restore-exclusion-route-on-resume` --- ### 📝 Commits (1) - [`f32f420`](https://github.com/amnezia-vpn/amnezia-client/commit/f32f4208c025d7c1c7e4505d825d4fed3db4b13e) fix: reapply exclusion routes after network change on linux ### 📊 Changes **2 files changed** (+30 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `client/platforms/linux/daemon/linuxroutemonitor.cpp` (+28 -0) 📝 `client/platforms/linux/daemon/linuxroutemonitor.h` (+2 -0) </details> ### 📄 Description On Linux, split-tunnelling installs throw routes so that traffic for excluded apps/IPs stays out of the VPN. The problem is that these routes are tied to a network link, and the kernel silently drops them whenever that link goes away, suspend/resume, a DHCP lease renewal, switching Wi-Fi networks, etc. Once they're gone, the excluded traffic starts leaking into the tunnel or stops working and the only way to recover is to disconnect and reconnect. This change makes the route monitor notice those events and put the routes back. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
amnezia-vpn/amnezia-client#2954
No description provided.