Cloudflared - ArchWiki

Jump to content
From ArchWiki

Cloudflared may be used to run a local DNS over HTTPS server (DoH), i.e., a stub resolver.

## Installation

Install the cloudflared package.

## Configuration

Cloudflared by default ships with 1.1.1.1 and 1.0.0.1 enabled, with the DNS server runing at port 5300, and the server only accessible to localhost.

To change the configuration, edit the following file, replacing `<endpoint>` with preferred endpoints.

    /etc/cloudflared/config.yml

    ---
    logfile: /var/log/cloudflared.log
    proxy-dns: true
    proxy-dns-upstream:
     - <endpoint>
     - <endpoint>
     - <endpoint>
    proxy-dns-port: 53
    proxy-dns-address: 0.0.0.0

As per upstream documentation, here are the available endpoints:

Tip: cURL's documentation maintains a list of alternative public endpoints.

Endpoints | Description
--- | ---
     - https://1.0.0.1/dns-query
     - https://1.1.1.1/dns-query
     - https://2606:4700:4700::1111/dns-query
     - https://2606:4700:4700::1001/dns-query
| Standard
     - https://security.cloudflare-dns.com/dns-query
| Standard, but blocks malware
     - https://family.cloudflare-dns.com/dns-query
| Standard, but blocks malware and porn
     - https://9.9.9.9/dns-query
| Quad9

## Usage

Start and enable `cloudflared.service`. Now you can use your device's IP address as a DNS server.

Tip: Use 1.1.1.1/help to check if browser is using Cloudflare DoH.

## See also

- Running a DNS over HTTPS Client - Cloudflare Resolver
- Introducing 1.1.1.1 for families

Category:

- Domain Name System