summaryrefslogtreecommitdiff
path: root/README.md
blob: 5ceeb667a42b1b3cff10ce06b924e422d1720bab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
## Linum

A simple DNS recursive resolver written in Golang

### Features

- Forward resolver
- Adblock

### Config Reference

Save it to `/etc/linum.toml`

```toml
[server]
listen_udp = ":5353"
listen_tcp = ":5353"
listen_doh = ":8443"

[cache]
max_entries = 100000
db_path = "/tmp/cache.db"

[resolver]
mode = "forward"
timeout = "2s"
max_delegations = 30
forwarders = ["1.1.1.1"]

[blocklist]
response = "zero_ip"
files = ["etc/blocklist/*.txt"]
#urls = [
 #   "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts",
#]

[log]
level = "info"
```

### Build and Run

First, build the program:

```bash
$ go get codeberg.org/miekg/dns
$ go get modernc.org/sqlite
$ go get github.com/BurntSushi/toml
$ make
```

And run the program

```bash
$ ./build/linum
```