flyctl sometimes comes up with the wrong DNS server for WireGuard peers

Open
#469 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
go
Domain
cli, networking

Research direction

Start by tracing flyctl ssh console's WireGuard peer DNS configuration and the path that resolves .internal names. Reproduce or inspect the case where a local IPv4 DNS server is used, then verify that the WireGuard DNS address is derived from the peer IP and that an invalid server is rejected.

Written by the indexing model from the issue text.

Description

bug

Every once in awhile we see an error from someone who does flyctl ssh console and DNS times out because it's trying to look up .internal names on their local, IPv4 DNS server.

We should find out why this ever happens. But in the immediacy: the WireGuard DNS server will always start with fdaa, and flyctl should freak out if it ever tries to look up a .internal name on a DNS server that doesn't.

We don't really need to store DNS configuration or get it from the API, because it's always fdaa:<org>::3. The <org> bit is already embedded in your WireGuard IP, so it's always available to flyctl. We could just generate it on the fly. But we should figure out why what we're doing now isn't working.

Dominant language
Go
Stars
1.7k
Forks
311
Avg merge
12h 50m
Merged PRs (30d)
78

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from superfly/flyctl

All issues in superfly/flyctl

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.