AdguardTeam/AdGuardHome

Assign client tags automatically based on the clients behavior

Open

#1,468 opened on Mar 13, 2020

View on GitHub
 (36 comments) (8 reactions) (0 assignees)Go (34,000 stars) (2,333 forks)batch import
P2: Highenhancementhelp wanted

Description

Now that we have ctag modifier support, we should think about how to assign at least some of the tags automatically. At least we could assign os_* and device_* tags.

Here's what I suggest:

  1. Create a ctag detector module that checks DNS queries and tries to figure out what the client's OS might be judging by its activity.
  2. When we are sure that the client's OS is X.
  3. Remember that the client may represent multiple different devices. If the client activity signals that there are different operating systems or devices in use, assign multiple tags.
  4. Add a setting to the UI: "Add client tags automatically".

Activity marker

Every time a device connects to the network it connects to a number of home servers. This statement is true for every OS and I believe that this "marker" can help us detect the device type automatically.

Now, to do this we need to figure out what these "activity markers" for each OS/device might be and we need help with that.

How can you help us

Please do the following:

  1. Make sure that your device uses AdGuard Home
  2. Disconnect it from the network
  3. Connect it to the network again
  4. Wait for 30 seconds, do nothing while waiting
  5. Get the list of domains requested by this device
  6. Post the following here or send it to devteam@adguard.com: the list of domains requested, your device info (OS type, OS version, device model).

Contributor guide

Assign client tags automatically based on the clients behavior · AdguardTeam/AdGuardHome#1468 | Good First Issue