Make group management more prominent
Signed-off-by: Christian König <ckoenig@posteo.de>
@@ -1,7 +1,5 @@
|
||||
## Group management
|
||||
|
||||
Any blocklist or domain on the white-/black-/regex-lists can be managed through groups. This allows not only grouping them to highlight their relationship, but also enabling/disabling them together if one, for instance, wants to visit a specific service only temporarily.
|
||||
|
||||
Groups are defined in the `group` table and can have an optional description in addition to the mandatory name of the group.
|
||||
|
||||
Label | Type | Uniqueness enforced | Content
|
||||
@@ -25,14 +23,3 @@ Label | Type | Content
|
||||
`group_id` | integer | `id` of associated group in the `group` table
|
||||
|
||||
Group `Default` (`group_id` `0`) is special as it is automatically assigned to domains and clients not being a member of other groups. Each newly added client or domain gets assigned to group zero when being added.
|
||||
|
||||
## Effect of group management
|
||||
|
||||
The great flexibility to manage domains in zero, one, or multiple groups may result in unexpected behavior when, e.g., the domains are enabled in some but disabled in other groups. For the sake of convenience, we describe the possible configurations and whether *FTL*DNS uses these domains (✔) or not (✘) in such cases.
|
||||
|
||||
- Domain disabled: ✘<br>Note that the domain is never imported by *FTL*DNS, even if it is contained in an enabled group.
|
||||
|
||||
- Domain enabled: It depends...
|
||||
- Not managed by a group: ✔
|
||||
- Contained in one or more groups (at least one enabled): ✔
|
||||
- Contained in one or more groups (all disabled): ✘
|
||||
|
||||
@@ -16,7 +16,7 @@ after your database modifications to have FTL flush its internal domain-blocking
|
||||
|
||||
The `Default` group has a special meaning and cannot be deleted. All domains, clients, and adlists without a specific group assignment are automatically managed through this group. Disabling this group will disable Pi-hole blocking for all unmanaged devices.
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -29,7 +29,7 @@ after your database modifications to have FTL flush its internal domain-blocking
|
||||
|
||||
Add three clients at your will, their IP addresses might differ from the ones in this example.
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -40,7 +40,7 @@ after your database modifications to have FTL flush its internal domain-blocking
|
||||
|
||||
3. **Link the clients to the created groups.**
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -53,7 +53,7 @@ after your database modifications to have FTL flush its internal domain-blocking
|
||||
|
||||
**Task:** Exclude client 1 from Pi-hole's blocking by removing client 1 from the `Default` group.
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -76,7 +76,7 @@ All three clients got automatically assigned to the default (`Default`) group wh
|
||||
|
||||
**Task:** Assign adlist with ID 1 to group 1 (in addition to the default assignment to group 0). This results in client `192.168.0.101` using *only this* adlist (we removed the default association in the last step).
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -103,9 +103,9 @@ Client | Group membership | Domain | Blocked
|
||||
|
||||
Add the domain to be blocked
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -128,7 +128,7 @@ Note that Pi-hole is *not* blocking this domain for client `192.168.0.101` as we
|
||||
|
||||
Assign this domain to group 1
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -151,7 +151,7 @@ All clients see this domain as being blocked: Client 1 due to a direct assignmen
|
||||
|
||||
Remove default assignment to all clients not belonging to a group
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -178,9 +178,9 @@ While client 1 keeps its explicit assignment through group 1, the remaining clie
|
||||
|
||||
Add the domain to be whitelisted
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -202,7 +202,7 @@ Client `192.168.0.101` is not whitelisting this domain as we removed the default
|
||||
|
||||
Remove default group assignment
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -224,7 +224,7 @@ Requests from all clients are blocked as the new whitelist entry is not associat
|
||||
|
||||
Assign this domain to group 2
|
||||
|
||||

|
||||

|
||||
|
||||
??? "Raw database instructions"
|
||||
```sql
|
||||
@@ -0,0 +1,9 @@
|
||||
## Group management
|
||||
|
||||
Any blocklist or domain on the white-/black-/regex-lists can be managed through groups. This allows not only grouping them to highlight their relationship, but also enabling/disabling them together if one, for instance, wants to visit a specific service only temporarily.
|
||||
|
||||
Group `Default` (`group_id` `0`) is special as it is automatically assigned to domains and clients not being a member of other groups. Each newly added client or domain gets assigned to group zero when being added.
|
||||
|
||||
## Effect of group management
|
||||
|
||||
The great flexibility to manage domains in zero, one, or multiple groups may result in unexpected behavior when, e.g., the domains are enabled in some but disabled in other groups.
|
||||
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB |
|
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 8.7 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
@@ -98,7 +98,6 @@ nav:
|
||||
- 'Domain database':
|
||||
- 'Overview': database/gravity/index.md
|
||||
- 'Group management': database/gravity/groups.md
|
||||
- 'Examples': database/gravity/example.md
|
||||
- 'Database recovery': database/gravity/recovery.md
|
||||
- 'FTLDNS':
|
||||
- 'Overview': ftldns/index.md
|
||||
@@ -120,6 +119,9 @@ nav:
|
||||
- 'gdb': ftldns/debugging.md
|
||||
- 'valgrind': ftldns/valgrind.md
|
||||
- 'In-depth manual': ftldns/in-depth.md
|
||||
- 'Group management':
|
||||
- 'Overview': group_management/groups.md
|
||||
- 'Examples': group_management/example.md
|
||||
- 'RegEx blocking':
|
||||
- "Overview": regex/overview.md
|
||||
- "Testing": regex/testmode.md
|
||||
|
||||