pip — included with Python 3.4+; verify with pip --version
Administrator or root privileges — required to send ARP packets and capture network traffic
A Roku device connected to your local network
A Pi-hole server running on your local network
You must run the script with administrator privileges on Windows (Run as Administrator) or root/sudo on macOS and Linux. Without elevated permissions, the tool cannot send ARP packets or capture DNS traffic.
Install
1
Step 1: Install Npcap
Scapy requires a packet capture driver on Windows. Download and install Npcap from npcap.com. During installation, enable the option “Install Npcap in WinPcap API-compatible mode”.
2
Step 2: Clone the repository
Open a Command Prompt or PowerShell window as Administrator and run:
This allows you to run python roku_pihole.py without sudo.
Dependencies
The only runtime dependency is Scapy, a Python packet manipulation library. It is listed in requirements.txt and installed by pip install -r requirements.txt.