Skip to content

馃悰 Cloudflared tunnels failing to reach origin service that is running on a .local domain on linux聽#1723

Open

Description

@NotTimIsReal

Describe the bug
Cloudflared tunnels failing to reach origin service that is running on a .local domain on linux

To Reproduce
Steps to reproduce the behavior:

  1. Create a new tunnel
  2. Add a new route to a service with a hostname that uses a .local tld
  3. Access the tunneled site

Expected behavior
The expected page content to appear

Environment and versions

  • OS: Linux
  • Architecture: ARM64, AMD64
  • Version: 2026.8.2

Logs and errors
2026-08-13T01:12:18Z ERR error="dial tcp: lookup server.local on 1.1.1.1:53: no such host" connIndex=0 destAddr=ssh://server.local:22 event=1 ingressRule=0 originService=ssh://server.local:22
2026-08-13T01:12:18Z ERR Request failed error="dial tcp: lookup server.local on 1.1.1.1:53: no such host" connIndex=0 dest=#### event=0 ip=### type=ws

Additional context
Tested on multiple devices, including amd64 and arm64 linux, received the same error.
However when tested on macos, it works as expected.

Activity

  1. phils commented on Aug 31, 2026

    @phils

    Are you using mDNS at all, or is .local just what you decided to use for your internal DNS entries? (fyi .internal is a reserved TLD for this purpose.. but .local has mDNS connotations)

    cloudflared is written in Go, and go on linux does its own DNS resolution (not letting OS handle mDNS, for example). On Mac, it uses the OS resolver, which is why it works there.

    So seems like your /etc/resolv.conf has 1.1.1.1, so Go is trying to resolve the host using that. .local works OK for me with cloudflared, but my resolv.conf contains a local resolver that can resolve my internal hostnames.

    There are ways to force Go into changing that behaviour I think (GODEBUG=netdns=cgo) but not sure how reliable that is.

  2. NotTimIsReal commented on Sep 3, 2026

    @NotTimIsReal
    Author

    Yes I am using mdns, does using a local resolver also resolve mdns or would I have to try the GODEBUG thing?

  3. phils commented on Sep 3, 2026

    @phils

    It depends what it is. Something like the systemd-resolved should be able to handle mDNS and also send stuff to 1.1.1.1 that can't be answered locally if you set it up properly.

  4. NotTimIsReal commented on Sep 3, 2026

    @NotTimIsReal
    Author

    I just setup systemd-resolvd to use dnsstublisteners but now it complains that the server is misbehaving

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority: NormalMinor issue impacting one or more usersType: BugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions