| Age | Commit message (Expand) | Author | Files | Lines |
| 2025-11-18 | all: rename variables with lowercase-l/uppercase-I | Alex Chan | 1 | -9/+9 |
| 2025-11-17 | various: add more missing apostrophes in comments | Alex Chan | 1 | -1/+1 |
| 2025-11-11 | wgengine/router/osrouter: fix linux magicsock port changing | Sachin Iyer | 2 | -1/+41 |
| 2025-10-08 | wgengine/router: use eventbus.SubscribeFunc in linuxRouter | M. J. Fromberger | 1 | -28/+12 |
| 2025-10-07 | wgengine/{magicsock,userspace,router}: move portupdates to the eventbus (#17423) | Claus Lensbøl | 8 | -103/+75 |
| 2025-10-06 | util/checkchange: stop using deephash everywhere | Brad Fitzpatrick | 1 | -0/+13 |
| 2025-10-03 | wgengine/router/osrouter: fix data race in magicsock port update callback | Brad Fitzpatrick | 1 | -17/+19 |
| 2025-10-01 | all: use Go 1.20's errors.Join instead of our multierr package | Brad Fitzpatrick | 2 | -4/+2 |
| 2025-09-29 | wgengine/router{,/osrouter}: split OS router implementations into subpackage | Brad Fitzpatrick | 19 | -138/+150 |
| 2025-09-28 | util/backoff: rename logtail/backoff package to util/backoff | Brad Fitzpatrick | 1 | -1/+1 |
| 2025-09-28 | tsconst, util/linuxfw, wgengine/router: move Linux fw consts to tsconst | Brad Fitzpatrick | 2 | -12/+14 |
| 2025-09-27 | util/linuxfw, feature/buildfeatures: add ts_omit_iptables to make IPTables op... | Brad Fitzpatrick | 1 | -1/+1 |
| 2025-09-22 | wgengine/router: use eventbus.Monitor in linuxRouter (#17232) | M. J. Fromberger | 1 | -14/+15 |
| 2025-09-16 | feature,ipn/ipnlocal,wgengine: improve how eventbus shutdown is handled (#17156) | M. J. Fromberger | 1 | -4/+2 |
| 2025-09-16 | health,ipn/ipnlocal: introduce eventbus in heath.Tracker (#17085) | Claus Lensbøl | 1 | -1/+1 |
| 2025-08-05 | wgengine/router: rely on events for deleted IP rules (#16744) | Claus Lensbøl | 10 | -29/+89 |
| 2025-05-12 | util/linuxfw,wgengine/router: add new netfilter rules for HA ingresses (#15896) | Irbe Krumina | 1 | -0/+8 |
| 2025-04-16 | net/netmon: publish events to event bus | David Anderson | 1 | -2/+8 |
| 2025-04-03 | wgengine/router: default to a fake router on android | David Anderson | 2 | -0/+31 |
| 2025-04-02 | wgengine/router: add Plan 9 implementation | Brad Fitzpatrick | 2 | -1/+157 |
| 2025-01-03 | wgengine/router: refactor udm-pro into broader ubnt support | Jason Barnett | 2 | -10/+10 |
| 2024-12-21 | wgengine/router: add ip rules for unifi udm-pro | Jason Barnett | 2 | -10/+64 |
| 2024-10-03 | cmd/containerboot,util/linuxfw: create a SNAT rule for dst/src only once, cle... | Irbe Krumina | 1 | -1/+1 |
| 2024-09-29 | cmd/containerboot,kube,util/linuxfw: configure kube egress proxies to route t... | Irbe Krumina | 1 | -0/+11 |
| 2024-08-22 | go.mod: update to github.com/tailscale/netlink library that doesn't require v... | Percy Wegmann | 1 | -1/+1 |
| 2024-07-18 | wgengine/router: use quad-100 as the nexthop on Windows | Nick Khyl | 1 | -26/+48 |
| 2024-06-14 | health: begin work to use structured health warnings instead of strings, pipe... | Andrea Gottardo | 2 | -17/+27 |
| 2024-06-11 | cmd/tailscaled, net/dns, wgengine/router: start Windows child processes with ... | Aaron Klotz | 1 | -1/+6 |
| 2024-05-29 | wgengine/router: probe generally-unused "ip" command style lazily | Brad Fitzpatrick | 1 | -18/+30 |
| 2024-05-20 | various: disable stateful filtering by default (#12197) | Andrew Lytvynov | 1 | -1/+1 |
| 2024-05-09 | wgengine/router: print Docker warning when stateful filtering is enabled | Andrew Dunham | 2 | -3/+55 |
| 2024-05-06 | various: implement stateful firewalling on Linux (#12025) | Andrew Lytvynov | 4 | -21/+150 |
| 2024-04-28 | net/{interfaces,netmon}, all: merge net/interfaces package into net/netmon | Brad Fitzpatrick | 1 | -2/+2 |
| 2024-04-27 | net/netns, net/dns/resolver, etc: make netmon required in most places | Brad Fitzpatrick | 1 | -1/+1 |
| 2024-04-26 | health, all: remove health.Global, finish plumbing health.Tracker | Brad Fitzpatrick | 10 | -16/+28 |
| 2024-04-25 | health: break Warnable into a global and per-Tracker value halves | Brad Fitzpatrick | 1 | -3/+3 |
| 2024-04-25 | health: add Tracker type, in prep for removing global variables | Brad Fitzpatrick | 1 | -1/+1 |
| 2024-04-23 | wgengine/router: consolidate routes before reconfiguring router for mobile cl... | Percy Wegmann | 2 | -0/+127 |
| 2024-04-23 | cmd{containerboot,k8s-operator},util/linuxfw: support ExternalName Services (... | Irbe Krumina | 1 | -0/+4 |
| 2024-04-19 | wgengine\router: fix the Tailscale-In firewall rule to work on domain networks | Nick Khyl | 2 | -2/+2 |
| 2024-04-16 | all: use Go 1.22 range-over-int | Brad Fitzpatrick | 4 | -5/+5 |
| 2024-04-15 | wgengine/router: don't attempt route cleanup on Synology | Brad Fitzpatrick | 1 | -2/+17 |
| 2024-04-09 | cmd/tailscaled: move cleanup to an implicit action during startup | James Tucker | 7 | -14/+14 |
| 2024-04-07 | wgengine/netstack: remove SubnetRouterWrapper | Maisem Ali | 1 | -1/+6 |
| 2024-04-04 | wgengine/router: enable ip forwarding on gokrazy | Joonas Kuorilehto | 1 | -0/+28 |
| 2024-03-29 | util/linuxfw,wgengine/router: skip IPv6 firewall configuration in partial ipt... | Irbe Krumina | 2 | -9/+25 |
| 2024-03-21 | util/linuxfw,wgengine/router: enable IPv6 configuration when netfilter is dis... | James Tucker | 1 | -3/+9 |
| 2024-02-15 | wgengine/router: fix ip rule restoration | Jason Barnett | 1 | -1/+1 |
| 2024-02-13 | wgengine/router: make the Windows ifconfig implementation reuse existing MibI... | Aaron Klotz | 2 | -95/+125 |
| 2024-02-08 | all: use reflect.TypeFor now available in Go 1.22 (#11078) | Joe Tsai | 1 | -1/+1 |