2022-08-21 21:41:01 +02:00
|
|
|
# googerteller
|
2022-08-22 18:38:34 +02:00
|
|
|
|
|
|
|
Audible feedback on just how much your browsing feeds into Google.
|
2022-08-21 22:48:40 +02:00
|
|
|
|
2022-08-29 16:26:51 +02:00
|
|
|
By bert@hubertnet.nl / https://berthub.eu/
|
2022-08-22 00:07:55 +02:00
|
|
|
|
2022-08-23 07:32:25 +02:00
|
|
|
Makes a little bit of noise any time your computer sends a packet to a
|
2022-08-29 15:59:59 +02:00
|
|
|
tracker or a Google service, which excludes Google Cloud users.
|
2022-08-23 07:32:25 +02:00
|
|
|
|
2022-08-22 22:07:07 +02:00
|
|
|
Demo video [in this tweet](https://twitter.com/bert_hu_bert/status/1561466204602220544)
|
|
|
|
|
2022-08-29 16:26:51 +02:00
|
|
|
[Blog post with more videos](https://berthub.eu/articles/posts/tracker-beeper/)
|
|
|
|
|
2022-09-05 16:04:50 +02:00
|
|
|
## Installing on OSX:
|
2022-09-05 16:34:42 +02:00
|
|
|
If need be, install Homebrew via https://brew.sh/ as this will allow you to
|
|
|
|
compile new software. To do so, copy paste the instruction under 'Install
|
2022-09-05 16:37:16 +02:00
|
|
|
Homebrew' into the terminal app ([Apple
|
2022-09-05 16:54:30 +02:00
|
|
|
help](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac)). This might take quite a while.
|
|
|
|
It will also ask for your password.
|
2022-09-05 16:34:42 +02:00
|
|
|
|
|
|
|
Then run:
|
2022-09-05 16:04:50 +02:00
|
|
|
```
|
|
|
|
brew tap robertjakub/teller
|
|
|
|
brew install --HEAD googerteller
|
2022-09-05 16:54:30 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
To then start the noise, enter:
|
|
|
|
```
|
2022-09-05 16:04:50 +02:00
|
|
|
sudo tcpdump -nql | teller
|
|
|
|
```
|
2022-09-05 17:08:46 +02:00
|
|
|
And it should work. For the last command, it may also again ask you to enter your
|
2022-09-05 16:49:15 +02:00
|
|
|
password.
|
2022-09-05 16:34:42 +02:00
|
|
|
|
2022-08-21 22:48:40 +02:00
|
|
|
## How to compile
|
2022-08-29 16:26:51 +02:00
|
|
|
This will currently only work on Unix derived systems (like Linux, OSX and
|
|
|
|
FreeBSD).
|
2022-08-22 18:38:34 +02:00
|
|
|
|
|
|
|
You need a C++ compiler like `gcc-c++` and CMake for compiling the binary.
|
|
|
|
|
|
|
|
You also need to install `libpcaudio` (`libpcaudio-dev` on Debian/Ubuntu, `pcaudiolib-devel` on Fedora/Red Hat).
|
2022-08-29 16:26:51 +02:00
|
|
|
For OSX [this is a bit more work](https://github.com/espeak-ng/pcaudiolib#mac-os)
|
2022-08-22 18:38:34 +02:00
|
|
|
|
2022-08-29 16:37:38 +02:00
|
|
|
Then do:
|
2022-08-21 22:48:40 +02:00
|
|
|
|
|
|
|
```
|
|
|
|
cmake .
|
|
|
|
make
|
|
|
|
```
|
|
|
|
|
2022-08-22 18:38:34 +02:00
|
|
|
## How to run
|
2022-08-29 15:59:59 +02:00
|
|
|
Start as:
|
2022-08-22 13:23:14 +02:00
|
|
|
```
|
2022-08-29 15:59:59 +02:00
|
|
|
sudo tcpdump -nql | ./teller
|
2022-08-23 12:51:43 +02:00
|
|
|
```
|
|
|
|
|
2022-08-23 10:25:40 +02:00
|
|
|
And cry.
|
2022-08-22 13:23:14 +02:00
|
|
|
|
2022-08-29 16:37:38 +02:00
|
|
|
## Configuration
|
|
|
|
Tracker data is read from `tracker.conf` which you should only edit if
|
|
|
|
you've learned about more IP addresses for relevant trackers.
|
|
|
|
|
|
|
|
In `teller.conf` you can edit for each tracker where the noise should end up
|
|
|
|
(left or right channel), and what the frequency should be.
|
|
|
|
|
2022-08-21 23:01:50 +02:00
|
|
|
## Data source
|
|
|
|
The list of Google services IP addresses can be found on [this Google
|
|
|
|
support page](https://support.google.com/a/answer/10026322?hl=en).
|
|
|
|
|
|
|
|
Note that this splits out Google services and Google cloud user IP
|
2022-08-23 10:25:40 +02:00
|
|
|
addresses. However, it appears the Google services set includes the cloud IP
|
|
|
|
addresses, so you must check both sets before determining something is in
|
|
|
|
fact a Google service and not a Google customer.
|
2022-08-29 15:59:59 +02:00
|
|
|
|
|
|
|
# To run on a single process on Linux
|
|
|
|
Or, to track a single process, fe `firefox`, start it and run:
|
|
|
|
|
|
|
|
```shell
|
|
|
|
sudo bpftrace netsendmsg.bt |
|
2024-04-26 00:21:49 +02:00
|
|
|
grep --line-buffered ^$(pgrep firefox) | ./teller
|
|
|
|
```
|
|
|
|
|
|
|
|
Or try:
|
|
|
|
|
|
|
|
```shell
|
|
|
|
sudo bpftrace netsendmsg.bt | grep --line-buffered -i chrome | ./teller
|
2022-08-29 15:59:59 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
And cry.
|
2022-08-29 16:23:46 +02:00
|
|
|
|
|
|
|
## Dependencies
|
|
|
|
This software gratefully builds on:
|
|
|
|
|
|
|
|
* [doctest](https://github.com/doctest/doctest) testing framework
|
|
|
|
* [lpm](https://github.com/rmind/liblpm) Longest Prefix Match library
|
|
|
|
* [Portable C Audio Library 1.2](https://github.com/espeak-ng/pcaudiolib) - which you need to install yourself
|
|
|
|
* tcpdump of course
|