tailscale / tailscale/github-action

macOS hosted runner does not route traffic through exit node

Aperta
#271 0 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
TypeScript
Stelle
938
Fork
137
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Environment

  • Runner: macos-15
  • Action: tailscale/github-action@v4
  • Auth: OIDC / Workload Identity Federation
  • Exit node configured after connect:
    sudo tailscale set --exit-node=<node> --accept-routes
    
    

Observed behavior

Tailscale connects successfully, and tailscale set --exit-node=... also succeeds.

However, outbound traffic does not appear to use the exit node on GitHub-hosted macOS runners:

  • tailscale netcheck reports public IPv4 in the 13.105.117.x range
  • curl ifconfig.me returns 13.105.117.x
  • Expected: the public IP of the configured exit node
  • Actual: the the GitHub-hosted runner public IP

We also verified that an HTTPS request to an external service still appears to originate from the runner IP rather than the exit node.

Comparison with Ubuntu

Using the same workflow and the same exit node:

Runner curl ifconfig.me Result
ubuntu-latest exit node public IP Works
macos-15 the GitHub-hosted runner public IP (13.105.117.x) Not routed

Notes

  • The v4.0.0 macOS DNS fix does not appear to address this case.
  • This does not look like a DNS resolution failure: requests resolve and complete, but egress IP does not switch to the
    exit node.

Question

Is exit node routing expected to work on GitHub-hosted macOS runners, or is this currently unsupported/limited by the macOS runner environment?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia riproducendo il workflow con tailscale/github-action@v4 su macos-15, utilizzando il comando documentato tailscale set --exit-node, e confronta il suo IP di uscita con ubuntu-latest. Determina se i runner ospitati su macOS supportano il routing tramite exit-node; il lavoro è completato se consente di identificare una modifica necessaria per instradare correttamente il percorso macOS oppure di documentare la limitazione confermata della piattaforma.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
github-actions, macos, typescript
Ambito
ci-cd, devops, networking
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.